Lines Matching refs:asd_ha

70 	struct asd_ha_struct *asd_ha = ascb->ha;  in asd_phy_event_tasklet()  local
72 struct asd_phy *phy = &asd_ha->phys[phy_id]; in asd_phy_event_tasklet()
81 asd_turn_led(asd_ha, phy_id, 0); in asd_phy_event_tasklet()
87 asd_turn_led(asd_ha, phy_id, 1); in asd_phy_event_tasklet()
95 asd_turn_led(asd_ha, phy_id, 1); in asd_phy_event_tasklet()
102 asd_turn_led(asd_ha, phy_id, 0); in asd_phy_event_tasklet()
110 static unsigned ord_phy(struct asd_ha_struct *asd_ha, struct asd_phy *phy) in ord_phy() argument
112 u8 enabled_mask = asd_ha->hw_prof.enabled_phys; in ord_phy()
116 if (&asd_ha->phys[i] == phy) in ord_phy()
139 struct asd_ha_struct *asd_ha = phy->sas_phy.ha->lldd_ha; in asd_get_attached_sas_addr() local
143 addr += asd_ha->hw_prof.sata_name_base + ord_phy(asd_ha, phy); in asd_get_attached_sas_addr()
152 static void asd_form_port(struct asd_ha_struct *asd_ha, struct asd_phy *phy) in asd_form_port() argument
160 spin_lock_irqsave(&asd_ha->asd_ports_lock, flags); in asd_form_port()
163 port = &asd_ha->asd_ports[i]; in asd_form_port()
197 asd_update_port_links(asd_ha, phy); in asd_form_port()
198 spin_unlock_irqrestore(&asd_ha->asd_ports_lock, flags); in asd_form_port()
201 static void asd_deform_port(struct asd_ha_struct *asd_ha, struct asd_phy *phy) in asd_deform_port() argument
207 spin_lock_irqsave(&asd_ha->asd_ports_lock, flags); in asd_deform_port()
213 spin_unlock_irqrestore(&asd_ha->asd_ports_lock, flags); in asd_deform_port()
242 struct asd_ha_struct *asd_ha = ascb->ha; in asd_link_reset_err_tasklet() local
243 struct sas_ha_struct *sas_ha = &asd_ha->sas_ha; in asd_link_reset_err_tasklet()
245 struct asd_phy *phy = &asd_ha->phys[phy_id]; in asd_link_reset_err_tasklet()
268 asd_turn_led(asd_ha, phy_id, 0); in asd_link_reset_err_tasklet()
270 asd_deform_port(asd_ha, phy); in asd_link_reset_err_tasklet()
298 struct asd_ha_struct *asd_ha = ascb->ha; in asd_primitive_rcvd_tasklet() local
299 struct asd_phy *phy = &asd_ha->phys[phy_id]; in asd_primitive_rcvd_tasklet()
336 asd_deform_port(asd_ha, phy); in asd_primitive_rcvd_tasklet()
398 struct asd_ha_struct *asd_ha = ascb->ha; in escb_tasklet_complete() local
399 struct sas_ha_struct *sas_ha = &asd_ha->sas_ha; in escb_tasklet_complete()
404 struct asd_phy *phy = &asd_ha->phys[phy_id]; in escb_tasklet_complete()
440 list_for_each_entry_safe(a, b, &asd_ha->seq.pend_q, list) { in escb_tasklet_complete()
466 list_for_each_entry_safe(a, b, &asd_ha->seq.pend_q, list) { in escb_tasklet_complete()
490 list_for_each_entry(a, &asd_ha->seq.pend_q, list) { in escb_tasklet_complete()
516 list_for_each_entry(a, &asd_ha->seq.pend_q, list) { in escb_tasklet_complete()
564 asd_turn_led(asd_ha, phy_id, 0); in escb_tasklet_complete()
567 asd_deform_port(asd_ha, phy); in escb_tasklet_complete()
593 int asd_init_post_escbs(struct asd_ha_struct *asd_ha) in asd_init_post_escbs() argument
595 struct asd_seq_data *seq = &asd_ha->seq; in asd_init_post_escbs()
602 return asd_post_escb_list(asd_ha, seq->escb_arr[0], seq->num_escbs); in asd_init_post_escbs()
625 struct asd_ha_struct *asd_ha = ascb->ha; in control_phy_tasklet_complete() local
644 asd_ha->hw_prof.enabled_phys &= ~(1 << phy_id); in control_phy_tasklet_complete()
645 asd_turn_led(asd_ha, phy_id, 0); in control_phy_tasklet_complete()
646 asd_control_led(asd_ha, phy_id, 0); in control_phy_tasklet_complete()
651 asd_control_led(asd_ha, phy_id, 1); in control_phy_tasklet_complete()
653 asd_ha->hw_prof.enabled_phys |= (1 << phy_id); in control_phy_tasklet_complete()
655 asd_turn_led(asd_ha, phy_id, 1); in control_phy_tasklet_complete()
660 asd_ha->hw_prof.enabled_phys |= (1 << phy_id); in control_phy_tasklet_complete()
661 asd_turn_led(asd_ha, phy_id, 1); in control_phy_tasklet_complete()
665 asd_turn_led(asd_ha, phy_id, 0); in control_phy_tasklet_complete()
670 asd_ha->hw_prof.enabled_phys |= (1 << phy_id); in control_phy_tasklet_complete()
671 asd_turn_led(asd_ha, phy_id, 1); in control_phy_tasklet_complete()
675 asd_ha->hw_prof.enabled_phys |= (1 << phy_id); in control_phy_tasklet_complete()
676 asd_turn_led(asd_ha, phy_id, 0); in control_phy_tasklet_complete()
886 struct asd_ha_struct *asd_ha = phy->ha->lldd_ha; in asd_control_phy() local
887 struct asd_phy_desc *pd = asd_ha->phys[phy->id].phy_desc; in asd_control_phy()
912 ascb = asd_ascb_alloc_list(asd_ha, &res, GFP_KERNEL); in asd_control_phy()
917 res = asd_post_ascb_list(asd_ha, ascb , 1); in asd_control_phy()