From: Philip Homburg Date: Fri, 5 Aug 2005 18:37:15 +0000 (+0000) Subject: Temp hacks for QEMU. Call to env_setargs in dpeth. X-Git-Tag: v3.1.0~414 X-Git-Url: http://zhaoyanbai.com/repos/man.rndc.conf.html?a=commitdiff_plain;h=cfd27c36cb213736f76422126c75dfd70abf79fd;p=minix.git Temp hacks for QEMU. Call to env_setargs in dpeth. --- diff --git a/drivers/dp8390/rtl8029.c b/drivers/dp8390/rtl8029.c index bb76b2f2d..631f63d87 100644 --- a/drivers/dp8390/rtl8029.c +++ b/drivers/dp8390/rtl8029.c @@ -120,7 +120,11 @@ struct dpeth *dep; /* printf("cr = 0x%x\n", pci_attr_r16(devind, PCI_CR)); */ bar= pci_attr_r32(devind, PCI_BAR) & 0xffffffe0; if ((bar & 0x3ff) >= 0x100-32 || bar < 0x400) - panic("", "base address is not properly configured", NO_NUM); + { + printf("rtl8029: ignoring bad base address 0x%x for QEMU\n", + bar); + /* panic("", "base address is not properly configured", NO_NUM); */ + } dep->de_base_port= bar; ilr= pci_attr_r8(devind, PCI_ILR); diff --git a/drivers/dpeth/dp.c b/drivers/dpeth/dp.c index 83b81eb3a..115129a32 100644 --- a/drivers/dpeth/dp.c +++ b/drivers/dpeth/dp.c @@ -49,6 +49,9 @@ ** +------------+---------+---------+---------------+ ** ** $Log$ +** Revision 1.6 2005/08/05 18:37:15 philip +** Temp hacks for QEMU. Call to env_setargs in dpeth. +** ** Revision 1.5 2005/08/02 15:30:35 jnherder ** Various updates to support dynamically starting drivers. ** Output during initialization should be suppressed. Unless an error occurs. @@ -90,7 +93,6 @@ */ extern int errno; static dpeth_t de_table[DE_PORT_NR]; -static int dpeth_tasknr = ANY; typedef struct dp_conf { /* Configuration description structure */ port_t dpc_port; @@ -567,14 +569,8 @@ PUBLIC int main(int argc, char **argv) dpeth_t *dep; int rc, fkeys, sfkeys; - /* Get precess number */ - if ((dpeth_tasknr = getprocnr()) < 0) - panic(DevName, "getprocnr() failed", errno); -#if defined USE_IOPL - /* Request direct access to hardware I/O ports */ - if ((rc = sys_enable_iop(dpeth_tasknr)) != OK) - panic(DevName, "sys_enable_iop() failed", rc); -#endif + env_setargs(argc, argv); + /* Request function key for debug dumps */ fkeys = sfkeys = 0; bit_set(sfkeys, 8); if ((fkey_map(&fkeys, &sfkeys)) != OK) diff --git a/drivers/libpci/pci.c b/drivers/libpci/pci.c index 55403be12..374a06fd0 100644 --- a/drivers/libpci/pci.c +++ b/drivers/libpci/pci.c @@ -515,7 +515,12 @@ printf("probe_bus(%d)\n", busind); headt= pci_attr_r8(devind, PCI_HEADT); sts= pci_attr_rsts(devind); if (sts & (PSR_SSE|PSR_RMAS|PSR_RTAS)) - break; + { + printf( + "pci: ignoring bad value 0x%x in sts for QEMU\n", + sts & (PSR_SSE|PSR_RMAS|PSR_RTAS)); + /* break; */ + } if (vid == NO_VID) { /* Some bridge implementations do support