diff options
author | wollman <wollman@FreeBSD.org> | 2000-05-04 23:57:32 +0000 |
---|---|---|
committer | wollman <wollman@FreeBSD.org> | 2000-05-04 23:57:32 +0000 |
commit | 9d3bcb7af156fe1d41ce227f06f140f199ae532c (patch) | |
tree | 7345fe9f57f4c4d999a7d7b335a3e641827ae085 | |
parent | 49a9f55ef2875c6218d25b2eed351bc3f2b4e69b (diff) | |
download | FreeBSD-src-9d3bcb7af156fe1d41ce227f06f140f199ae532c.zip FreeBSD-src-9d3bcb7af156fe1d41ce227f06f140f199ae532c.tar.gz |
Add a little do-nothing ``slopsucker'' device which gives a home
to PNP0c04 (legacy ISA coprocessor support). Tourist info.
-rw-r--r-- | sys/amd64/amd64/fpu.c | 44 | ||||
-rw-r--r-- | sys/amd64/isa/npx.c | 44 | ||||
-rw-r--r-- | sys/i386/isa/npx.c | 44 |
3 files changed, 132 insertions, 0 deletions
diff --git a/sys/amd64/amd64/fpu.c b/sys/amd64/amd64/fpu.c index 30914d0..5c8edca 100644 --- a/sys/amd64/amd64/fpu.c +++ b/sys/amd64/amd64/fpu.c @@ -74,6 +74,7 @@ #include <i386/isa/intr_machdep.h> #include <i386/isa/isa.h> #endif +#include <isa/isavar.h> /* * 387 and 287 Numeric Coprocessor Extension (NPX) Driver. @@ -926,3 +927,46 @@ static devclass_t npx_devclass; * doesn't describe the processor as being `on isa'. */ DRIVER_MODULE(npx, nexus, npx_driver, npx_devclass, 0, 0); + +/* + * This sucks up the legacy ISA support assignments from PNPBIOS. + */ +static struct isa_pnp_id npxisa_ids[] = { + { 0x040cd041, "Legacy ISA coprocessor support" }, /* PNP0C04 */ + { 0 } +}; + +static int +npxisa_probe(device_t dev) +{ + return (ISA_PNP_PROBE(device_get_parent(dev), dev, npxisa_ids)); +} + +static int +npxisa_attach(device_t dev) +{ + return (0); +} + +static device_method_t npxisa_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, npxisa_probe), + DEVMETHOD(device_attach, npxisa_attach), + DEVMETHOD(device_detach, bus_generic_detach), + DEVMETHOD(device_shutdown, bus_generic_shutdown), + DEVMETHOD(device_suspend, bus_generic_suspend), + DEVMETHOD(device_resume, bus_generic_resume), + + { 0, 0 } +}; + +static driver_t npxisa_driver = { + "npxisa", + npxisa_methods, + 1, /* no softc */ +}; + +static devclass_t npxisa_devclass; + +DRIVER_MODULE(npxisa, isa, npxisa_driver, npxisa_devclass, 0, 0); + diff --git a/sys/amd64/isa/npx.c b/sys/amd64/isa/npx.c index 30914d0..5c8edca 100644 --- a/sys/amd64/isa/npx.c +++ b/sys/amd64/isa/npx.c @@ -74,6 +74,7 @@ #include <i386/isa/intr_machdep.h> #include <i386/isa/isa.h> #endif +#include <isa/isavar.h> /* * 387 and 287 Numeric Coprocessor Extension (NPX) Driver. @@ -926,3 +927,46 @@ static devclass_t npx_devclass; * doesn't describe the processor as being `on isa'. */ DRIVER_MODULE(npx, nexus, npx_driver, npx_devclass, 0, 0); + +/* + * This sucks up the legacy ISA support assignments from PNPBIOS. + */ +static struct isa_pnp_id npxisa_ids[] = { + { 0x040cd041, "Legacy ISA coprocessor support" }, /* PNP0C04 */ + { 0 } +}; + +static int +npxisa_probe(device_t dev) +{ + return (ISA_PNP_PROBE(device_get_parent(dev), dev, npxisa_ids)); +} + +static int +npxisa_attach(device_t dev) +{ + return (0); +} + +static device_method_t npxisa_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, npxisa_probe), + DEVMETHOD(device_attach, npxisa_attach), + DEVMETHOD(device_detach, bus_generic_detach), + DEVMETHOD(device_shutdown, bus_generic_shutdown), + DEVMETHOD(device_suspend, bus_generic_suspend), + DEVMETHOD(device_resume, bus_generic_resume), + + { 0, 0 } +}; + +static driver_t npxisa_driver = { + "npxisa", + npxisa_methods, + 1, /* no softc */ +}; + +static devclass_t npxisa_devclass; + +DRIVER_MODULE(npxisa, isa, npxisa_driver, npxisa_devclass, 0, 0); + diff --git a/sys/i386/isa/npx.c b/sys/i386/isa/npx.c index 30914d0..5c8edca 100644 --- a/sys/i386/isa/npx.c +++ b/sys/i386/isa/npx.c @@ -74,6 +74,7 @@ #include <i386/isa/intr_machdep.h> #include <i386/isa/isa.h> #endif +#include <isa/isavar.h> /* * 387 and 287 Numeric Coprocessor Extension (NPX) Driver. @@ -926,3 +927,46 @@ static devclass_t npx_devclass; * doesn't describe the processor as being `on isa'. */ DRIVER_MODULE(npx, nexus, npx_driver, npx_devclass, 0, 0); + +/* + * This sucks up the legacy ISA support assignments from PNPBIOS. + */ +static struct isa_pnp_id npxisa_ids[] = { + { 0x040cd041, "Legacy ISA coprocessor support" }, /* PNP0C04 */ + { 0 } +}; + +static int +npxisa_probe(device_t dev) +{ + return (ISA_PNP_PROBE(device_get_parent(dev), dev, npxisa_ids)); +} + +static int +npxisa_attach(device_t dev) +{ + return (0); +} + +static device_method_t npxisa_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, npxisa_probe), + DEVMETHOD(device_attach, npxisa_attach), + DEVMETHOD(device_detach, bus_generic_detach), + DEVMETHOD(device_shutdown, bus_generic_shutdown), + DEVMETHOD(device_suspend, bus_generic_suspend), + DEVMETHOD(device_resume, bus_generic_resume), + + { 0, 0 } +}; + +static driver_t npxisa_driver = { + "npxisa", + npxisa_methods, + 1, /* no softc */ +}; + +static devclass_t npxisa_devclass; + +DRIVER_MODULE(npxisa, isa, npxisa_driver, npxisa_devclass, 0, 0); + |