mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-12-23 18:32:07 +01:00
ufs: Call ufs_scsi_bind() from uclass .post_bind
Instead of duplicating the ufs_scsi_bind() call in every driver, call it from UFS uclass .post_bind callback for every driver in one place. While doing so, inline ufs_scsi_bind() directly into ufs_post_bind() as trivial device_bind_driver() call. Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Link: https://patch.msgid.link/20251028142335.18125-5-marek.vasut+renesas@mailbox.org [narmstrong: also updated the rockchip and mediatek drivers] Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
This commit is contained in:
parent
6104ae290e
commit
067c1b0332
@ -101,13 +101,6 @@ static int cdns_ufs_pltfm_probe(struct udevice *dev)
|
||||
return err;
|
||||
}
|
||||
|
||||
static int cdns_ufs_pltfm_bind(struct udevice *dev)
|
||||
{
|
||||
struct udevice *scsi_dev;
|
||||
|
||||
return ufs_scsi_bind(dev, &scsi_dev);
|
||||
}
|
||||
|
||||
static const struct udevice_id cdns_ufs_pltfm_ids[] = {
|
||||
{
|
||||
.compatible = "cdns,ufshc-m31-16nm",
|
||||
@ -120,5 +113,4 @@ U_BOOT_DRIVER(cdns_ufs_pltfm) = {
|
||||
.id = UCLASS_UFS,
|
||||
.of_match = cdns_ufs_pltfm_ids,
|
||||
.probe = cdns_ufs_pltfm_probe,
|
||||
.bind = cdns_ufs_pltfm_bind,
|
||||
};
|
||||
|
||||
@ -552,13 +552,6 @@ static int ufs_versal2_probe(struct udevice *dev)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int ufs_versal2_bind(struct udevice *dev)
|
||||
{
|
||||
struct udevice *scsi_dev;
|
||||
|
||||
return ufs_scsi_bind(dev, &scsi_dev);
|
||||
}
|
||||
|
||||
static const struct udevice_id ufs_versal2_ids[] = {
|
||||
{
|
||||
.compatible = "amd,versal2-ufs",
|
||||
@ -571,5 +564,4 @@ U_BOOT_DRIVER(ufs_versal2_pltfm) = {
|
||||
.id = UCLASS_UFS,
|
||||
.of_match = ufs_versal2_ids,
|
||||
.probe = ufs_versal2_probe,
|
||||
.bind = ufs_versal2_bind,
|
||||
};
|
||||
|
||||
@ -381,13 +381,6 @@ static int ufs_mtk_probe(struct udevice *dev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int ufs_mtk_bind(struct udevice *dev)
|
||||
{
|
||||
struct udevice *scsi_dev;
|
||||
|
||||
return ufs_scsi_bind(dev, &scsi_dev);
|
||||
}
|
||||
|
||||
static const struct udevice_id ufs_mtk_ids[] = {
|
||||
{ .compatible = "mediatek,mt6878-ufshci" },
|
||||
{},
|
||||
@ -398,6 +391,5 @@ U_BOOT_DRIVER(mediatek_ufshci) = {
|
||||
.id = UCLASS_UFS,
|
||||
.of_match = ufs_mtk_ids,
|
||||
.probe = ufs_mtk_probe,
|
||||
.bind = ufs_mtk_bind,
|
||||
.priv_auto = sizeof(struct ufs_mtk_host),
|
||||
};
|
||||
|
||||
@ -11,13 +11,6 @@
|
||||
#include <dm/device_compat.h>
|
||||
#include "ufs.h"
|
||||
|
||||
static int ufs_pci_bind(struct udevice *dev)
|
||||
{
|
||||
struct udevice *scsi_dev;
|
||||
|
||||
return ufs_scsi_bind(dev, &scsi_dev);
|
||||
}
|
||||
|
||||
static int ufs_pci_probe(struct udevice *dev)
|
||||
{
|
||||
int err;
|
||||
@ -32,7 +25,6 @@ static int ufs_pci_probe(struct udevice *dev)
|
||||
U_BOOT_DRIVER(ufs_pci) = {
|
||||
.name = "ufs_pci",
|
||||
.id = UCLASS_UFS,
|
||||
.bind = ufs_pci_bind,
|
||||
.probe = ufs_pci_probe,
|
||||
};
|
||||
|
||||
|
||||
@ -648,13 +648,6 @@ static int ufs_qcom_probe(struct udevice *dev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int ufs_qcom_bind(struct udevice *dev)
|
||||
{
|
||||
struct udevice *scsi_dev;
|
||||
|
||||
return ufs_scsi_bind(dev, &scsi_dev);
|
||||
}
|
||||
|
||||
static const struct udevice_id ufs_qcom_ids[] = {
|
||||
{ .compatible = "qcom,ufshc" },
|
||||
{},
|
||||
@ -665,6 +658,5 @@ U_BOOT_DRIVER(qcom_ufshcd) = {
|
||||
.id = UCLASS_UFS,
|
||||
.of_match = ufs_qcom_ids,
|
||||
.probe = ufs_qcom_probe,
|
||||
.bind = ufs_qcom_bind,
|
||||
.priv_auto = sizeof(struct ufs_qcom_priv),
|
||||
};
|
||||
|
||||
@ -351,13 +351,6 @@ static struct ufs_hba_ops ufs_renesas_vops = {
|
||||
.hce_enable_notify = ufs_renesas_hce_enable_notify,
|
||||
};
|
||||
|
||||
static int ufs_renesas_pltfm_bind(struct udevice *dev)
|
||||
{
|
||||
struct udevice *scsi_dev;
|
||||
|
||||
return ufs_scsi_bind(dev, &scsi_dev);
|
||||
}
|
||||
|
||||
static int ufs_renesas_pltfm_probe(struct udevice *dev)
|
||||
{
|
||||
struct ufs_renesas_priv *priv = dev_get_priv(dev);
|
||||
@ -405,7 +398,6 @@ U_BOOT_DRIVER(ufs_renesas) = {
|
||||
.name = "ufs-renesas",
|
||||
.id = UCLASS_UFS,
|
||||
.of_match = ufs_renesas_pltfm_ids,
|
||||
.bind = ufs_renesas_pltfm_bind,
|
||||
.probe = ufs_renesas_pltfm_probe,
|
||||
.remove = ufs_renesas_pltfm_remove,
|
||||
.priv_auto = sizeof(struct ufs_renesas_priv),
|
||||
|
||||
@ -194,18 +194,10 @@ static int ufs_rockchip_probe(struct udevice *dev)
|
||||
return err;
|
||||
}
|
||||
|
||||
static int ufs_rockchip_bind(struct udevice *dev)
|
||||
{
|
||||
struct udevice *scsi_dev;
|
||||
|
||||
return ufs_scsi_bind(dev, &scsi_dev);
|
||||
}
|
||||
|
||||
U_BOOT_DRIVER(rockchip_ufs) = {
|
||||
.name = "ufshcd-rockchip",
|
||||
.id = UCLASS_UFS,
|
||||
.of_match = ufs_rockchip_of_match,
|
||||
.probe = ufs_rockchip_probe,
|
||||
.bind = ufs_rockchip_bind,
|
||||
.priv_auto = sizeof(struct ufs_rockchip_host),
|
||||
};
|
||||
|
||||
2308
drivers/ufs/ufs-uclass.c
Normal file
2308
drivers/ufs/ufs-uclass.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user