[bug report] pinctrl: Add Xilinx ZynqMP pinctrl driver support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Sai Krishna Potthuri,

The patch 8b242ca700f8: "pinctrl: Add Xilinx ZynqMP pinctrl driver
support" from Apr 22, 2021, leads to the following Smatch static
checker warning:

	drivers/pinctrl/pinctrl-zynqmp.c:681 zynqmp_pinctrl_create_pin_groups()
	warn: missing error code? 'ret'

drivers/pinctrl/pinctrl-zynqmp.c
    667 static int zynqmp_pinctrl_create_pin_groups(struct device *dev,
    668                                             struct zynqmp_pctrl_group *groups,
    669                                             unsigned int pin)
    670 {
    671         u16 resp[NUM_GROUPS_PER_RESP] = {0};
    672         int ret, i, index = 0;
    673 
    674         do {
    675                 ret = zynqmp_pinctrl_get_pin_groups(pin, index, resp);
    676                 if (ret)
    677                         return ret;
    678 
    679                 for (i = 0; i < NUM_GROUPS_PER_RESP; i++) {
    680                         if (resp[i] == NA_GROUP)
--> 681                                 return ret;

"ret" is zero at this point.  This looks intentional?  We loop until
we find a NA_GROUP then return zero?  Better to "return 0;" explicitly,
though.

    682 
    683                         if (resp[i] == RESERVED_GROUP)
    684                                 continue;
    685 
    686                         zynqmp_pinctrl_group_add_pin(&groups[resp[i]], pin);
    687                 }
    688                 index += NUM_GROUPS_PER_RESP;
    689         } while (index <= MAX_PIN_GROUPS);
    690 
    691         return 0;
    692 }

regards,
dan carpenter



[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux