#include <ibm/int86.h>
#include <assert.h>
-
#define ME "BIOS_WINI"
/* Error codes */
nop_other /* catch-all for unrecognized commands and ioctls */
};
-
/*===========================================================================*
* bios_winchester_task *
*===========================================================================*/
driver_task(&w_dtab);
}
-
/*===========================================================================*
* w_prepare *
*===========================================================================*/
return(w_dv);
}
-
/*===========================================================================*
* w_name *
*===========================================================================*/
return name;
}
-
/*===========================================================================*
* w_transfer *
*===========================================================================*/
return(OK);
}
-
/*============================================================================*
* w_do_open *
*============================================================================*/
return(OK);
}
-
/*============================================================================*
* w_do_close *
*============================================================================*/
return(OK);
}
-
/*===========================================================================*
* w_init *
*===========================================================================*/
}
}
-
/*============================================================================*
* w_geometry *
*============================================================================*/
FORWARD _PROTOTYPE( int dec_to_bcd, (int dec));
FORWARD _PROTOTYPE( int bcd_to_dec, (int bcd));
-
/*===========================================================================*
* main *
*===========================================================================*/
}
}
-
/*===========================================================================*
* reply *
*===========================================================================*/
panic("CMOS", "sending reply failed", s);
}
-
/*===========================================================================*
* gettime *
*===========================================================================*/
return(OK);
}
-
PRIVATE int get_cmostime(struct tm *t, int y2kflag)
{
/* Update the structure pointed to by time with the current time as read
_PROTOTYPE(static void el2_stop, (dpeth_t *dep));
_PROTOTYPE( static void milli_delay, (unsigned long millis) );
-
/*===========================================================================*
* el2_init *
*===========================================================================*/
}
}
-
/*===========================================================================*
* el2_stop *
*===========================================================================*/
return;
}
-
/*===========================================================================*
* el2_probe *
*===========================================================================*/
}
}
-
#if 0
/*===========================================================================*
* dp8390_dump *
}
#endif
-
/*===========================================================================*
* dp8390_stop *
*===========================================================================*/
assert(dep->de_flags & DEF_ENABLED);
}
-
/*===========================================================================*
* do_vread *
*===========================================================================*/
reply(dep, OK, FALSE);
}
-
/*===========================================================================*
* do_init *
*===========================================================================*/
reply(dep, OK, TRUE);
}
-
/*===========================================================================*
* do_getstat *
*===========================================================================*/
reply(dep, OK, FALSE);
}
-
/*===========================================================================*
* do_stop *
*===========================================================================*/
dep->de_flags= DEF_EMPTY;
}
-
/*===========================================================================*
* dp_init *
*===========================================================================*/
}
}
-
/*===========================================================================*
* dp_confaddr *
*===========================================================================*/
if (i != 0 && i != 6) env_panic(eakey); /* It's all or nothing */
}
-
/*===========================================================================*
* dp_reinit *
*===========================================================================*/
outb_reg0(dep, DP_RCR, dp_rcr_reg);
}
-
/*===========================================================================*
* dp_reset *
*===========================================================================*/
dep->de_flags &= ~DEF_STOPPED;
}
-
/*===========================================================================*
* dp_check_ints *
*===========================================================================*/
}
}
-
/*===========================================================================*
* dp_recv *
*===========================================================================*/
while (!packet_processed);
}
-
/*===========================================================================*
* dp_send *
*===========================================================================*/
}
}
-
/*===========================================================================*
* dp_getblock *
*===========================================================================*/
panic("DP8390", "dp_getblock: sys_vircopy failed", r);
}
-
/*===========================================================================*
* dp_pio8_getblock *
*===========================================================================*/
insb(dep->de_data_port, dst, size);
}
-
/*===========================================================================*
* dp_pio16_getblock *
*===========================================================================*/
insw(dep->de_data_port, dst, size);
}
-
/*===========================================================================*
* dp_pkt2user *
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dp_user2nic *
*===========================================================================*/
assert(count == 0);
}
-
/*===========================================================================*
* dp_pio8_user2nic *
*===========================================================================*/
}
}
-
/*===========================================================================*
* dp_pio16_user2nic *
*===========================================================================*/
}
}
-
/*===========================================================================*
* dp_nic2user *
*===========================================================================*/
assert(count == 0);
}
-
/*===========================================================================*
* dp_pio8_nic2user *
*===========================================================================*/
assert(count == 0);
}
-
/*===========================================================================*
* dp_pio16_nic2user *
*===========================================================================*/
assert(count == 0);
}
-
/*===========================================================================*
* dp_next_iovec *
*===========================================================================*/
sizeof(iovec_t), iovp->iod_iovec);
}
-
/*===========================================================================*
* conf_hw *
*===========================================================================*/
dep->de_stat = empty_stat;
}
-
/*===========================================================================*
* update_conf *
*===========================================================================*/
dep->de_ramsize= v;
}
-
/*===========================================================================*
* calc_iovec_size *
*===========================================================================*/
return size;
}
-
/*===========================================================================*
* reply *
*===========================================================================*/
dep->de_flags &= ~(DEF_PACK_SEND | DEF_PACK_RECV);
}
-
/*===========================================================================*
* mess_reply *
*===========================================================================*/
panic("", "dp8390: unable to mess_reply", NO_NUM);
}
-
/*===========================================================================*
* get_userdata *
*===========================================================================*/
panic("DP8390", "get_userdata: sys_vircopy failed", r);
}
-
/*===========================================================================*
* put_userdata *
*===========================================================================*/
panic("DP8390", "sys_sdevio failed", r);
}
-
/*
* $PchId: dp8390.c,v 1.25 2005/02/10 17:32:07 philip Exp $
*/
#define RSR_DIS 0x40 /* Receiver Disabled */
#define RSR_DFR 0x80 /* In later manuals: Deferring */
-
typedef struct dp_rcvhdr
{
u8_t dr_status; /* Copy of rsr */
return 0;
}
-
/*===========================================================================*
* ne_init *
*===========================================================================*/
}
}
-
/*===========================================================================*
* test_8 *
*===========================================================================*/
return r;
}
-
/*===========================================================================*
* test_16 *
*===========================================================================*/
return r;
}
-
/*===========================================================================*
* ne_stop *
*===========================================================================*/
return 1;
}
-
/*===========================================================================*
* we_init *
*===========================================================================*/
dep->de_stoppage= dep->de_ramsize / DP_PAGESIZE;
}
-
/*===========================================================================*
* we_stop *
*===========================================================================*/
outb_we(dep, EPL_MSR, 0);
}
-
/*===========================================================================*
* we_aliasing *
*===========================================================================*/
return 1;
}
-
/*===========================================================================*
* we_interface_chip *
*===========================================================================*/
return 1;
}
-
/*===========================================================================*
* we_16bitboard *
*===========================================================================*/
return (icr & E_ICR_16BIT);
}
-
/*===========================================================================*
* we_16bitslot *
*===========================================================================*/
return !!(inb_we(dep, EPL_ICR) & E_ICR_16BIT);
}
-
/*===========================================================================*
* we_ultra *
*===========================================================================*/
#define E_790_GCR_IR1 0x08 /* bit 1 of encoded IRQ */
#define E_790_GCR_IR2 0x40 /* bit 2 of encoded IRQ */
-
#define inb_we(dep, reg) (inb(dep->de_base_port+reg))
#define outb_we(dep, reg, data) (outb(dep->de_base_port+reg, data))
** National Semiconductor NS 8390 Network Interface Controller
**
** $Log$
+** Revision 1.2 2005/08/22 15:17:40 beng
+** Remove double-blank lines (Al)
+**
** Revision 1.1 2005/06/29 10:16:46 beng
** Import of dpeth 3c501/3c509b/.. ethernet driver by
** Giovanni Falzoni <fgalzoni@inwind.it>.
** $Id$
*/
-
#define DP_PAGESIZE 256 /* NS 8390 page size */
#define SENDQ_PAGES 6 /* SENDQ_PAGES * DP_PAGESIZE >= 1514 bytes */
if ((fkey_map(&fkeys, &sfkeys)) != OK)
printf("%s: couldn't program Shift+F8 key (%d)\n", DevName, errno);
-
#ifdef ETH_IGN_PROTO
{
static u16_t eth_ign_proto = 0;
return OK; /* Never reached, but keeps compiler happy */
}
-
/** dp.c **/
return 1;
}
-
/*===========================================================================*
* we_16bitslot *
*===========================================================================*/
** $PchId: wdeth.h,v 1.4 1995/12/22 08:36:57 philip Exp $
**
** $Log$
+** Revision 1.2 2005/08/22 15:17:40 beng
+** Remove double-blank lines (Al)
+**
** Revision 1.1 2005/06/29 10:16:46 beng
** Import of dpeth 3c501/3c509b/.. ethernet driver by
** Giovanni Falzoni <fgalzoni@inwind.it>.
#define E_790_GCR_IR1 0x08 /* bit 1 of encoded IRQ */
#define E_790_GCR_IR2 0x40 /* bit 2 of encoded IRQ */
-
#define inb_we(dep, reg) (inb(dep->de_base_port+reg))
#define outb_we(dep, reg, data) (outb(dep->de_base_port+reg, data))
FORWARD _PROTOTYPE( int test_read, (int density) );
FORWARD _PROTOTYPE( void f_geometry, (struct partition *entry));
-
/* Entry points to this driver. */
PRIVATE struct driver f_dtab = {
f_name, /* current device's name */
NULL
};
-
/*===========================================================================*
* floppy_task *
*===========================================================================*/
driver_task(&f_dtab);
}
-
/*===========================================================================*
* f_expire_tmrs *
*===========================================================================*/
return f_dv;
}
-
/*===========================================================================*
* f_name *
*===========================================================================*/
return name;
}
-
/*===========================================================================*
* f_cleanup *
*===========================================================================*/
f_fp->fl_sector = NO_SECTOR;
}
-
/*===========================================================================*
* f_transfer *
*===========================================================================*/
return(OK);
}
-
/*===========================================================================*
* dma_setup *
*===========================================================================*/
return(OK);
}
-
/*===========================================================================*
* start_motor *
*===========================================================================*/
f_fp->fl_sector = NO_SECTOR;
}
-
/*===========================================================================*
* stop_motor *
*===========================================================================*/
panic("FLOPPY","Sys_outb in stop_motor() failed", s);
}
-
/*===========================================================================*
* floppy_stop *
*===========================================================================*/
}
}
-
/*===========================================================================*
* seek *
*===========================================================================*/
return(OK);
}
-
/*===========================================================================*
* fdc_transfer *
*===========================================================================*/
return(OK);
}
-
/*==========================================================================*
* fdc_results *
*==========================================================================*/
return(ERR_STATUS);
}
-
-
/*===========================================================================*
* fdc_command *
*===========================================================================*/
return(need_reset ? ERR_DRIVE : OK);
}
-
/*===========================================================================*
* fdc_out *
*===========================================================================*/
panic("FLOPPY","Sys_outb in fdc_out() failed", s);
}
-
/*===========================================================================*
* recalibrate *
*===========================================================================*/
}
}
-
/*===========================================================================*
* f_reset *
*===========================================================================*/
prev_dp = NULL;
}
-
/*===========================================================================*
* f_intr_wait *
*===========================================================================*/
}
}
-
/*==========================================================================*
* read_id *
*==========================================================================*/
return(OK);
}
-
/*==========================================================================*
* f_do_open *
*==========================================================================*/
return(EIO); /* nothing worked */
}
-
/*==========================================================================*
* test_read *
*==========================================================================*/
return(OK);
}
-
/*============================================================================*
* f_geometry *
*============================================================================*/
_PROTOTYPE( static void do_outb, (port_t port, u8_t v) );
_PROTOTYPE( static void do_outl, (port_t port, u32_t v) );
-
/*===========================================================================*
* main *
*===========================================================================*/
}
}
-
/*===========================================================================*
* fxp_init *
*===========================================================================*/
mess_reply(mp, &reply_mess);
}
-
/*===========================================================================*
* fxp_pci_conf *
*===========================================================================*/
}
}
-
/*===========================================================================*
* fxp_probe *
*===========================================================================*/
return TRUE;
}
-
/*===========================================================================*
* fxp_conf_hw *
*===========================================================================*/
#endif
}
-
/*===========================================================================*
* fxp_init_hw *
*===========================================================================*/
}
}
-
/*===========================================================================*
* fxp_init_buf *
*===========================================================================*/
fp->fxp_tx_idle= 1;
}
-
/*===========================================================================*
* fxp_reset_hw *
*===========================================================================*/
fxp_ru_ptr_cmd(fp, SC_RU_LOAD_BASE, 0, TRUE /* check idle */);
}
-
/*===========================================================================*
* fxp_confaddr *
*===========================================================================*/
}
}
-
/*===========================================================================*
* fxp_writev *
*===========================================================================*/
txp= &fp->fxp_tx_buf[fxp_tx_head];
}
-
assert(!(fp->fxp_flags & FF_SEND_AVAIL));
assert(!(fp->fxp_flags & FF_PACK_SENT));
reply(fp, OK, FALSE);
}
-
/*===========================================================================*
* fxp_readv *
*===========================================================================*/
reply(fp, OK, FALSE);
}
-
/*===========================================================================*
* fxp_do_conf *
*===========================================================================*/
}
-
/*===========================================================================*
* fxp_cu_ptr_cmd *
*===========================================================================*/
panic("FXP","fxp_cu_ptr_cmd: CU does not accept command", NO_NUM);
}
-
/*===========================================================================*
* fxp_ru_ptr_cmd *
*===========================================================================*/
panic("FXP","fxp_ru_ptr_cmd: RU does not accept command", NO_NUM);
}
-
/*===========================================================================*
* fxp_restart_ru *
*===========================================================================*/
FALSE /* do not check idle */);
}
-
/*===========================================================================*
* fxp_getstat *
*===========================================================================*/
reply(fp, OK, FALSE);
}
-
/*===========================================================================*
* fxp_handler *
*===========================================================================*/
return 1;
}
-
/*===========================================================================*
* fxp_check_ints *
*===========================================================================*/
reply(fp, OK, TRUE);
}
-
/*===========================================================================*
* fxp_watchdog_f *
*===========================================================================*/
}
}
-
/*===========================================================================*
* fxp_link_changed *
*===========================================================================*/
return (fp->fxp_mii_scr != scr);
}
-
/*===========================================================================*
* fxp_report_link *
*===========================================================================*/
return;
}
-
oui= (mii_id1 << MII_PH_OUI_H_C_SHIFT) |
((mii_id2 & MII_PL_OUI_L_MASK) >> MII_PL_OUI_L_SHIFT);
model= ((mii_id2 & MII_PL_MODEL_MASK) >> MII_PL_MODEL_SHIFT);
;
}
-
/*===========================================================================*
* fxp_stop *
*===========================================================================*/
continue;
port= fp->fxp_base_port;
-
/* Reset device */
if (debug)
printf("%s: resetting device\n", fp->fxp_name);
sys_exit(0);
}
-
/*===========================================================================*
* reply *
*===========================================================================*/
fp->fxp_flags &= ~(FF_PACK_SENT | FF_PACK_RECV);
}
-
/*===========================================================================*
* mess_reply *
*===========================================================================*/
panic("FXP","fxp: unable to mess_reply", NO_NUM);
}
-
/*===========================================================================*
* put_userdata *
*===========================================================================*/
panic("FXP","put_userdata: sys_vircopy failed", r);
}
-
/*===========================================================================*
* eeprom_read *
*===========================================================================*/
return v;
}
-
/*===========================================================================*
* eeprom_addrsize *
*===========================================================================*/
#endif
}
-
/*===========================================================================*
* mii_read *
*===========================================================================*/
}
}
-
/*===========================================================================*
* fxp_expire_tmrs *
*===========================================================================*/
panic("FXP","sys_outl failed", r);
}
-
/*
* $PchId: fxp.c,v 1.4 2005/01/31 22:10:37 philip Exp $
*/
*/
#define CCB7_DSRF 0x01 /* Discard Short Receive Frames. */
-
/* Byte 8 */
#define CCB8_CSMAD 0x80 /* CSMA Disable. Reserved on 82557, should be
* set to zero.
#include "config.h"
#endif
-
#include "mii.h"
-
/*===========================================================================*
* mii_print_stat_speed *
*===========================================================================*/
}
}
-
/*===========================================================================*
* mii_print_techab *
*===========================================================================*/
#include <sys/ioc_disk.h>
#include "driver.h"
-
#if (CHIP == INTEL)
#if USE_EXTRA_DMA_BUF && DMA_BUF_SIZE < 2048
}
}
-
/*===========================================================================*
* init_buffer *
*===========================================================================*/
#endif /* CHIP == INTEL */
}
-
/*===========================================================================*
* do_rdwt *
*===========================================================================*/
return(r == OK ? (mp->COUNT - iovec1.iov_size) : r);
}
-
/*==========================================================================*
* do_vrdwt *
*==========================================================================*/
return(r);
}
-
/*===========================================================================*
* no_name *
*===========================================================================*/
return name;
}
-
/*============================================================================*
* do_nop *
*============================================================================*/
/* Nothing to clean up. */
}
-
/*===========================================================================*
* nop_cancel *
*===========================================================================*/
/* Nothing to do for select. */
}
-
-
-
/*============================================================================*
* do_diocntl *
*============================================================================*/
#include "drvlib.h"
#include <unistd.h>
-
/* Extended partition? */
#define ext_part(s) ((s) == 0x05 || (s) == 0x0F)
unsigned long offset, struct part_entry *table) );
FORWARD _PROTOTYPE( void sort, (struct part_entry *table) );
-
/*============================================================================*
* partition *
*============================================================================*/
} while ((offset = nextoffset) != 0);
}
-
/*============================================================================*
* get_part_table *
*============================================================================*/
return 1;
}
-
/*===========================================================================*
* sort *
*===========================================================================*/
#include "config.h"
#endif
-
#if !__minix_vmd
#define irq_mode_pci(irq) ((void)0)
#endif
printf("PCI: warning, sys_outl failed: %d\n", s);
}
-
/*===========================================================================*
* pci_init *
*===========================================================================*/
env_parse("pci_debug", "d", 0, &v, 0, 1);
debug= v;
-
/* We don't expect to interrupted */
assert(first_time == 1);
first_time= -1;
return 1;
}
-
/*===========================================================================*
* pci_first_dev *
*===========================================================================*/
return 1;
}
-
/*===========================================================================*
* pci_next_dev *
*===========================================================================*/
return 1;
}
-
/*===========================================================================*
* pci_reserve *
*===========================================================================*/
pcidev[devind].pd_inuse= 1;
}
-
/*===========================================================================*
* pci_ids *
*===========================================================================*/
*didp= pcidev[devind].pd_did;
}
-
/*===========================================================================*
* pci_slot_name *
*===========================================================================*/
return NULL;
}
-
/*===========================================================================*
* pci_attr_r8 *
*===========================================================================*/
return pcibus[busind].pb_rreg8(busind, devind, port);
}
-
/*===========================================================================*
* pci_attr_r16 *
*===========================================================================*/
return pcibus[busind].pb_rreg16(busind, devind, port);
}
-
/*===========================================================================*
* pci_attr_r32 *
*===========================================================================*/
return pcibus[busind].pb_rreg32(busind, devind, port);
}
-
/*===========================================================================*
* pci_attr_w16 *
*===========================================================================*/
pcibus[busind].pb_wreg16(busind, devind, port, value);
}
-
/*===========================================================================*
* pci_attr_w32 *
*===========================================================================*/
pcibus[busind].pb_wreg32(busind, devind, port, value);
}
-
/*===========================================================================*
* pci_intel_init *
*===========================================================================*/
do_pcibridge(busind);
}
-
/*===========================================================================*
* probe_bus *
*===========================================================================*/
}
}
-
/*===========================================================================*
* do_isabridge *
*===========================================================================*/
return 0;
}
-
/*===========================================================================*
* do_pcibridge *
*===========================================================================*/
}
}
-
/*===========================================================================*
* do_piix *
*===========================================================================*/
return 0;
}
-
/*===========================================================================*
* do_sis_isabr *
*===========================================================================*/
return 0;
}
-
/*===========================================================================*
* do_via_isabr *
*===========================================================================*/
return 0;
}
-
/*===========================================================================*
* pci_vid_name *
*===========================================================================*/
**str= '\0';
}
-
/*===========================================================================*
* pci_attr_rsts *
*===========================================================================*/
return pci_attr_r16(devind, PPB_SSTS);
}
-
/*===========================================================================*
* pcibr_intel_wsts *
*===========================================================================*/
pci_attr_w16(devind, PPB_SSTS, value);
}
-
/*===========================================================================*
* pcibr_via_rsts *
*===========================================================================*/
return 0;
}
-
/*===========================================================================*
* pcibr_via_wsts *
*===========================================================================*/
#endif
}
-
/*===========================================================================*
* pci_attr_wsts *
*===========================================================================*/
return v;
}
-
/*===========================================================================*
* pcii_rreg16 *
*===========================================================================*/
return v;
}
-
/*===========================================================================*
* pcii_rreg32 *
*===========================================================================*/
return v;
}
-
/*===========================================================================*
* pcii_wreg16 *
*===========================================================================*/
#endif
}
-
/*===========================================================================*
* pcii_wreg32 *
*===========================================================================*/
#endif
}
-
/*===========================================================================*
* pcii_rsts *
*===========================================================================*/
return v;
}
-
/*===========================================================================*
* pcii_wsts *
*===========================================================================*/
Created: Jan 2000 by Philip Homburg <philip@cs.vu.nl>
*/
-
/* tempory functions: to be replaced later (see pci_intel.h) */
_PROTOTYPE( unsigned pci_inb, (U16_t port) );
_PROTOTYPE( unsigned pci_inw, (U16_t port) );
_PROTOTYPE( void pci_attr_w16, (int devind, int port, U16_t value) );
_PROTOTYPE( void pci_attr_w32, (int devind, int port, u32_t value) );
-
#define PCI_VID 0x00 /* Vendor ID, 16-bit */
#define PCI_DID 0x02 /* Device ID, 16-bit */
#define PCI_CR 0x04 /* Command Register, 16-bit */
#include "config.h"
#endif
-
struct pci_vendor pci_vendor_table[]=
{
{ 0x1000, "NCR" },
#include "../../kernel/config.h"
#include "../../kernel/type.h"
-
/*==========================================================================*
* do_new_kmess *
*==========================================================================*/
return EDONTREPLY;
}
-
/*===========================================================================*
* do_diagnostics *
*===========================================================================*/
#include "log.h"
-
/*===========================================================================*
* kputc *
*===========================================================================*/
driver_task(&log_dtab);
}
-
/*===========================================================================*
* log_name *
*===========================================================================*/
return name;
}
-
/*===========================================================================*
* log_prepare *
*===========================================================================*/
log_select_alerted, log_select_ready_ops;
};
-
/* Function prototypes. */
_PROTOTYPE( void kputc, (int c) );
_PROTOTYPE( int do_new_kmess, (message *m) );
#define click_to_round_k(n) \
((unsigned) ((((unsigned long) (n) << CLICK_SHIFT) + 512) / 1024))
-
/*===========================================================================*
* main *
*===========================================================================*/
driver_task(&m_dtab);
}
-
/*===========================================================================*
* m_name *
*===========================================================================*/
return name;
}
-
/*===========================================================================*
* m_prepare *
*===========================================================================*/
return(&m_geom[device]);
}
-
/*===========================================================================*
* m_transfer *
*===========================================================================*/
return(OK);
}
-
/*============================================================================*
* m_do_open *
*============================================================================*/
return(OK);
}
-
/*===========================================================================*
* m_init *
*===========================================================================*/
#endif /* !(CHIP == INTEL) */
}
-
/*===========================================================================*
* m_ioctl *
*===========================================================================*/
return(OK);
}
-
/*============================================================================*
* m_geometry *
*============================================================================*/
entry->sectors = 32;
}
-
FORWARD _PROTOTYPE( void do_printer_output, (void) );
FORWARD _PROTOTYPE( void signal_handler, (int sig) );
-
-
/*===========================================================================*
* signal_handler *
*===========================================================================*/
}
}
-
/*===========================================================================*
* printer_task *
*===========================================================================*/
}
}
-
/*===========================================================================*
* do_write *
*===========================================================================*/
}
}
-
/*===========================================================================*
* output_done *
*===========================================================================*/
reply(TASK_REPLY, m_ptr->m_source, m_ptr->PROC_NR, EINTR);
}
-
/*===========================================================================*
* reply *
*===========================================================================*/
send(replyee, &pr_mess); /* send the message */
}
-
/*===========================================================================*
* do_initialize *
*===========================================================================*/
}
-
/*==========================================================================*
* prepare_output *
*==========================================================================*/
oleft = chunk;
}
-
/*===========================================================================*
* do_printer_output *
*===========================================================================*/
sys_irqenable(&irq_hook_id);
}
-
-
#define RANDOM_BUF_SIZE 1024
PRIVATE char random_buf[RANDOM_BUF_SIZE];
-
/*===========================================================================*
* main *
*===========================================================================*/
driver_task(&r_dtab); /* start driver's main loop */
}
-
/*===========================================================================*
* r_name *
*===========================================================================*/
return name;
}
-
/*===========================================================================*
* r_prepare *
*===========================================================================*/
return(&m_geom[device]);
}
-
/*===========================================================================*
* r_transfer *
*===========================================================================*/
}
break;
-
/* Unknown (illegal) minor device. */
default:
return(EINVAL);
return(OK);
}
-
/*============================================================================*
* r_do_open *
*============================================================================*/
return(OK);
}
-
/*===========================================================================*
* r_init *
*===========================================================================*/
r_random(NULL, NULL); /* also set periodic timer */
}
-
/*===========================================================================*
* r_ioctl *
*===========================================================================*/
return(OK);
}
-
/*============================================================================*
* r_random *
*============================================================================*/
entry->sectors = 32;
}
-
*
*/
-
#include <sys/types.h>
/* #include <sys/time.h> */
/* #include <sys/systm.h> */
#define assert(x)
#endif
-
/*** SHA-256/384/512 Machine Architecture Definitions *****************/
/*
* SHA2_BYTE_ORDER NOTE:
#endif /* SHA2_USE_INTTYPES_H */
-
/*** SHA-256/384/512 Various Length Definitions ***********************/
/* NOTE: Most of these are in sha2.h */
#define SHA256_SHORT_BLOCK_LENGTH (SHA256_BLOCK_LENGTH - 8)
#define SHA384_SHORT_BLOCK_LENGTH (SHA384_BLOCK_LENGTH - 16)
#define SHA512_SHORT_BLOCK_LENGTH (SHA512_BLOCK_LENGTH - 16)
-
/*** ENDIAN REVERSAL MACROS *******************************************/
#if SHA2_BYTE_ORDER == SHA2_LITTLE_ENDIAN
#define REVERSE32(w,x) { \
void SHA256_Transform(SHA256_CTX*, const sha2_word32*);
void SHA512_Transform(SHA512_CTX*, const sha2_word64*);
-
/*** SHA-XYZ INITIAL HASH VALUES AND CONSTANTS ************************/
/* Hash constant words K for SHA-256: */
const static sha2_word32 K256[64] = {
*/
static const char *sha2_hex_digits = "0123456789abcdef";
-
/*** SHA-256: *********************************************************/
void SHA256_Init(SHA256_CTX* context) {
if (context == (SHA256_CTX*)0) {
(h) = T1 + Sigma0_256(a) + Maj((a), (b), (c)); \
j++
-
#else /* SHA2_BYTE_ORDER == SHA2_LITTLE_ENDIAN */
#define ROUND256_0_TO_15(a,b,c,d,e,f,g,h) \
(h) = T1 + Sigma0_512(a) + Maj((a), (b), (c)), \
j++
-
#else /* SHA2_BYTE_ORDER == SHA2_LITTLE_ENDIAN */
#define ROUND512_0_TO_15(a,b,c,d,e,f,g,h) \
return SHA512_End(&context, digest);
}
-
/*** SHA-384: *********************************************************/
void SHA384_Init(SHA384_CTX* context) {
if (context == (SHA384_CTX*)0) {
extern "C" {
#endif
-
/*** SHA-256/384/512 Various Length Definitions ***********************/
#define SHA256_BLOCK_LENGTH 64
#define SHA256_DIGEST_LENGTH 32
typedef SHA512_CTX SHA384_CTX;
-
/*** SHA-256/384/512 Function Prototypes ******************************/
void SHA256_Init __P((SHA256_CTX *));
#endif /* __SHA2_H__ */
-
/*
* $PchId: sha2.h,v 1.1 2005/06/28 14:29:33 philip Exp $
*/
} re_tx[N_TX_BUF];
u32_t re_ertxth; /* Early Tx Threshold */
-
/* PCI related */
int re_seen; /* TRUE iff device available */
u8_t re_pcibus;
#define REF_BROAD 0x100
#define REF_ENABLED 0x200
-
static re_t re_table[RE_PORT_NR];
static u16_t eth_ign_proto;
}
}
-
/*===========================================================================*
* do_init *
*===========================================================================*/
if (i != 0 && i != 6) env_panic(eakey); /* It's all or nothing */
-
/* Should update ethernet address in hardware */
if (i == 6)
{
goto suspend; /* Buffer overflow */
}
-
rep->re_stat.ets_packetR++;
rep->re_read_s= packlen;
rep->re_flags= (rep->re_flags & ~REF_READING) | REF_PACK_RECV;
reply(rep, OK, FALSE);
}
-
/*===========================================================================*
* reply *
*===========================================================================*/
rep->re_flags &= ~(REF_PACK_SENT | REF_PACK_RECV);
}
-
-
/*===========================================================================*
* mess_reply *
*===========================================================================*/
}
}
-
/*===========================================================================*
* rl_handler *
*===========================================================================*/
}
}
-
#if 0
_PROTOTYPE( static void rtl_init, (struct dpeth *dep) );
Created: Aug 2003 by Philip Homburg <philip@cs.vu.nl>
*/
-
#define RL_IDR 0x00 /* Ethernet address
* Note: RL_9346CR_EEM_CONFIG mode is
* required the change the ethernet
#define RL_RXS_FAE 0x00000002 /* Frame Alignment Error */
#define RL_RXS_ROK 0x00000001 /* Receive OK */
-
/* Registers in the Machine Independent Interface (MII) to the PHY.
* IEEE 802.3 (2000 Edition) Clause 22.
*/
#define DMA8_MODE 0x0B
#define DMA8_CLEAR 0x0C
-
/* If after this preprocessing stuff DMA8_PAGE is not defined
* the 8-bit DMA channel specified is not valid
*/
#define DMA16_MODE 0xD6
#define DMA16_CLEAR 0xD8
-
/* If after this preprocessing stuff DMA16_PAGE is not defined
* the 16-bit DMA channel specified is not valid
*/
# endif
#endif
-
/* DMA modes */
#define DMA16_AUTO_PLAY 0x58 + (SB_DMA_16 & 3)
#define DMA16_AUTO_REC 0x54 + (SB_DMA_16 & 3)
#define DMA8_AUTO_PLAY 0x58 + SB_DMA_8
#define DMA8_AUTO_REC 0x54 + SB_DMA_8
-
/* IO ports for soundblaster */
#define DSP_RESET 0x6 + SB_BASE_ADDR
#define DSP_READ 0xA + SB_BASE_ADDR
#define OPL3_RIGHT 0x2 + SB_BASE_ADDR
#define OPL3_BOTH 0x8 + SB_BASE_ADDR
-
/* DSP Commands */
#define DSP_INPUT_RATE 0x42 /* set input sample rate */
#define DSP_OUTPUT_RATE 0x41 /* set output sample rate */
#define DSP_CMD_IRQREQ8 0xF2 /* Interrupt request 8 bit */
#define DSP_CMD_IRQREQ16 0xF3 /* Interrupt request 16 bit */
-
/* DSP Modes */
#define DSP_MODE_MONO_US 0x00 /* Mono unsigned */
#define DSP_MODE_MONO_S 0x10 /* Mono signed */
#define DSP_MODE_STEREO_US 0x20 /* Stereo unsigned */
#define DSP_MODE_STEREO_S 0x30 /* Stereo signed */
-
/* MIXER commands */
#define MIXER_RESET 0x00 /* Reset */
#define MIXER_DAC_LEVEL 0x04 /* Used for detection only */
#define DSP_MIN_FRAGMENT_SIZE 1024 /* Minimum fragment size */
#define DSP_NR_OF_BUFFERS 8
-
/* Number of bytes you can DMA before hitting a 64K boundary: */
#define dma_bytes_left(phys) \
((unsigned) (sizeof(int) == 2 ? 0 : 0x10000) - (unsigned) ((phys) & 0xFFFF))
-
#endif /* SB16_H */
#define dprint (void)
-
/*===========================================================================*
* main
*===========================================================================*/
}
-
/*===========================================================================*
* dsp_open
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_close
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_ioctl
*===========================================================================*/
return status;
}
-
/*===========================================================================*
* dsp_write
*===========================================================================*/
notify(m_ptr->m_source);
}
-
/*===========================================================================*
* dsp_hardware_msg
*===========================================================================*/
dsp_inb((DspBits == 8 ? DSP_DATA_AVL : DSP_DATA16_AVL));
}
-
/*===========================================================================*
* dsp_status *
*===========================================================================*/
send(m_ptr->m_source, m_ptr); /* send the message */
}
-
/*===========================================================================*
* reply *
*===========================================================================*/
send(replyee, &m);
}
-
/*===========================================================================*
* init_buffer
*===========================================================================*/
#endif /* CHIP == INTEL */
}
-
/*===========================================================================*
* dsp_inb
*===========================================================================*/
return value;
}
-
/*===========================================================================*
* dsp_outb
*===========================================================================*/
panic("SB16DSP","sys_outb() failed", s);
}
-
/*===========================================================================*
* dsp_init
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_reset
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_command
*===========================================================================*/
return -1;
}
-
/*===========================================================================*
* dsp_set_size
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_set_speed
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_set_stereo
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_set_bits
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_set_sign
*===========================================================================*/
return OK;
}
-
/*===========================================================================*
* dsp_dma_setup
*===========================================================================*/
}
}
-
/*===========================================================================*
* dsp_setup()
*===========================================================================*/
}
}
-
/*===========================================================================*
* mixer_set
*===========================================================================*/
dsp_outb(MIXER_DATA, data);
return OK;
-}
\ No newline at end of file
+}
FORWARD _PROTOTYPE( int ga_program, (struct sequence *seq) );
FORWARD _PROTOTYPE( int cons_ioctl, (tty_t *tp, int) );
-
/*===========================================================================*
* cons_write *
*===========================================================================*/
}
}
-
/*===========================================================================*
* cons_echo *
*===========================================================================*/
flush(cons);
}
-
/*===========================================================================*
* out_char *
*===========================================================================*/
}
}
-
/*===========================================================================*
* scroll_screen *
*===========================================================================*/
flush(cons);
}
-
/*===========================================================================*
* flush *
*===========================================================================*/
}
}
-
/*===========================================================================*
* parse_escape *
*===========================================================================*/
}
}
-
/*===========================================================================*
* do_escape *
*===========================================================================*/
cons->c_esc_state = 0;
}
-
/*===========================================================================*
* set_6845 *
*===========================================================================*/
*val = (v1 << 8) | v2;
}
-
/*===========================================================================*
* beep *
*===========================================================================*/
}
}
-
/*===========================================================================*
* stop_beep *
*===========================================================================*/
beeping = FALSE;
}
-
/*===========================================================================*
* scr_init *
*===========================================================================*/
putk(c);
}
-
/*==========================================================================*
* do_new_kmess *
*==========================================================================*/
send(m_ptr->m_source, m_ptr);
}
-
/*===========================================================================*
* putk *
*===========================================================================*/
}
}
-
/*===========================================================================*
* toggle_scroll *
*===========================================================================*/
printf("%sware scrolling enabled.\n", softscroll ? "Soft" : "Hard");
}
-
/*===========================================================================*
* cons_stop *
*===========================================================================*/
cons_table[0].c_attr = cons_table[0].c_blank = BLANK_COLOR;
}
-
/*===========================================================================*
* cons_org0 *
*===========================================================================*/
select_console(ccurrent);
}
-
/*===========================================================================*
* select_console *
*===========================================================================*/
set_6845(CURSOR, curcons->c_cur);
}
-
/*===========================================================================*
* con_loadfont *
*===========================================================================*/
return(result);
}
-
/*===========================================================================*
* ga_program *
*===========================================================================*/
return sys_voutb(char_out, 14);
}
-
/*===========================================================================*
* cons_ioctl *
*===========================================================================*/
FORWARD _PROTOTYPE( int kb_read, (struct tty *tp, int try) );
FORWARD _PROTOTYPE( unsigned map_key, (int scode) );
-
/*===========================================================================*
* map_key0 *
*===========================================================================*/
#define map_key0(scode) \
((unsigned) keymap[(scode) * MAP_COLS])
-
/*===========================================================================*
* map_key *
*===========================================================================*/
}
}
-
/*==========================================================================*
* kb_read *
*==========================================================================*/
return 1;
}
-
/*===========================================================================*
* make_break *
*===========================================================================*/
return(-1);
}
-
/*===========================================================================*
* set_leds *
*===========================================================================*/
kb_ack(); /* wait for ack response */
}
-
/*==========================================================================*
* kb_wait *
*==========================================================================*/
return(retries); /* zero on timeout, positive if ready */
}
-
/*==========================================================================*
* kb_ack *
*==========================================================================*/
}
}
-
/*===========================================================================*
* kbd_loadmap *
*===========================================================================*/
return(result);
}
-
/*===========================================================================*
* do_fkey_ctl *
*===========================================================================*/
return(TRUE);
}
-
/*==========================================================================*
* show_key_mappings *
*==========================================================================*/
printf("\n");
}
-
/*==========================================================================*
* scan_keyboard *
*==========================================================================*/
return(byte_in[0].value); /* return scan code */
}
-
/*==========================================================================*
* do_panic_dumps *
*==========================================================================*/
}
}
-
PRIVATE pty_t pty_table[NR_PTYS]; /* PTY bookkeeping */
-
FORWARD _PROTOTYPE( int pty_write, (tty_t *tp, int try) );
FORWARD _PROTOTYPE( void pty_echo, (tty_t *tp, int c) );
FORWARD _PROTOTYPE( void pty_start, (pty_t *pp) );
FORWARD _PROTOTYPE( int pty_ocancel, (tty_t *tp, int try) );
FORWARD _PROTOTYPE( int pty_select, (tty_t *tp, message *m) );
-
/*==========================================================================*
* do_pty *
*==========================================================================*/
tty_reply(TASK_REPLY, m_ptr->m_source, m_ptr->PROC_NR, r);
}
-
/*==========================================================================*
* pty_write *
*==========================================================================*/
int count, ocount, s;
phys_bytes user_phys;
-
/* PTY closed down? */
if (pp->state & PTY_CLOSED) {
if(try) return 1;
pty_start(pp);
}
-
/*==========================================================================*
* pty_start *
*==========================================================================*/
}
}
-
/*==========================================================================*
* pty_finish *
*==========================================================================*/
}
-
/*==========================================================================*
* pty_read *
*==========================================================================*/
pty_t *pp = tp->tty_priv;
char c;
-
if (pp->state & PTY_CLOSED) {
if(try) return 1;
if (tp->tty_inleft > 0) {
}
}
-
/*==========================================================================*
* pty_close *
*==========================================================================*/
if (pp->state & PTY_CLOSED) pp->state = 0; else pp->state |= TTY_CLOSED;
}
-
/*==========================================================================*
* pty_icancel *
*==========================================================================*/
}
}
-
/*==========================================================================*
* pty_ocancel *
*==========================================================================*/
pp->otail = pp->ohead;
}
-
/*==========================================================================*
* pty_init *
*==========================================================================*/
tp->tty_select_ops = 0;
}
-
/*==========================================================================*
* pty_status *
*==========================================================================*/
-
#include <minix/config.h>
/*==========================================================================*
* rs232.c - serial driver for 8250 and 16450 UARTs *
return 1;
}
-
/*==========================================================================*
* rs_echo *
*==========================================================================*/
if ((rs->ohead += ocount) >= bufend(rs->obuf)) rs->ohead -= buflen(rs->obuf);
}
-
/*==========================================================================*
* rs_ioctl *
*==========================================================================*/
return 0; /* dummy */
}
-
/*==========================================================================*
* rs_config *
*==========================================================================*/
#endif /* MACHINE == ATARI */
}
-
/*==========================================================================*
* rs_init *
*==========================================================================*/
}
-
/*==========================================================================*
* rs_interrupt *
*==========================================================================*/
}
}
-
/*==========================================================================*
* rs_icancel *
*==========================================================================*/
return 0; /* dummy */
}
-
/*==========================================================================*
* rs_ocancel *
*==========================================================================*/
return 0; /* dummy */
}
-
/*==========================================================================*
* rs_read *
*==========================================================================*/
}
}
-
/*==========================================================================*
* rs_ostart *
*==========================================================================*/
if (txready(rs)) out_int(rs);
}
-
/*==========================================================================*
* rs_break *
*==========================================================================*/
return 0; /* dummy */
}
-
/*==========================================================================*
* rs_close *
*==========================================================================*/
return 0; /* dummy */
}
-
/* Low level (interrupt) routines. */
#if (MACHINE == IBM_PC)
}
#endif /* MACHINE == ATARI */
-
/*==========================================================================*
* in_int *
*==========================================================================*/
}
}
-
/*==========================================================================*
* line_int *
*==========================================================================*/
if (rs->lstatus & LS_BREAK_INTERRUPT) ++rs->break_interrupts;
}
-
/*==========================================================================*
* modem_int *
*==========================================================================*/
}
}
-
/*==========================================================================*
* out_int *
*==========================================================================*/
PUBLIC clock_t tty_next_timeout; /* time that the next alarm is due */
PUBLIC struct machine machine; /* kernel environment variables */
-
/*===========================================================================*
* tty_task *
*===========================================================================*/
}
}
-
/*===========================================================================*
* do_status *
*===========================================================================*/
}
}
-
/*===========================================================================*
* do_read *
*===========================================================================*/
select_retry(tp);
}
-
/*===========================================================================*
* do_write *
*===========================================================================*/
tty_reply(TASK_REPLY, m_ptr->m_source, m_ptr->PROC_NR, r);
}
-
/*===========================================================================*
* do_ioctl *
*===========================================================================*/
tty_reply(TASK_REPLY, m_ptr->m_source, m_ptr->PROC_NR, r);
}
-
/*===========================================================================*
* do_open *
*===========================================================================*/
tty_reply(TASK_REPLY, m_ptr->m_source, m_ptr->PROC_NR, r);
}
-
/*===========================================================================*
* do_close *
*===========================================================================*/
tty_reply(TASK_REPLY, m_ptr->m_source, m_ptr->PROC_NR, OK);
}
-
/*===========================================================================*
* do_cancel *
*===========================================================================*/
select_retry_pty(tp);
}
-
/*===========================================================================*
* in_transfer *
*===========================================================================*/
}
}
-
/*===========================================================================*
* in_process *
*===========================================================================*/
return ct;
}
-
/*===========================================================================*
* echo *
*===========================================================================*/
return(ch | (len << IN_LSHIFT));
}
-
/*==========================================================================*
* rawecho *
*==========================================================================*/
tp->tty_reprint = rp;
}
-
/*==========================================================================*
* back_over *
*==========================================================================*/
return(1); /* one character erased */
}
-
/*==========================================================================*
* reprint *
*==========================================================================*/
} while (count < tp->tty_incount);
}
-
/*==========================================================================*
* out_process *
*==========================================================================*/
*ocount -= oct; /* *[io]count are the number of chars that are used */
}
-
/*===========================================================================*
* dev_ioctl *
*===========================================================================*/
tty_reply(REVIVE, tp->tty_iocaller, tp->tty_ioproc, result);
}
-
/*===========================================================================*
* setattr *
*===========================================================================*/
(*tp->tty_ioctl)(tp, 0);
}
-
/*===========================================================================*
* tty_reply *
*===========================================================================*/
}
}
-
/*===========================================================================*
* sigchar *
*===========================================================================*/
}
}
-
/*==========================================================================*
* tty_icancel *
*==========================================================================*/
(*tp->tty_icancel)(tp, 0);
}
-
/*==========================================================================*
* tty_init *
*==========================================================================*/
}
}
-
/*==========================================================================*
* tty_devnop *
*==========================================================================*/
return(OK);
}
-
/*===========================================================================*
* compat_getc *
*===========================================================================*/
return(OK);
}
-
/*===========================================================================*
* compat_setp *
*===========================================================================*/
return(OK);
}
-
/*===========================================================================*
* compat_setc *
*===========================================================================*/
return(OK);
}
-
/* Table of termios line speed to sgtty line speed translations. All termios
* speeds are present even if sgtty didn't know about them. (Now it does.)
*/
return 96;
}
-
/*===========================================================================*
* sgspd2tspd *
*===========================================================================*/
return B9600;
}
-
#if ENABLE_BINCOMPAT
/*===========================================================================*
* do_ioctl_compat *
#endif /* ENABLE_BINCOMPAT */
#endif /* ENABLE_SRCCOMPAT || ENABLE_BINCOMPAT */
-
-
#endif /* (CHIP == INTEL) */
-