lkml.org 
[lkml]   [2019]   [Jun]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 02/12] iommu/mediatek: Add probe_defer for smi-larb
    Date
    The iommu consumer should use device_link to connect with the
    smi-larb(supplier). then the smi-larb should run before the iommu
    consumer. Here we delay the iommu driver until the smi driver is
    ready, then all the iommu consumer always is after the smi driver.

    When there is no this patch, if some consumer drivers run before
    smi-larb, the supplier link_status is DL_DEV_NO_DRIVER(0) in the
    device_link_add, then device_links_driver_bound will use WARN_ON
    to complain that the link_status of supplier is not right.

    This is a preparing patch for adding device_link.

    Signed-off-by: Yong Wu <yong.wu@mediatek.com>
    ---
    drivers/iommu/mtk_iommu.c | 2 +-
    drivers/iommu/mtk_iommu_v1.c | 2 +-
    2 files changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c
    index 6fe3369..f7599d8 100644
    --- a/drivers/iommu/mtk_iommu.c
    +++ b/drivers/iommu/mtk_iommu.c
    @@ -664,7 +664,7 @@ static int mtk_iommu_probe(struct platform_device *pdev)
    id = i;

    plarbdev = of_find_device_by_node(larbnode);
    - if (!plarbdev) {
    + if (!plarbdev || !plarbdev->dev.driver) {
    of_node_put(larbnode);
    return -EPROBE_DEFER;
    }
    diff --git a/drivers/iommu/mtk_iommu_v1.c b/drivers/iommu/mtk_iommu_v1.c
    index 0b0908c..c43c4a0 100644
    --- a/drivers/iommu/mtk_iommu_v1.c
    +++ b/drivers/iommu/mtk_iommu_v1.c
    @@ -604,7 +604,7 @@ static int mtk_iommu_probe(struct platform_device *pdev)
    plarbdev = of_platform_device_create(
    larb_spec.np, NULL,
    platform_bus_type.dev_root);
    - if (!plarbdev) {
    + if (!plarbdev || !plarbdev->dev.driver) {
    of_node_put(larb_spec.np);
    return -EPROBE_DEFER;
    }
    --
    1.9.1
    \
     
     \ /
      Last update: 2019-06-10 14:56    [W:4.526 / U:0.456 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site