Hello Jim Liu, The patch c4f8457d17ce: "gpio: nuvoton: Add Nuvoton NPCM sgpio driver" from Dec 29, 2023 (linux-next), leads to the following (unpublishable) Smatch static checker warning: drivers/gpio/gpio-npcm-sgpio.c:295 npcm_sgpio_setup_clk() warn: why is zero skipped 'i' drivers/gpio/gpio-npcm-sgpio.c 283 static int npcm_sgpio_setup_clk(struct npcm_sgpio *gpio, 284 const struct npcm_clk_cfg *clk_cfg) 285 { 286 unsigned long apb_freq; 287 u32 val; 288 u8 tmp; 289 int i; 290 291 apb_freq = clk_get_rate(gpio->pclk); 292 tmp = ioread8(gpio->base + NPCM_IOXCFG1) & ~NPCM_IOXCFG1_SFT_CLK; 293 294 for (i = clk_cfg->cfg_opt-1; i > 0; i--) { ^^^^^ I believe that this should be >= 0 otherwise it seems like ->sft_clk[0] (which is 1024) would never be used anywhere. --> 295 val = apb_freq / clk_cfg->sft_clk[i]; 296 if (NPCM_CLK_MHZ > val) { 297 iowrite8(clk_cfg->clk_sel[i] | tmp, 298 gpio->base + NPCM_IOXCFG1); 299 return 0; 300 } 301 } 302 303 return -EINVAL; 304 } regards, dan carpenter