Lines Matching refs:eromptr

157 static u32 bcma_erom_get_ent(struct bcma_bus *bus, u32 __iomem **eromptr)
159 u32 ent = readl(*eromptr);
160 (*eromptr)++;
164 static void bcma_erom_push_ent(u32 __iomem **eromptr)
166 (*eromptr)--;
169 static s32 bcma_erom_get_ci(struct bcma_bus *bus, u32 __iomem **eromptr)
171 u32 ent = bcma_erom_get_ent(bus, eromptr);
179 static bool bcma_erom_is_end(struct bcma_bus *bus, u32 __iomem **eromptr)
181 u32 ent = bcma_erom_get_ent(bus, eromptr);
182 bcma_erom_push_ent(eromptr);
186 static bool bcma_erom_is_bridge(struct bcma_bus *bus, u32 __iomem **eromptr)
188 u32 ent = bcma_erom_get_ent(bus, eromptr);
189 bcma_erom_push_ent(eromptr);
195 static void bcma_erom_skip_component(struct bcma_bus *bus, u32 __iomem **eromptr)
199 ent = bcma_erom_get_ent(bus, eromptr);
206 bcma_erom_push_ent(eromptr);
209 static s32 bcma_erom_get_mst_port(struct bcma_bus *bus, u32 __iomem **eromptr)
211 u32 ent = bcma_erom_get_ent(bus, eromptr);
219 static u32 bcma_erom_get_addr_desc(struct bcma_bus *bus, u32 __iomem **eromptr,
225 u32 ent = bcma_erom_get_ent(bus, eromptr);
230 bcma_erom_push_ent(eromptr);
236 bcma_erom_get_ent(bus, eromptr);
239 size = bcma_erom_get_ent(bus, eromptr);
241 bcma_erom_get_ent(bus, eromptr);
272 static int bcma_get_next_core(struct bcma_bus *bus, u32 __iomem **eromptr,
282 cia = bcma_erom_get_ci(bus, eromptr);
284 bcma_erom_push_ent(eromptr);
285 if (bcma_erom_is_end(bus, eromptr))
289 cib = bcma_erom_get_ci(bus, eromptr);
306 bcma_erom_skip_component(bus, eromptr);
321 bcma_erom_skip_component(bus, eromptr);
326 if (bcma_erom_is_bridge(bus, eromptr)) {
327 bcma_erom_skip_component(bus, eromptr);
332 bcma_erom_skip_component(bus, eromptr);
342 bcma_erom_skip_component(bus, eromptr);
348 s32 mst_port_d = bcma_erom_get_mst_port(bus, eromptr);
356 tmp = bcma_erom_get_addr_desc(bus, eromptr, SCAN_ADDR_TYPE_SLAVE, 0);
359 tmp = bcma_erom_get_addr_desc(bus, eromptr,
374 tmp = bcma_erom_get_addr_desc(bus, eromptr,
391 tmp = bcma_erom_get_addr_desc(bus, eromptr,
409 tmp = bcma_erom_get_addr_desc(bus, eromptr,
460 u32 __iomem *eromptr, *eromend;
470 eromptr = ioremap(erombase, BCMA_CORE_SIZE);
471 if (!eromptr)
474 eromptr = bus->mmio;
477 eromend = eromptr + BCMA_CORE_SIZE / sizeof(u32);
481 while (eromptr < eromend) {
491 err = bcma_get_next_core(bus, &eromptr, NULL, core_num, core);
522 iounmap(eromptr);