Lines Matching refs:ps

29 	struct mv88e6xxx_priv_state *ps = ds_to_priv(ds);  in assert_smi_lock()  local
31 if (unlikely(!mutex_is_locked(&ps->smi_mutex))) { in assert_smi_lock()
116 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_reg_read() local
119 mutex_lock(&ps->smi_mutex); in mv88e6xxx_reg_read()
121 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_reg_read()
176 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_reg_write() local
179 mutex_lock(&ps->smi_mutex); in mv88e6xxx_reg_write()
181 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_reg_write()
279 struct mv88e6xxx_priv_state *ps; in mv88e6xxx_ppu_reenable_work() local
281 ps = container_of(ugly, struct mv88e6xxx_priv_state, ppu_work); in mv88e6xxx_ppu_reenable_work()
282 if (mutex_trylock(&ps->ppu_mutex)) { in mv88e6xxx_ppu_reenable_work()
283 struct dsa_switch *ds = ((struct dsa_switch *)ps) - 1; in mv88e6xxx_ppu_reenable_work()
286 ps->ppu_disabled = 0; in mv88e6xxx_ppu_reenable_work()
287 mutex_unlock(&ps->ppu_mutex); in mv88e6xxx_ppu_reenable_work()
293 struct mv88e6xxx_priv_state *ps = (void *)_ps; in mv88e6xxx_ppu_reenable_timer() local
295 schedule_work(&ps->ppu_work); in mv88e6xxx_ppu_reenable_timer()
300 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_ppu_access_get() local
303 mutex_lock(&ps->ppu_mutex); in mv88e6xxx_ppu_access_get()
310 if (!ps->ppu_disabled) { in mv88e6xxx_ppu_access_get()
313 mutex_unlock(&ps->ppu_mutex); in mv88e6xxx_ppu_access_get()
316 ps->ppu_disabled = 1; in mv88e6xxx_ppu_access_get()
318 del_timer(&ps->ppu_timer); in mv88e6xxx_ppu_access_get()
327 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_ppu_access_put() local
330 mod_timer(&ps->ppu_timer, jiffies + msecs_to_jiffies(10)); in mv88e6xxx_ppu_access_put()
331 mutex_unlock(&ps->ppu_mutex); in mv88e6xxx_ppu_access_put()
336 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_ppu_state_init() local
338 mutex_init(&ps->ppu_mutex); in mv88e6xxx_ppu_state_init()
339 INIT_WORK(&ps->ppu_work, mv88e6xxx_ppu_reenable_work); in mv88e6xxx_ppu_state_init()
340 init_timer(&ps->ppu_timer); in mv88e6xxx_ppu_state_init()
341 ps->ppu_timer.data = (unsigned long)ps; in mv88e6xxx_ppu_state_init()
342 ps->ppu_timer.function = mv88e6xxx_ppu_reenable_timer; in mv88e6xxx_ppu_state_init()
375 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6065_family() local
377 switch (ps->id) { in mv88e6xxx_6065_family()
389 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6095_family() local
391 switch (ps->id) { in mv88e6xxx_6095_family()
401 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6097_family() local
403 switch (ps->id) { in mv88e6xxx_6097_family()
415 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6165_family() local
417 switch (ps->id) { in mv88e6xxx_6165_family()
428 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6185_family() local
430 switch (ps->id) { in mv88e6xxx_6185_family()
446 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6320_family() local
448 switch (ps->id) { in mv88e6xxx_6320_family()
458 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6351_family() local
460 switch (ps->id) { in mv88e6xxx_6351_family()
472 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_6352_family() local
474 switch (ps->id) { in mv88e6xxx_6352_family()
491 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_adjust_link() local
498 mutex_lock(&ps->smi_mutex); in mv88e6xxx_adjust_link()
537 (port >= ps->num_ports - 2)) { in mv88e6xxx_adjust_link()
549 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_adjust_link()
658 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in have_sw_in_discards() local
660 switch (ps->id) { in have_sw_in_discards()
724 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in _mv88e6xxx_get_ethtool_stats() local
728 mutex_lock(&ps->smi_mutex); in _mv88e6xxx_get_ethtool_stats()
732 mutex_unlock(&ps->smi_mutex); in _mv88e6xxx_get_ethtool_stats()
740 mutex_unlock(&ps->smi_mutex); in _mv88e6xxx_get_ethtool_stats()
821 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_wait() local
824 mutex_lock(&ps->smi_mutex); in mv88e6xxx_wait()
826 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_wait()
891 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_get_eee() local
894 mutex_lock(&ps->smi_mutex); in mv88e6xxx_get_eee()
911 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_get_eee()
918 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_set_eee() local
922 mutex_lock(&ps->smi_mutex); in mv88e6xxx_set_eee()
936 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_set_eee()
1043 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_set_port_state() local
1047 mutex_lock(&ps->smi_mutex); in mv88e6xxx_set_port_state()
1073 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_set_port_state()
1080 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in _mv88e6xxx_port_vlan_map_set() local
1081 const u16 mask = (1 << ps->num_ports) - 1; in _mv88e6xxx_port_vlan_map_set()
1096 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_stp_update() local
1121 ps->port_state[port] = stp_state; in mv88e6xxx_port_stp_update()
1122 set_bit(port, &ps->port_state_update_mask); in mv88e6xxx_port_stp_update()
1123 schedule_work(&ps->bridge_work); in mv88e6xxx_port_stp_update()
1192 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in _mv88e6xxx_vtu_stu_data_read() local
1206 for (i = 0; i < ps->num_ports; ++i) { in _mv88e6xxx_vtu_stu_data_read()
1220 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in _mv88e6xxx_vtu_stu_data_write() local
1225 for (i = 0; i < ps->num_ports; ++i) { in _mv88e6xxx_vtu_stu_data_write()
1413 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in _mv88e6xxx_vlan_init() local
1422 for (i = 0; i < ps->num_ports; ++i) in _mv88e6xxx_vlan_init()
1506 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_vlan_add() local
1512 mutex_lock(&ps->smi_mutex); in mv88e6xxx_port_vlan_add()
1524 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_port_vlan_add()
1531 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in _mv88e6xxx_port_vlan_del() local
1551 for (i = 0; i < ps->num_ports; ++i) { in _mv88e6xxx_port_vlan_del()
1571 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_vlan_del() local
1575 mutex_lock(&ps->smi_mutex); in mv88e6xxx_port_vlan_del()
1594 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_port_vlan_del()
1602 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_vlan_getnext() local
1610 mutex_lock(&ps->smi_mutex); in mv88e6xxx_vlan_getnext()
1617 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_vlan_getnext()
1627 for (port = 0; port < ps->num_ports; ++port) { in mv88e6xxx_vlan_getnext()
1739 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_fdb_add() local
1742 mutex_lock(&ps->smi_mutex); in mv88e6xxx_port_fdb_add()
1744 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_port_fdb_add()
1752 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_fdb_del() local
1755 mutex_lock(&ps->smi_mutex); in mv88e6xxx_port_fdb_del()
1758 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_port_fdb_del()
1816 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_fdb_dump() local
1822 mutex_lock(&ps->smi_mutex); in mv88e6xxx_port_fdb_dump()
1872 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_port_fdb_dump()
1879 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_bridge_join() local
1884 mutex_lock(&ps->smi_mutex); in mv88e6xxx_port_bridge_join()
1888 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_port_bridge_join()
1894 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_bridge_leave() local
1899 mutex_lock(&ps->smi_mutex); in mv88e6xxx_port_bridge_leave()
1903 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_port_bridge_leave()
1909 struct mv88e6xxx_priv_state *ps; in mv88e6xxx_bridge_work() local
1913 ps = container_of(work, struct mv88e6xxx_priv_state, bridge_work); in mv88e6xxx_bridge_work()
1914 ds = ((struct dsa_switch *)ps) - 1; in mv88e6xxx_bridge_work()
1916 while (ps->port_state_update_mask) { in mv88e6xxx_bridge_work()
1917 port = __ffs(ps->port_state_update_mask); in mv88e6xxx_bridge_work()
1918 clear_bit(port, &ps->port_state_update_mask); in mv88e6xxx_bridge_work()
1919 mv88e6xxx_set_port_state(ds, port, ps->port_state[port]); in mv88e6xxx_bridge_work()
1925 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_setup_port() local
1929 mutex_lock(&ps->smi_mutex); in mv88e6xxx_setup_port()
2152 reg = BIT(ps->num_ports) - 1; /* all ports */ in mv88e6xxx_setup_port()
2163 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_setup_port()
2169 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_setup_ports() local
2173 for (i = 0; i < ps->num_ports; i++) { in mv88e6xxx_setup_ports()
2191 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_setup_common() local
2193 mutex_init(&ps->smi_mutex); in mv88e6xxx_setup_common()
2195 ps->id = REG_READ(REG_PORT(0), PORT_SWITCH_ID) & 0xfff0; in mv88e6xxx_setup_common()
2197 INIT_WORK(&ps->bridge_work, mv88e6xxx_bridge_work); in mv88e6xxx_setup_common()
2204 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_setup_global() local
2260 ((1 << ps->num_ports) - 1)); in mv88e6xxx_setup_global()
2295 for (i = 0; i < ps->num_ports; i++) in mv88e6xxx_setup_global()
2304 mutex_lock(&ps->smi_mutex); in mv88e6xxx_setup_global()
2317 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_setup_global()
2324 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_switch_reset() local
2331 for (i = 0; i < ps->num_ports; i++) { in mv88e6xxx_switch_reset()
2364 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_phy_page_read() local
2367 mutex_lock(&ps->smi_mutex); in mv88e6xxx_phy_page_read()
2374 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_phy_page_read()
2381 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_phy_page_write() local
2384 mutex_lock(&ps->smi_mutex); in mv88e6xxx_phy_page_write()
2392 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_phy_page_write()
2398 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_port_to_phy_addr() local
2400 if (port >= 0 && port < ps->num_ports) in mv88e6xxx_port_to_phy_addr()
2408 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_phy_read() local
2415 mutex_lock(&ps->smi_mutex); in mv88e6xxx_phy_read()
2417 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_phy_read()
2424 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_phy_write() local
2431 mutex_lock(&ps->smi_mutex); in mv88e6xxx_phy_write()
2433 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_phy_write()
2440 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_phy_read_indirect() local
2447 mutex_lock(&ps->smi_mutex); in mv88e6xxx_phy_read_indirect()
2449 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_phy_read_indirect()
2457 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e6xxx_phy_write_indirect() local
2464 mutex_lock(&ps->smi_mutex); in mv88e6xxx_phy_write_indirect()
2466 mutex_unlock(&ps->smi_mutex); in mv88e6xxx_phy_write_indirect()
2474 struct mv88e6xxx_priv_state *ps = ds_to_priv(ds); in mv88e61xx_get_temp() local
2480 mutex_lock(&ps->smi_mutex); in mv88e61xx_get_temp()
2513 mutex_unlock(&ps->smi_mutex); in mv88e61xx_get_temp()