Commit 11c742bb authored by Rob Herring (Arm)'s avatar Rob Herring (Arm) Committed by Robert Foss

drm: bridge: anx7625: Use of_property_read_variable_u8_array()

There's no need to get the length of an DT array property before
parsing the array. of_property_read_variable_u8_array() takes a minimum
and maximum length and returns the actual length (or error code).

This is part of a larger effort to remove callers of of_get_property()
and similar functions. of_get_property() leaks the DT property data
pointer which is a problem for dynamically allocated nodes which may
be freed.
Signed-off-by: default avatarRob Herring (Arm) <robh@kernel.org>
Signed-off-by: default avatarRobert Foss <rfoss@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240731201407.1838385-4-robh@kernel.org
parent 737ad377
...@@ -1647,25 +1647,15 @@ static int anx7625_get_swing_setting(struct device *dev, ...@@ -1647,25 +1647,15 @@ static int anx7625_get_swing_setting(struct device *dev,
{ {
int num_regs; int num_regs;
if (of_get_property(dev->of_node, num_regs = of_property_read_variable_u8_array(dev->of_node, "analogix,lane0-swing",
"analogix,lane0-swing", &num_regs)) { pdata->lane0_reg_data, 1, DP_TX_SWING_REG_CNT);
if (num_regs > DP_TX_SWING_REG_CNT) if (num_regs > 0)
num_regs = DP_TX_SWING_REG_CNT;
pdata->dp_lane0_swing_reg_cnt = num_regs; pdata->dp_lane0_swing_reg_cnt = num_regs;
of_property_read_u8_array(dev->of_node, "analogix,lane0-swing",
pdata->lane0_reg_data, num_regs);
}
if (of_get_property(dev->of_node,
"analogix,lane1-swing", &num_regs)) {
if (num_regs > DP_TX_SWING_REG_CNT)
num_regs = DP_TX_SWING_REG_CNT;
num_regs = of_property_read_variable_u8_array(dev->of_node, "analogix,lane1-swing",
pdata->lane1_reg_data, 1, DP_TX_SWING_REG_CNT);
if (num_regs > 0)
pdata->dp_lane1_swing_reg_cnt = num_regs; pdata->dp_lane1_swing_reg_cnt = num_regs;
of_property_read_u8_array(dev->of_node, "analogix,lane1-swing",
pdata->lane1_reg_data, num_regs);
}
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment