From patchwork Wed Apr 22 10:50:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnaud Ferraris X-Patchwork-Id: 238278 List-Id: U-Boot discussion From: arnaud.ferraris at collabora.com (Arnaud Ferraris) Date: Wed, 22 Apr 2020 12:50:25 +0200 Subject: [PATCH 1/2] drivers: usb: musb: Fail if the ctrl mod register is missing Message-ID: <20200422105027.89221-1-arnaud.ferraris@collabora.com> From: Sjoerd Simons If the trcl mode register address cannot be found error out rather then trying to continue (which cannot work) Signed-off-by: Sjoerd Simons Signed-off-by: Arnaud Ferraris --- drivers/usb/musb-new/ti-musb.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/usb/musb-new/ti-musb.c b/drivers/usb/musb-new/ti-musb.c index 608facefa3..4e88652433 100644 --- a/drivers/usb/musb-new/ti-musb.c +++ b/drivers/usb/musb-new/ti-musb.c @@ -91,6 +91,11 @@ static int ti_musb_ofdata_to_platdata(struct udevice *dev) phys = fdtdec_lookup_phandle(fdt, node, "phys"); ctrl_mod = fdtdec_lookup_phandle(fdt, phys, "ti,ctrl_mod"); platdata->ctrl_mod_base = (void *)fdtdec_get_addr(fdt, ctrl_mod, "reg"); + if (platdata->ctrl_mod_base == FDT_ADDR_T_NONE) { + pr_err("MUSB ctrl mod missing\n"); + return -ENOENT; + } + usb_index = ti_musb_get_usb_index(node); switch (usb_index) { case 1: From patchwork Wed Apr 22 10:50:26 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnaud Ferraris X-Patchwork-Id: 238277 List-Id: U-Boot discussion From: arnaud.ferraris at collabora.com (Arnaud Ferraris) Date: Wed, 22 Apr 2020 12:50:26 +0200 Subject: [PATCH 2/2] drivers: usb: musb: Fix comparison between pointer and integer warn In-Reply-To: <20200422105027.89221-1-arnaud.ferraris@collabora.com> References: <20200422105027.89221-1-arnaud.ferraris@collabora.com> Message-ID: <20200422105027.89221-2-arnaud.ferraris@collabora.com> From: Adrian Ratiu drivers/usb/musb-new/ti-musb.c: In function 'ti_musb_ofdata_to_platdata': drivers/usb/musb-new/ti-musb.c:93:30: warning: comparison between pointer and integer if (platdata->ctrl_mod_base == FDT_ADDR_T_NONE) {} Signed-off-by: Adrian Ratiu Signed-off-by: Arnaud Ferraris --- drivers/usb/musb-new/ti-musb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/musb-new/ti-musb.c b/drivers/usb/musb-new/ti-musb.c index 4e88652433..0c124a2c5e 100644 --- a/drivers/usb/musb-new/ti-musb.c +++ b/drivers/usb/musb-new/ti-musb.c @@ -91,7 +91,7 @@ static int ti_musb_ofdata_to_platdata(struct udevice *dev) phys = fdtdec_lookup_phandle(fdt, node, "phys"); ctrl_mod = fdtdec_lookup_phandle(fdt, phys, "ti,ctrl_mod"); platdata->ctrl_mod_base = (void *)fdtdec_get_addr(fdt, ctrl_mod, "reg"); - if (platdata->ctrl_mod_base == FDT_ADDR_T_NONE) { + if (platdata->ctrl_mod_base == (void *)FDT_ADDR_T_NONE) { pr_err("MUSB ctrl mod missing\n"); return -ENOENT; }