summaryrefslogtreecommitdiff
path: root/drivers/phy
diff options
context:
space:
mode:
authorAndrew Goodbody <[email protected]>2025-08-06 17:43:25 +0100
committerJerome Forissier <[email protected]>2025-08-18 14:08:57 +0200
commit2e9155cb9f366a6b9191af0850efad1948b4c785 (patch)
tree5346508158201e2e0565aa9a9518ee69bd68003b /drivers/phy
parenta75c8a4b883108edf19127fca3e6c6c590f9ba8c (diff)
phy: marvell: Cannot test unsigned field to be negative
In comphy_cp110_init_serdes_map in comphy_cp110.c there are two fields in cfg, comphy_lanes_count and comphy_mux_bitcount, which are fetched from the FDT blob with fdtdec_get_int which returns an int. These two fields are then tested for being negative. However the fields are declared as unsigned so those tests must always fail. Change the declaration of those fields to be int instead of u32 and the code will work as expected. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
Diffstat (limited to 'drivers/phy')
-rw-r--r--drivers/phy/marvell/comphy_core.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/phy/marvell/comphy_core.h b/drivers/phy/marvell/comphy_core.h
index f3d04939387..086a4d82f26 100644
--- a/drivers/phy/marvell/comphy_core.h
+++ b/drivers/phy/marvell/comphy_core.h
@@ -47,8 +47,8 @@ struct chip_serdes_phy_config {
int (*rx_training)(struct chip_serdes_phy_config *, u32);
void __iomem *comphy_base_addr;
void __iomem *hpipe3_base_addr;
- u32 comphy_lanes_count;
- u32 comphy_mux_bitcount;
+ int comphy_lanes_count;
+ int comphy_mux_bitcount;
const fdt32_t *comphy_mux_lane_order;
u32 cp_index;
struct comphy_map comphy_map_data[MAX_LANE_OPTIONS];