Lines Matching refs:adapter

53 static void vsc_read(adapter_t *adapter, u32 addr, u32 *val)  in vsc_read()  argument
58 MAC_LOCK(adapter->mac_lock); in vsc_read()
59 (void) t1_tpi_read(adapter, (addr << 2) + 4, &vlo); in vsc_read()
62 (void) t1_tpi_read(adapter, (REG_LOCAL_STATUS << 2) + 4, &vlo); in vsc_read()
63 (void) t1_tpi_read(adapter, REG_LOCAL_STATUS << 2, &vhi); in vsc_read()
70 (void) t1_tpi_read(adapter, (REG_LOCAL_DATA << 2) + 4, &vlo); in vsc_read()
71 (void) t1_tpi_read(adapter, REG_LOCAL_DATA << 2, &vhi); in vsc_read()
78 MAC_UNLOCK(adapter->mac_lock); in vsc_read()
81 static void vsc_write(adapter_t *adapter, u32 addr, u32 data) in vsc_write() argument
83 MAC_LOCK(adapter->mac_lock); in vsc_write()
84 (void) t1_tpi_write(adapter, (addr << 2) + 4, data & 0xFFFF); in vsc_write()
85 (void) t1_tpi_write(adapter, addr << 2, (data >> 16) & 0xFFFF); in vsc_write()
89 MAC_UNLOCK(adapter->mac_lock); in vsc_write()
93 static void vsc7326_full_reset(adapter_t* adapter) in vsc7326_full_reset() argument
98 (void) t1_tpi_read(adapter, A_ELMER0_GPO, &val); in vsc7326_full_reset()
100 (void) t1_tpi_write(adapter, A_ELMER0_GPO, val); in vsc7326_full_reset()
104 (void) t1_tpi_write(adapter, A_ELMER0_GPO, val); in vsc7326_full_reset()
106 vsc_write(adapter, REG_SW_RESET, 0x80000001); in vsc7326_full_reset()
109 vsc_read(adapter, REG_SW_RESET, &result); in vsc7326_full_reset()
238 static void run_table(adapter_t *adapter, struct init_table *ib, int len) in run_table() argument
247 vsc_write( adapter, ib[i].addr, ib[i].data ); in run_table()
252 static int bist_rd(adapter_t *adapter, int moduleid, int address) in bist_rd() argument
266 vsc_write(adapter, REG_RAM_BIST_CMD, data); in bist_rd()
270 vsc_read(adapter, REG_RAM_BIST_RESULT, &result); in bist_rd()
279 static int bist_wr(adapter_t *adapter, int moduleid, int address, int value) in bist_wr() argument
296 vsc_write(adapter, REG_RAM_BIST_CMD, data); in bist_wr()
300 vsc_read(adapter, REG_RAM_BIST_CMD, &result); in bist_wr()
309 static int run_bist(adapter_t *adapter, int moduleid) in run_bist() argument
312 (void) bist_wr(adapter,moduleid, 0x00, 0x02); in run_bist()
313 (void) bist_wr(adapter,moduleid, 0x01, 0x01); in run_bist()
318 static int check_bist(adapter_t *adapter, int moduleid) in check_bist() argument
323 result = bist_rd(adapter,moduleid, 0x02); in check_bist()
324 column = ((bist_rd(adapter,moduleid, 0x0e)<<8) + in check_bist()
325 (bist_rd(adapter,moduleid, 0x0d))); in check_bist()
332 static int enable_mem(adapter_t *adapter, int moduleid) in enable_mem() argument
335 (void) bist_wr(adapter,moduleid, 0x00, 0x00); in enable_mem()
339 static int run_bist_all(adapter_t *adapter) in run_bist_all() argument
344 vsc_write(adapter, REG_MEM_BIST, 0x5); in run_bist_all()
345 vsc_read(adapter, REG_MEM_BIST, &val); in run_bist_all()
348 vsc_write(adapter, REG_DEV_SETUP(port), 0x0); in run_bist_all()
352 vsc_write(adapter, REG_SPI4_MISC, 0x00040409); in run_bist_all()
355 (void) run_bist(adapter,13); in run_bist_all()
356 (void) run_bist(adapter,14); in run_bist_all()
357 (void) run_bist(adapter,20); in run_bist_all()
358 (void) run_bist(adapter,21); in run_bist_all()
360 (void) check_bist(adapter,13); in run_bist_all()
361 (void) check_bist(adapter,14); in run_bist_all()
362 (void) check_bist(adapter,20); in run_bist_all()
363 (void) check_bist(adapter,21); in run_bist_all()
365 (void) enable_mem(adapter,13); in run_bist_all()
366 (void) enable_mem(adapter,14); in run_bist_all()
367 (void) enable_mem(adapter,20); in run_bist_all()
368 (void) enable_mem(adapter,21); in run_bist_all()
370 vsc_write(adapter, REG_SPI4_MISC, 0x60040400); in run_bist_all()
373 vsc_write(adapter, REG_DEV_SETUP(port), 0x1); in run_bist_all()
376 vsc_write(adapter, REG_MEM_BIST, 0x0); in run_bist_all()
411 vsc_write(mac->adapter, REG_MAC_LOW_ADDR(port), in mac_set_address()
413 vsc_write(mac->adapter, REG_MAC_HIGH_ADDR(port), in mac_set_address()
416 vsc_read(mac->adapter, REG_ING_FFILT_UM_EN, &val); in mac_set_address()
418 vsc_write(mac->adapter, REG_ING_FFILT_UM_EN, val | (port << 28)); in mac_set_address()
420 vsc_write(mac->adapter, REG_ING_FFILT_MASK0, in mac_set_address()
422 vsc_write(mac->adapter, REG_ING_FFILT_MASK1, in mac_set_address()
424 vsc_write(mac->adapter, REG_ING_FFILT_MASK2, in mac_set_address()
434 vsc_read(mac->adapter, REG_MAC_LOW_ADDR(port), &addr_lo); in mac_get_address()
435 vsc_read(mac->adapter, REG_MAC_HIGH_ADDR(port), &addr_hi); in mac_get_address()
451 run_table(mac->adapter, vsc7326_portinit[index], in mac_reset()
462 vsc_read(mac->adapter, REG_ING_FFILT_UM_EN, &v); in mac_set_rx_mode()
470 vsc_write(mac->adapter, REG_ING_FFILT_UM_EN, v); in mac_set_rx_mode()
482 vsc_write(mac->adapter, REG_MAX_LEN(port), mtu + 14 + 4); in mac_set_mtu()
499 vsc_read(mac->adapter, REG_MODE_CFG(port), &v); in mac_set_speed_duplex_fc()
506 vsc_write(mac->adapter, REG_MODE_CFG(port), v); in mac_set_speed_duplex_fc()
514 vsc_write(mac->adapter, REG_DEV_SETUP(port), v | 1); /* reset */ in mac_set_speed_duplex_fc()
515 vsc_write(mac->adapter, REG_DEV_SETUP(port), v); in mac_set_speed_duplex_fc()
516 vsc_read(mac->adapter, REG_DBG(port), &v); in mac_set_speed_duplex_fc()
524 vsc_write(mac->adapter, REG_DBG(port), v); in mac_set_speed_duplex_fc()
526 vsc_write(mac->adapter, REG_TX_IFG(port), in mac_set_speed_duplex_fc()
538 vsc_write(mac->adapter, REG_MODE_CFG(port), enable); in mac_set_speed_duplex_fc()
542 vsc_read(mac->adapter, REG_PAUSE_CFG(port), &v); in mac_set_speed_duplex_fc()
551 vsc_write(mac->adapter, REG_PAUSE_CFG(port), v); in mac_set_speed_duplex_fc()
560 vsc_read(mac->adapter, REG_MODE_CFG(port), &val); in mac_enable()
565 vsc_write(mac->adapter, REG_MODE_CFG(port), val); in mac_enable()
577 vsc_read(mac->adapter, REG_MODE_CFG(port), &val); in mac_disable()
582 vsc_write(mac->adapter, REG_MODE_CFG(port), val); in mac_disable()
583 vsc_read(mac->adapter, REG_MODE_CFG(port), &val); in mac_disable()
587 vsc_write(mac->adapter, CRA(4, port, i), 0); in mac_disable()
599 vsc_read(mac->adapter, addr, &v); in rmon_update()
722 static struct cmac *vsc7326_mac_create(adapter_t *adapter, int index) in vsc7326_mac_create() argument
733 mac->adapter = adapter; in vsc7326_mac_create()
743 (void) t1_tpi_read(adapter, (REG_LOCAL_STATUS << 2) + 4, &vlo); in vsc7326_mac_create()
745 (void) t1_tpi_read(adapter, REG_LOCAL_STATUS << 2, &vhi); in vsc7326_mac_create()
753 static int vsc7326_mac_reset(adapter_t *adapter) in vsc7326_mac_reset() argument
755 vsc7326_full_reset(adapter); in vsc7326_mac_reset()
756 (void) run_bist_all(adapter); in vsc7326_mac_reset()
757 run_table(adapter, vsc7326_reset, DIMOF(vsc7326_reset)); in vsc7326_mac_reset()