Lines Matching refs:sas_expander

68 	struct _sas_node *sas_expander);
1554 struct _sas_node *sas_expander, *r; in mpt3sas_scsih_expander_find_by_handle() local
1557 list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { in mpt3sas_scsih_expander_find_by_handle()
1558 if (sas_expander->handle != handle) in mpt3sas_scsih_expander_find_by_handle()
1560 r = sas_expander; in mpt3sas_scsih_expander_find_by_handle()
1605 struct _sas_node *sas_expander, *r = NULL; in mpt3sas_scsih_expander_find_by_sas_address() local
1610 list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { in mpt3sas_scsih_expander_find_by_sas_address()
1611 if (sas_expander->sas_address != sas_address) in mpt3sas_scsih_expander_find_by_sas_address()
1613 if (sas_expander->port != port) in mpt3sas_scsih_expander_find_by_sas_address()
1615 r = sas_expander; in mpt3sas_scsih_expander_find_by_sas_address()
1632 struct _sas_node *sas_expander) in _scsih_expander_node_add() argument
1637 list_add_tail(&sas_expander->list, &ioc->sas_expander_list); in _scsih_expander_node_add()
3963 struct _sas_node *sas_expander) in _scsih_block_io_to_children_attached_to_ex() argument
3970 if (!sas_expander) in _scsih_block_io_to_children_attached_to_ex()
3974 &sas_expander->sas_port_list, port_list) { in _scsih_block_io_to_children_attached_to_ex()
3991 &sas_expander->sas_port_list, port_list) { in _scsih_block_io_to_children_attached_to_ex()
4662 struct _sas_node *sas_expander; in _scsih_check_topo_delete_events() local
4686 sas_expander = mpt3sas_scsih_expander_find_by_handle(ioc, in _scsih_check_topo_delete_events()
4688 _scsih_block_io_to_children_attached_to_ex(ioc, sas_expander); in _scsih_check_topo_delete_events()
6886 struct _sas_node *sas_expander; in _scsih_expander_add() local
6934 sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, in _scsih_expander_add()
6938 if (!sas_expander) { in _scsih_expander_add()
6947 sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, in _scsih_expander_add()
6951 if (sas_expander) in _scsih_expander_add()
6954 sas_expander = kzalloc(sizeof(struct _sas_node), in _scsih_expander_add()
6956 if (!sas_expander) { in _scsih_expander_add()
6962 sas_expander->handle = handle; in _scsih_expander_add()
6963 sas_expander->num_phys = expander_pg0.NumPhys; in _scsih_expander_add()
6964 sas_expander->sas_address_parent = sas_address_parent; in _scsih_expander_add()
6965 sas_expander->sas_address = sas_address; in _scsih_expander_add()
6966 sas_expander->port = mpt3sas_get_port_by_id(ioc, port_id, 0); in _scsih_expander_add()
6967 if (!sas_expander->port) { in _scsih_expander_add()
6976 (u64)sas_expander->sas_address, sas_expander->num_phys); in _scsih_expander_add()
6978 if (!sas_expander->num_phys) { in _scsih_expander_add()
6982 sas_expander->phy = kcalloc(sas_expander->num_phys, in _scsih_expander_add()
6984 if (!sas_expander->phy) { in _scsih_expander_add()
6991 INIT_LIST_HEAD(&sas_expander->sas_port_list); in _scsih_expander_add()
6993 sas_address_parent, sas_expander->port); in _scsih_expander_add()
7000 sas_expander->parent_dev = &mpt3sas_port->rphy->dev; in _scsih_expander_add()
7001 sas_expander->rphy = mpt3sas_port->rphy; in _scsih_expander_add()
7003 for (i = 0 ; i < sas_expander->num_phys ; i++) { in _scsih_expander_add()
7011 sas_expander->phy[i].handle = handle; in _scsih_expander_add()
7012 sas_expander->phy[i].phy_id = i; in _scsih_expander_add()
7013 sas_expander->phy[i].port = in _scsih_expander_add()
7017 &sas_expander->phy[i], expander_pg1, in _scsih_expander_add()
7018 sas_expander->parent_dev))) { in _scsih_expander_add()
7026 if (sas_expander->enclosure_handle) { in _scsih_expander_add()
7029 sas_expander->enclosure_handle); in _scsih_expander_add()
7031 sas_expander->enclosure_logical_id = in _scsih_expander_add()
7035 _scsih_expander_node_add(ioc, sas_expander); in _scsih_expander_add()
7041 mpt3sas_transport_port_remove(ioc, sas_expander->sas_address, in _scsih_expander_add()
7042 sas_address_parent, sas_expander->port); in _scsih_expander_add()
7043 kfree(sas_expander); in _scsih_expander_add()
7057 struct _sas_node *sas_expander; in mpt3sas_expander_remove() local
7067 sas_expander = mpt3sas_scsih_expander_find_by_sas_address(ioc, in mpt3sas_expander_remove()
7070 if (sas_expander) in mpt3sas_expander_remove()
7071 _scsih_expander_node_remove(ioc, sas_expander); in mpt3sas_expander_remove()
7589 struct _sas_node *sas_expander; in _scsih_sas_topology_change_event() local
7623 sas_expander = mpt3sas_scsih_expander_find_by_handle(ioc, in _scsih_sas_topology_change_event()
7625 if (sas_expander) { in _scsih_sas_topology_change_event()
7626 sas_address = sas_expander->sas_address; in _scsih_sas_topology_change_event()
7627 max_phys = sas_expander->num_phys; in _scsih_sas_topology_change_event()
7628 port = sas_expander->port; in _scsih_sas_topology_change_event()
7704 sas_expander) in _scsih_sas_topology_change_event()
10139 struct _sas_node *sas_expander = NULL; in _scsih_mark_responding_expander() local
10155 list_for_each_entry(sas_expander, &ioc->sas_expander_list, list) { in _scsih_mark_responding_expander()
10156 if (sas_expander->sas_address != sas_address) in _scsih_mark_responding_expander()
10158 if (sas_expander->port != port) in _scsih_mark_responding_expander()
10160 sas_expander->responding = 1; in _scsih_mark_responding_expander()
10163 sas_expander->enclosure_logical_id = in _scsih_mark_responding_expander()
10165 sas_expander->enclosure_handle = in _scsih_mark_responding_expander()
10169 if (sas_expander->handle == handle) in _scsih_mark_responding_expander()
10173 (unsigned long long)sas_expander->sas_address, in _scsih_mark_responding_expander()
10174 sas_expander->handle, handle); in _scsih_mark_responding_expander()
10175 sas_expander->handle = handle; in _scsih_mark_responding_expander()
10176 for (i = 0 ; i < sas_expander->num_phys ; i++) in _scsih_mark_responding_expander()
10177 sas_expander->phy[i].handle = handle; in _scsih_mark_responding_expander()
10238 struct _sas_node *sas_expander, *sas_expander_next; in _scsih_remove_unresponding_devices() local
10328 list_for_each_entry_safe(sas_expander, sas_expander_next, in _scsih_remove_unresponding_devices()
10330 if (!sas_expander->responding) in _scsih_remove_unresponding_devices()
10331 list_move_tail(&sas_expander->list, &tmp_list); in _scsih_remove_unresponding_devices()
10333 sas_expander->responding = 0; in _scsih_remove_unresponding_devices()
10336 list_for_each_entry_safe(sas_expander, sas_expander_next, &tmp_list, in _scsih_remove_unresponding_devices()
10338 _scsih_expander_node_remove(ioc, sas_expander); in _scsih_remove_unresponding_devices()
10349 struct _sas_node *sas_expander, u16 handle) in _scsih_refresh_expander_links() argument
10355 for (i = 0 ; i < sas_expander->num_phys ; i++) { in _scsih_refresh_expander_links()
10363 mpt3sas_transport_update_links(ioc, sas_expander->sas_address, in _scsih_refresh_expander_links()
10366 sas_expander->port); in _scsih_refresh_expander_links()
11047 struct _sas_node *sas_expander) in _scsih_expander_node_remove() argument
11055 &sas_expander->sas_port_list, port_list) { in _scsih_expander_node_remove()
11072 port_id = sas_expander->port->port_id; in _scsih_expander_node_remove()
11074 mpt3sas_transport_port_remove(ioc, sas_expander->sas_address, in _scsih_expander_node_remove()
11075 sas_expander->sas_address_parent, sas_expander->port); in _scsih_expander_node_remove()
11079 sas_expander->handle, (unsigned long long) in _scsih_expander_node_remove()
11080 sas_expander->sas_address, in _scsih_expander_node_remove()
11084 list_del(&sas_expander->list); in _scsih_expander_node_remove()
11087 kfree(sas_expander->phy); in _scsih_expander_node_remove()
11088 kfree(sas_expander); in _scsih_expander_node_remove()