On 21-08-24 22:46:12, Manish Narani wrote: > This patch series has some Enhancements and Bug Fixes to chipidea USB > driver related to Zynq platform. > > Manish Narani (3): > usb: chipidea: Add support for VBUS control with PHY > usb: chipidea: Use usb2 phy for Zynq platform > usb: chipidea: Check usb_phy exists before using it > > Piyush Mehta (3): > usb: chipidea: Fix return value handling > usb: chipidea: core: Add return value function check > usb: chipidea: udc: Add xilinx revision support > > drivers/usb/chipidea/ci_hdrc_usb2.c | 5 +++++ > drivers/usb/chipidea/core.c | 26 +++++++++++++++++++------- > drivers/usb/chipidea/host.c | 9 +++++++++ > drivers/usb/chipidea/otg.c | 6 +++++- > drivers/usb/chipidea/otg_fsm.c | 9 +++++++++ > drivers/usb/chipidea/udc.c | 3 ++- > include/linux/usb/chipidea.h | 1 + > 7 files changed, 50 insertions(+), 9 deletions(-) > I am afraid I can't find [4/6] at my INBOX, comments below: From: Piyush Mehta <piyush.mehta@xxxxxxxxxx> API was neither captured nor checked.Fixed it by capturing the return value and then checking for any error. Addresses-Coverity: "Calling without checking return" Addresses-Coverity: "CHECKED_RETURN" Signed-off-by: Piyush Mehta <piyush.mehta@xxxxxxxxxx> Signed-off-by: Manish Narani <manish.narani@xxxxxxxxxx> --- drivers/usb/chipidea/core.c | 11 +++++++---- drivers/usb/chipidea/otg.c | 6 +++++- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c index 2b18f50..676346f 100644 --- a/drivers/usb/chipidea/core.c +++ b/drivers/usb/chipidea/core.c @@ -700,13 +700,16 @@ static int ci_get_platdata(struct device *dev, if (usb_get_maximum_speed(dev) == USB_SPEED_FULL) platdata->flags |= CI_HDRC_FORCE_FULLSPEED; - of_property_read_u32(dev->of_node, "phy-clkgate-delay-us", - &platdata->phy_clkgate_delay_us); + if (of_property_read_u32(dev->of_node, "phy-clkgate-delay-us", + &platdata->phy_clkgate_delay_us)) + dev_dbg(dev, "Missing phy-clkgate-delay-us property\n"); platdata->itc_setting = 1; - of_property_read_u32(dev->of_node, "itc-setting", - &platdata->itc_setting); + if (of_property_read_u32(dev->of_node, "itc-setting", + &platdata->itc_setting)) + dev_dbg(dev, "Missing itc-setting property\n"); + You may check how to handle this for other properties in this function. ret = of_property_read_u32(dev->of_node, "ahb-burst-config", &platdata->ahb_burst_config); diff --git a/drivers/usb/chipidea/otg.c b/drivers/usb/chipidea/otg.c index 8dd5928..d527d9d 100644 --- a/drivers/usb/chipidea/otg.c +++ b/drivers/usb/chipidea/otg.c @@ -168,6 +168,7 @@ static int hw_wait_vbus_lower_bsv(struct ci_hdrc *ci) static void ci_handle_id_switch(struct ci_hdrc *ci) { enum ci_role role = ci_otg_role(ci); + int ret; if (role != ci->role) { dev_dbg(ci->dev, "switching from %s to %s\n", @@ -193,7 +194,10 @@ static void ci_handle_id_switch(struct ci_hdrc *ci) */ hw_wait_vbus_lower_bsv(ci); - ci_role_start(ci, role); + ret = ci_role_start(ci, role); + if (ret < 0) + dev_dbg(ci->dev, "switching err %d\n", ret); + You may use dev_err for it. /* vbus change may have already occurred */ if (role == CI_ROLE_GADGET) ci_handle_vbus_change(ci); -- Thanks, Peter Chen