[PATCH v2 3/3] scsi: ufs: rockchip: init support for UFS
Krzysztof Kozlowski
krzk at kernel.org
Thu Aug 8 03:39:46 PDT 2024
On 08/08/2024 05:52, Shawn Lin wrote:
> RK3576 contains a UFS controller, add init support fot it.
>
> Signed-off-by: Shawn Lin <shawn.lin at rock-chips.com>
>
> + reset_control_assert(host->rst);
> + udelay(1);
> + reset_control_deassert(host->rst);
> +
> + host->ref_out_clk = devm_clk_get(dev, "ref_out");
> + if (IS_ERR(host->ref_out_clk))
> + return dev_err_probe(dev, PTR_ERR(host->ref_out_clk), "ciu-drive not available\n");
> +
> + err = clk_prepare_enable(host->ref_out_clk);
> + if (err)
> + return dev_err_probe(dev, err, "failed to enable ref out clock\n");
> +
> + host->rst_gpio = devm_gpiod_get(&pdev->dev, "reset", GPIOD_OUT_LOW);
> + if (IS_ERR(host->rst_gpio)) {
> + dev_err_probe(&pdev->dev, PTR_ERR(host->rst_gpio),
> + "invalid reset-gpios property in node\n");
> + err = PTR_ERR(host->rst_gpio);
> + goto out;
> + }
> + udelay(20);
> + gpiod_set_value_cansleep(host->rst_gpio, 1);
Also, why do you leave the device in the reset state? Logical one means
- reset is asserted. This applies to ufs_rockchip_device_reset() as well
- that's just wrong code.
Best regards,
Krzysztof
More information about the Linux-rockchip
mailing list