mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 05:04:02 +02:00
scsi: libsas: Add sas_ex_phy_to_dev() helper
Add sas_ex_phy_to_dev() to return any device type attached to an expander phy, and refactor sas_ex_to_ata() to use it. No functional changes intended. Signed-off-by: Xingui Yang <yangxingui@huawei.com> Reviewed-by: John Garry <john.g.garry@oracle.com> Link: https://patch.msgid.link/20260811040334.4184911-2-yangxingui@huawei.com Signed-off-by: Martin K. Petersen (Oracle) <mkp@kernel.org>
This commit is contained in:
parent
dc59e4fea9
commit
4c2128c1a3
|
|
@ -345,11 +345,10 @@ static void sas_set_ex_phy(struct domain_device *dev, int phy_id,
|
|||
SAS_ADDR(phy->attached_sas_addr), type);
|
||||
}
|
||||
|
||||
/* check if we have an existing attached ata device on this expander phy */
|
||||
struct domain_device *sas_ex_to_ata(struct domain_device *ex_dev, int phy_id)
|
||||
/* Return the domain device attached to an expander phy */
|
||||
struct domain_device *sas_ex_phy_to_dev(struct domain_device *ex_dev, int phy_id)
|
||||
{
|
||||
struct ex_phy *ex_phy = &ex_dev->ex_dev.ex_phy[phy_id];
|
||||
struct domain_device *dev;
|
||||
struct sas_rphy *rphy;
|
||||
|
||||
if (!ex_phy->port)
|
||||
|
|
@ -359,7 +358,13 @@ struct domain_device *sas_ex_to_ata(struct domain_device *ex_dev, int phy_id)
|
|||
if (!rphy)
|
||||
return NULL;
|
||||
|
||||
dev = sas_find_dev_by_rphy(rphy);
|
||||
return sas_find_dev_by_rphy(rphy);
|
||||
}
|
||||
|
||||
/* Check if we have an existing attached ata device on this expander phy */
|
||||
struct domain_device *sas_ex_to_ata(struct domain_device *ex_dev, int phy_id)
|
||||
{
|
||||
struct domain_device *dev = sas_ex_phy_to_dev(ex_dev, phy_id);
|
||||
|
||||
if (dev && dev_is_sata(dev))
|
||||
return dev;
|
||||
|
|
|
|||
|
|
@ -91,6 +91,7 @@ int sas_smp_get_phy_events(struct sas_phy *phy);
|
|||
|
||||
void sas_device_set_phy(struct domain_device *dev, struct sas_port *port);
|
||||
struct domain_device *sas_find_dev_by_rphy(struct sas_rphy *rphy);
|
||||
struct domain_device *sas_ex_phy_to_dev(struct domain_device *ex_dev, int phy_id);
|
||||
struct domain_device *sas_ex_to_ata(struct domain_device *ex_dev, int phy_id);
|
||||
int sas_ex_phy_discover(struct domain_device *dev, int single);
|
||||
int sas_get_report_phy_sata(struct domain_device *dev, int phy_id,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user