Lines Matching refs:sas_expander

67 	struct _sas_node *sas_expander);
1553 struct _sas_node *sas_expander, *r; in mpt3sas_scsih_expander_find_by_handle() local
1556 list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { in mpt3sas_scsih_expander_find_by_handle()
1557 if (sas_expander->handle != handle) in mpt3sas_scsih_expander_find_by_handle()
1559 r = sas_expander; in mpt3sas_scsih_expander_find_by_handle()
1604 struct _sas_node *sas_expander, *r = NULL; in mpt3sas_scsih_expander_find_by_sas_address() local
1609 list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { in mpt3sas_scsih_expander_find_by_sas_address()
1610 if (sas_expander->sas_address != sas_address) in mpt3sas_scsih_expander_find_by_sas_address()
1612 if (sas_expander->port != port) in mpt3sas_scsih_expander_find_by_sas_address()
1614 r = sas_expander; in mpt3sas_scsih_expander_find_by_sas_address()
1631 struct _sas_node *sas_expander) in _scsih_expander_node_add() argument
1636 list_add_tail(&sas_expander->list, &ioc->sas_expander_list); in _scsih_expander_node_add()
3962 struct _sas_node *sas_expander) in _scsih_block_io_to_children_attached_to_ex() argument
3969 if (!sas_expander) in _scsih_block_io_to_children_attached_to_ex()
3973 &sas_expander->sas_port_list, port_list) { in _scsih_block_io_to_children_attached_to_ex()
3990 &sas_expander->sas_port_list, port_list) { in _scsih_block_io_to_children_attached_to_ex()
4661 struct _sas_node *sas_expander; in _scsih_check_topo_delete_events() local
4685 sas_expander = mpt3sas_scsih_expander_find_by_handle(ioc, in _scsih_check_topo_delete_events()
4687 _scsih_block_io_to_children_attached_to_ex(ioc, sas_expander); in _scsih_check_topo_delete_events()
6885 struct _sas_node *sas_expander; in _scsih_expander_add() local
6933 sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, in _scsih_expander_add()
6937 if (!sas_expander) { in _scsih_expander_add()
6946 sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, in _scsih_expander_add()
6950 if (sas_expander) in _scsih_expander_add()
6953 sas_expander = kzalloc(sizeof(struct _sas_node), in _scsih_expander_add()
6955 if (!sas_expander) { in _scsih_expander_add()
6961 sas_expander->handle = handle; in _scsih_expander_add()
6962 sas_expander->num_phys = expander_pg0.NumPhys; in _scsih_expander_add()
6963 sas_expander->sas_address_parent = sas_address_parent; in _scsih_expander_add()
6964 sas_expander->sas_address = sas_address; in _scsih_expander_add()
6965 sas_expander->port = mpt3sas_get_port_by_id(ioc, port_id, 0); in _scsih_expander_add()
6966 if (!sas_expander->port) { in _scsih_expander_add()
6975 (u64)sas_expander->sas_address, sas_expander->num_phys); in _scsih_expander_add()
6977 if (!sas_expander->num_phys) { in _scsih_expander_add()
6981 sas_expander->phy = kcalloc(sas_expander->num_phys, in _scsih_expander_add()
6983 if (!sas_expander->phy) { in _scsih_expander_add()
6990 INIT_LIST_HEAD(&sas_expander->sas_port_list); in _scsih_expander_add()
6992 sas_address_parent, sas_expander->port); in _scsih_expander_add()
6999 sas_expander->parent_dev = &mpt3sas_port->rphy->dev; in _scsih_expander_add()
7000 sas_expander->rphy = mpt3sas_port->rphy; in _scsih_expander_add()
7002 for (i = 0 ; i < sas_expander->num_phys ; i++) { in _scsih_expander_add()
7010 sas_expander->phy[i].handle = handle; in _scsih_expander_add()
7011 sas_expander->phy[i].phy_id = i; in _scsih_expander_add()
7012 sas_expander->phy[i].port = in _scsih_expander_add()
7016 &sas_expander->phy[i], expander_pg1, in _scsih_expander_add()
7017 sas_expander->parent_dev))) { in _scsih_expander_add()
7025 if (sas_expander->enclosure_handle) { in _scsih_expander_add()
7028 sas_expander->enclosure_handle); in _scsih_expander_add()
7030 sas_expander->enclosure_logical_id = in _scsih_expander_add()
7034 _scsih_expander_node_add(ioc, sas_expander); in _scsih_expander_add()
7040 mpt3sas_transport_port_remove(ioc, sas_expander->sas_address, in _scsih_expander_add()
7041 sas_address_parent, sas_expander->port); in _scsih_expander_add()
7042 kfree(sas_expander); in _scsih_expander_add()
7056 struct _sas_node *sas_expander; in mpt3sas_expander_remove() local
7066 sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, in mpt3sas_expander_remove()
7069 if (sas_expander) in mpt3sas_expander_remove()
7070 _scsih_expander_node_remove(ioc, sas_expander); in mpt3sas_expander_remove()
7588 struct _sas_node *sas_expander; in _scsih_sas_topology_change_event() local
7622 sas_expander = mpt3sas_scsih_expander_find_by_handle(ioc, in _scsih_sas_topology_change_event()
7624 if (sas_expander) { in _scsih_sas_topology_change_event()
7625 sas_address = sas_expander->sas_address; in _scsih_sas_topology_change_event()
7626 max_phys = sas_expander->num_phys; in _scsih_sas_topology_change_event()
7627 port = sas_expander->port; in _scsih_sas_topology_change_event()
7703 sas_expander) in _scsih_sas_topology_change_event()
10138 struct _sas_node *sas_expander = NULL; in _scsih_mark_responding_expander() local
10154 list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { in _scsih_mark_responding_expander()
10155 if (sas_expander->sas_address != sas_address) in _scsih_mark_responding_expander()
10157 if (sas_expander->port != port) in _scsih_mark_responding_expander()
10159 sas_expander->responding = 1; in _scsih_mark_responding_expander()
10162 sas_expander->enclosure_logical_id = in _scsih_mark_responding_expander()
10164 sas_expander->enclosure_handle = in _scsih_mark_responding_expander()
10168 if (sas_expander->handle == handle) in _scsih_mark_responding_expander()
10172 (unsigned long long)sas_expander->sas_address, in _scsih_mark_responding_expander()
10173 sas_expander->handle, handle); in _scsih_mark_responding_expander()
10174 sas_expander->handle = handle; in _scsih_mark_responding_expander()
10175 for (i = 0 ; i < sas_expander->num_phys ; i++) in _scsih_mark_responding_expander()
10176 sas_expander->phy[i].handle = handle; in _scsih_mark_responding_expander()
10237 struct _sas_node *sas_expander, *sas_expander_next; in _scsih_remove_unresponding_devices() local
10327 list_for_each_entry_safe(sas_expander, sas_expander_next, in _scsih_remove_unresponding_devices()
10329 if (!sas_expander->responding) in _scsih_remove_unresponding_devices()
10330 list_move_tail(&sas_expander->list, &tmp_list); in _scsih_remove_unresponding_devices()
10332 sas_expander->responding = 0; in _scsih_remove_unresponding_devices()
10335 list_for_each_entry_safe(sas_expander, sas_expander_next, &tmp_list, in _scsih_remove_unresponding_devices()
10337 _scsih_expander_node_remove(ioc, sas_expander); in _scsih_remove_unresponding_devices()
10348 struct _sas_node *sas_expander, u16 handle) in _scsih_refresh_expander_links() argument
10354 for (i = 0 ; i < sas_expander->num_phys ; i++) { in _scsih_refresh_expander_links()
10362 mpt3sas_transport_update_links(ioc, sas_expander->sas_address, in _scsih_refresh_expander_links()
10365 sas_expander->port); in _scsih_refresh_expander_links()
11046 struct _sas_node *sas_expander) in _scsih_expander_node_remove() argument
11054 &sas_expander->sas_port_list, port_list) { in _scsih_expander_node_remove()
11071 port_id = sas_expander->port->port_id; in _scsih_expander_node_remove()
11073 mpt3sas_transport_port_remove(ioc, sas_expander->sas_address, in _scsih_expander_node_remove()
11074 sas_expander->sas_address_parent, sas_expander->port); in _scsih_expander_node_remove()
11078 sas_expander->handle, (unsigned long long) in _scsih_expander_node_remove()
11079 sas_expander->sas_address, in _scsih_expander_node_remove()
11083 list_del(&sas_expander->list); in _scsih_expander_node_remove()
11086 kfree(sas_expander->phy); in _scsih_expander_node_remove()
11087 kfree(sas_expander); in _scsih_expander_node_remove()