diff options
| author | Maxim Sobolev <sobomax@FreeBSD.org> | 2003-04-30 22:15:47 +0000 |
|---|---|---|
| committer | Maxim Sobolev <sobomax@FreeBSD.org> | 2003-04-30 22:15:47 +0000 |
| commit | e9442e03ca0af78bb37791699b53cfae55b8d08e (patch) | |
| tree | cbc9889974aef9fd663a4483399ec2a449b463de /sys/dev/puc | |
| parent | 5dacb0cdba9b86b7dd1b42d68e9aca35bcbea41c (diff) | |
Notes
Diffstat (limited to 'sys/dev/puc')
| -rw-r--r-- | sys/dev/puc/puc.c | 4 | ||||
| -rw-r--r-- | sys/dev/puc/pucdata.c | 34 |
2 files changed, 36 insertions, 2 deletions
diff --git a/sys/dev/puc/puc.c b/sys/dev/puc/puc.c index fedf9bb073cf..5cfe3ab74a70 100644 --- a/sys/dev/puc/puc.c +++ b/sys/dev/puc/puc.c @@ -140,7 +140,7 @@ puc_probe_ilr(struct puc_softc *sc, struct resource *res) case PUC_ILR_TYPE_DIGI: sc->ilr_st = rman_get_bustag(res); sc->ilr_sh = rman_get_bushandle(res); - for (i = 0; i < 2; i++) { + for (i = 0; i < 2 && sc->sc_desc->ilr_offset[i] != 0; i++) { t1 = bus_space_read_1(sc->ilr_st, sc->ilr_sh, sc->sc_desc->ilr_offset[i]); t1 = ~t1; @@ -353,7 +353,7 @@ puc_ilr_read(struct puc_softc *sc) mask = 0; switch (sc->sc_desc->ilr_type) { case PUC_ILR_TYPE_DIGI: - for (i = 1; i >= 0; i--) { + for (i = 1; i >= 0 && sc->sc_desc->ilr_offset[i] != 0; i--) { mask = (mask << 8) | (bus_space_read_1(sc->ilr_st, sc->ilr_sh, sc->sc_desc->ilr_offset[i]) & 0xff); } diff --git a/sys/dev/puc/pucdata.c b/sys/dev/puc/pucdata.c index faed396af0b7..04dbef07211b 100644 --- a/sys/dev/puc/pucdata.c +++ b/sys/dev/puc/pucdata.c @@ -1008,6 +1008,40 @@ const struct puc_device_description puc_devices[] = { }, }, + { "IC Book Labs Ironclad x8 Lite", + NULL, + { 0xb00c, 0x041c, 0, 0 }, + { 0xffff, 0xffff, 0, 0 }, + { + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ } + }, + PUC_ILR_TYPE_DIGI, { 0x07 }, + }, + + { "IC Book Labs Ironclad x8 Pro", + NULL, + { 0xb00c, 0x051c, 0, 0 }, + { 0xffff, 0xffff, 0, 0 }, + { + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ } + }, + PUC_ILR_TYPE_DIGI, { 0x07 }, + }, + { "IC Book Labs Dreadnought x16 Lite", NULL, { 0xb00c, 0x091c, 0, 0 }, |
