Home | History | Annotate | Download | only in xscale

Lines Matching refs:sc

95 i80312_attach(struct i80312_softc *sc)
103 i80312_softc = sc;
109 if (bus_space_subregion(sc->sc_st, sc->sc_sh, I80312_PPB_BASE,
110 I80312_PPB_SIZE, &sc->sc_ppb_sh))
112 device_xname(sc->sc_dev));
114 if (bus_space_subregion(sc->sc_st, sc->sc_sh, I80312_ATU_BASE,
115 I80312_ATU_SIZE, &sc->sc_atu_sh))
117 device_xname(sc->sc_dev));
119 if (bus_space_subregion(sc->sc_st, sc->sc_sh, I80312_INTC_BASE,
120 I80312_INTC_SIZE, &sc->sc_intc_sh))
122 device_xname(sc->sc_dev));
129 sc->sc_sder = bus_space_read_1(sc->sc_st, sc->sc_ppb_sh,
131 sc->sc_sder &= ~PPB_SDER_PMSE;
132 bus_space_write_1(sc->sc_st, sc->sc_ppb_sh,
133 I80312_PPB_SDER, sc->sc_sder);
138 bus_space_write_2(sc->sc_st, sc->sc_ppb_sh,
139 I80312_PPB_SISR, sc->sc_sisr);
144 if (sc->sc_privmem_size && sc->sc_privio_size) {
145 bus_space_write_1(sc->sc_st, sc->sc_ppb_sh, I80312_PPB_SIOBR,
146 (sc->sc_privio_base >> 12) << 4);
147 bus_space_write_1(sc->sc_st, sc->sc_ppb_sh, I80312_PPB_SIOLR,
148 ((sc->sc_privio_base + sc->sc_privio_size - 1)
151 bus_space_write_2(sc->sc_st, sc->sc_ppb_sh, I80312_PPB_SMBR,
152 (sc->sc_privmem_base >> 20) << 4);
153 bus_space_write_2(sc->sc_st, sc->sc_ppb_sh, I80312_PPB_SMLR,
154 ((sc->sc_privmem_base + sc->sc_privmem_size - 1)
157 sc->sc_sder |= PPB_SDER_PMSE;
158 bus_space_write_1(sc->sc_st, sc->sc_ppb_sh, I80312_PPB_SDER,
159 sc->sc_sder);
160 } else if (sc->sc_privmem_size || sc->sc_privio_size) {
162 device_xname(sc->sc_dev), sc->sc_privmem_size,
163 sc->sc_privio_size);
165 device_xname(sc->sc_dev));
171 if (sc->sc_is_host)
172 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
173 PCI_MAPREG_START, sc->sc_pin_base);
174 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
175 I80312_ATU_PIAL, ATU_LIMIT(sc->sc_pin_size));
176 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
177 I80312_ATU_PIATV, sc->sc_pin_xlate);
182 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
183 I80312_ATU_SIAM, sc->sc_sin_base);
184 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
185 I80312_ATU_SIAL, ATU_LIMIT(sc->sc_sin_size));
186 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
187 I80312_ATU_SIATV, sc->sc_sin_xlate);
194 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
199 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
212 atucr = bus_space_read_4(sc->sc_st, sc->sc_atu_sh, I80312_ATU_ACR);
218 if (sc->sc_pmemout_size)
219 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
220 I80312_ATU_POMWV, sc->sc_pmemout_base);
221 if (sc->sc_pioout_size)
222 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
223 I80312_ATU_POIOWV, sc->sc_pioout_base);
224 if (sc->sc_pmemout_size || sc->sc_pioout_size)
230 if (sc->sc_smemout_size)
231 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
232 I80312_ATU_SOMWV, sc->sc_smemout_base);
233 if (sc->sc_sioout_size)
234 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
235 I80312_ATU_SOIOWV, sc->sc_sioout_base);
236 if (sc->sc_smemout_size || sc->sc_sioout_size)
239 bus_space_write_4(sc->sc_st, sc->sc_atu_sh, I80312_ATU_ACR, atucr);
245 if (sc->sc_is_host) {
246 preg = bus_space_read_4(sc->sc_st, sc->sc_atu_sh,
250 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
253 preg = bus_space_read_4(sc->sc_st, sc->sc_atu_sh,
257 bus_space_write_4(sc->sc_st, sc->sc_atu_sh,
269 if (sc->sc_is_host) {
270 bus_space_write_4(sc->sc_st, sc->sc_ppb_sh,
278 i80312_io_bs_init(&sc->sc_pci_iot, sc);
279 i80312_mem_bs_init(&sc->sc_pci_memt, sc);
282 i80312_pci_init(&sc->sc_pci_chipset, sc);
285 i80312_pci_dma_init(sc);
286 i80312_local_dma_init(sc);
293 ia.ia_st = sc->sc_st;
294 ia.ia_sh = sc->sc_sh;
295 ia.ia_dmat = &sc->sc_local_dmat;
299 config_found(sc->sc_dev, &ia, i80312_iopxs_print,
310 preg = bus_space_read_4(sc->sc_st, sc->sc_ppb_sh, PCI_BRIDGE_BUS_REG);
311 pba.pba_iot = &sc->sc_pci_iot;
312 pba.pba_memt = &sc->sc_pci_memt;
313 pba.pba_dmat = &sc->sc_pci_dmat;
315 pba.pba_pc = &sc->sc_pci_chipset;
323 config_found(sc->sc_dev, &pba, pcibusprint,
346 i80312_pci_dma_init(struct i80312_softc *sc)
348 bus_dma_tag_t dmat = &sc->sc_pci_dmat;
349 struct arm32_dma_range *dr = &sc->sc_pci_dma_range;
351 dr->dr_sysbase = sc->sc_sin_xlate;
352 dr->dr_busbase = sc->sc_sin_base;
353 dr->dr_len = sc->sc_sin_size;
384 i80312_local_dma_init(struct i80312_softc *sc)
386 bus_dma_tag_t dmat = &sc->sc_local_dmat;