On Tue, Mar 07, 2023 at 04:45:24PM +0000, David Binderman wrote: > Hello there, > > I just ran the static analyser "cppcheck" over the source code of > linux-6.2-rc1. It said: > > linux-6.3-rc1/drivers/gpu/drm/bridge/fsl-ldb.c:101:3: style: int > result is returned as long value. If the return value is long to avoid > loss of information, then you have loss of information. > [truncLongCastReturn] > > Source code is > > static unsigned long fsl_ldb_link_frequency(struct fsl_ldb *fsl_ldb, int clock) > { > if (fsl_ldb->lvds_dual_link) > return clock * 3500; > else > return clock * 7000; > } > > Depending on the range of the value of clock, maybe unsigned long > literals, like 3500UL, should have been used ? We could, but I don't think it will make any difference in practice as the maximum pixel clock frequency supported by the SoC is 80MHz (per LVDS channel). That would result in a 560MHz frequency returned by this function, well below the 31 bits limit. -- Regards, Laurent Pinchart