lkml.org 
[lkml]   [2021]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.11 169/601] mtd: rawnand: qcom: Return actual error code instead of -ENODEV
    Date
    From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

    [ Upstream commit 55fbb9ba4f06cb6aff32daca1e1910173c13ec51 ]

    In qcom_probe_nand_devices() function, the error code returned by
    qcom_nand_host_init_and_register() is converted to -ENODEV in the case
    of failure. This poses issue if -EPROBE_DEFER is returned when the
    dependency is not available for a component like parser.

    So let's restructure the error handling logic a bit and return the
    actual error code in case of qcom_nand_host_init_and_register() failure.

    Fixes: c76b78d8ec05 ("mtd: nand: Qualcomm NAND controller driver")
    Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
    Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/mtd/nand/raw/qcom_nandc.c | 7 ++-----
    1 file changed, 2 insertions(+), 5 deletions(-)

    diff --git a/drivers/mtd/nand/raw/qcom_nandc.c b/drivers/mtd/nand/raw/qcom_nandc.c
    index 667e4bfe369f..0d2d4ec476fc 100644
    --- a/drivers/mtd/nand/raw/qcom_nandc.c
    +++ b/drivers/mtd/nand/raw/qcom_nandc.c
    @@ -2896,7 +2896,7 @@ static int qcom_probe_nand_devices(struct qcom_nand_controller *nandc)
    struct device *dev = nandc->dev;
    struct device_node *dn = dev->of_node, *child;
    struct qcom_nand_host *host;
    - int ret;
    + int ret = -ENODEV;

    for_each_available_child_of_node(dn, child) {
    host = devm_kzalloc(dev, sizeof(*host), GFP_KERNEL);
    @@ -2914,10 +2914,7 @@ static int qcom_probe_nand_devices(struct qcom_nand_controller *nandc)
    list_add_tail(&host->node, &nandc->host_list);
    }

    - if (list_empty(&nandc->host_list))
    - return -ENODEV;
    -
    - return 0;
    + return ret;
    }

    /* parse custom DT properties here */
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-05-12 19:31    [W:3.756 / U:0.212 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site