version 1.2, 2008/03/05 11:11:22 |
version 1.4, 2008/05/11 10:26:11 |
|
|
/* |
/* |
* Map whole I/O space. |
* Map whole I/O space. |
*/ |
*/ |
if (bus_space_map(sc->sc_bust, 0, 128 * 12, 0, &sc->sc_ioh)) { |
// if (bus_space_map(sc->sc_bust, 0, 128 * 12, 0, &sc->sc_ioh)) { |
|
if (bus_space_map(sc->sc_bust, 0, saa->sai_size, 0, &sc->sc_ioh)) { |
printf(": can't map i/o space\n"); |
printf(": can't map i/o space\n"); |
return; |
return; |
} |
} |
|
|
printf(": SA-1111 companion chip rev. %d/%d\n", skid & 0xf0, skid & 0x0f); |
printf(": SA-1111 companion chip rev. %d/%d\n", skid & 0xf0, skid & 0x0f); |
|
|
/* |
/* |
* Attach critical devices. |
* Attach critical devices (GPIO and Interrupt controllers). |
*/ |
*/ |
sacc_attach_critical(sc); |
sacc_attach_critical(sc); |
|
|
|
|
|
|
aa.sac_iot = sc->sc_bust; |
aa.sac_iot = sc->sc_bust; |
aa.sac_dmat = sc->sc_dmat; |
aa.sac_dmat = sc->sc_dmat; |
|
aa.sac_bush = sc->sc_ioh; |
|
|
aa.sac_xintr = (cf->cf_loc)[0]; |
aa.sac_xintr = (cf->cf_loc)[0]; |
|
|
|
|
|
|
saa.sac_iot = sc->sc_bust; |
saa.sac_iot = sc->sc_bust; |
saa.sac_dmat = sc->sc_dmat; |
saa.sac_dmat = sc->sc_dmat; |
|
saa.sac_bush = sc->sc_ioh; |
|
|
/* XXX sac_xintr is an internal to us interrupt number, but here we use it |
/* XXX sac_xintr is an internal to us interrupt number, but here we use it |
to inform our INTC about which intr line it uses on main INTC. */ |
to inform our INTC about which intr line it uses on main INTC. */ |
|
|
saa.sac_typecookie = SACC_TYPE_INTC; |
saa.sac_typecookie = SACC_TYPE_INTC; |
config_found(&sc->sc_dev, &saa, sacc_print); |
config_found(&sc->sc_dev, &saa, sacc_print); |
|
|
#if 0 |
|
saa.sac_xintr = -1; /* is not widely used, spec defines most of them */ |
saa.sac_xintr = -1; /* is not widely used, spec defines most of them */ |
saa.sac_typecookie = SACC_TYPE_GPIO; |
saa.sac_typecookie = SACC_TYPE_GPIO; |
config_found(&sc->sc_dev, &saa, sacc_print); |
config_found(&sc->sc_dev, &saa, sacc_print); |
#endif |
|
} |
} |
|
|