uint16_t alpha_pci_io_bwx_inw(bus_addr_t ioaddr) { struct alpha_bus_window *abw = alpha_pci_io_findwindow(ioaddr); /* LINTED */ uint16_t *port = (uint16_t *) ((char *)abw->abw_addr + (ioaddr - abw->abw_abst.abst_bus_start)); alpha_mb(); return (alpha_ldwu(port)); }
static inline uint16_t __C(CHIP,_mem_read_2)( void *v, bus_space_handle_t memh, bus_size_t off) { bus_addr_t addr; addr = memh + off; #ifdef DIAGNOSTIC if (addr & 1) panic(__S(__C(CHIP,_mem_read_2)) ": addr 0x%lx not aligned", addr); #endif alpha_mb(); return (alpha_ldwu((uint16_t *)addr)); }