]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
timer: cadence: Add bind function to driver
authorMichal Simek <michal.simek@xilinx.com>
Fri, 15 Oct 2021 13:17:28 +0000 (15:17 +0200)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 30 Mar 2022 12:43:26 +0000 (14:43 +0200)
When DT node has pwm-cells property it shouldn't be bind as timer driver
but as PWM driver. That's why make sure that this property is checked.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Sean Anderson <sean.anderson@seco.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Link: https://lore.kernel.org/r/434ef195fbedea9f83672a12d1ace0da16e8832e.1634303847.git.michal.simek@xilinx.com
drivers/timer/cadence-ttc.c

index 2f95d45ecd7a1ed06bb372ba066c6da1bdbfeb26..2eff45060ad6811a71fb61a1cceb1f3b32a6b821 100644 (file)
@@ -97,6 +97,17 @@ static int cadence_ttc_of_to_plat(struct udevice *dev)
        return 0;
 }
 
+static int cadence_ttc_bind(struct udevice *dev)
+{
+       const char *cells;
+
+       cells = dev_read_prop(dev, "#pwm-cells", NULL);
+       if (cells)
+               return -ENODEV;
+
+       return 0;
+}
+
 static const struct timer_ops cadence_ttc_ops = {
        .get_count = cadence_ttc_get_count,
 };
@@ -114,4 +125,5 @@ U_BOOT_DRIVER(cadence_ttc) = {
        .priv_auto      = sizeof(struct cadence_ttc_priv),
        .probe = cadence_ttc_probe,
        .ops = &cadence_ttc_ops,
+       .bind = cadence_ttc_bind,
 };