On 11/4/25 3:39 AM, Liu Ying wrote:

Hello Liu,

@@ -61,24 +62,13 @@ enum fsl_ldb_devtype {
  };
struct fsl_ldb_devdata {
-       u32 ldb_ctrl;
-       u32 lvds_ctrl;
        bool lvds_en_bit;
-       bool single_ctrl_reg;
  };
static const struct fsl_ldb_devdata fsl_ldb_devdata[] = {

As I pointed out in v1 comment, this patch should remove struct
fsl_ldb_devdata.

The lvds_en_bit is still needed , and I plan to add MX95 support here, which would extend this again. Going back and forth makes little sense.

[...]

@@ -309,6 +302,27 @@ static int fsl_ldb_probe(struct platform_device *pdev)
        fsl_ldb->dev = &pdev->dev;
        fsl_ldb->bridge.of_node = dev->of_node;
+ /* No "reg-names" property likely means single-register LDB */
+       idx = of_property_match_string(dev->of_node, "reg-names", "ldb");

You don't need to match reg-names.  Instead, just call of_property_read_reg()
twice to get the first reg and the second reg by passing indexes 0 and 1 to it.
If the second reg is not found, then set fsl_ldb->single_ctrl_reg to true.

This wouldn't work if the two entries were ordered the other way around in DT, i.e. first "ldb" second "lvds" and vice-versa. That's why properties with multiple values also have the -names property that goes with them.

Reply via email to