Browse Source

serial: pl01x: expose skip_init platdata option in DT

To be able to represent the skip-init platdata element with OF_CONTROL,
it needs to be read from the device tree as well and put into the platform data.

Cc: Eric Anholt <eric@anholt.net>
Signed-off-by: Fabian Vogt <fvogt@suse.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Fabian Vogt 7 years ago
parent
commit
165316e38f
2 changed files with 5 additions and 0 deletions
  1. 3 0
      doc/device-tree-bindings/serial/pl01x.txt
  2. 2 0
      drivers/serial/serial_pl01x.c

+ 3 - 0
doc/device-tree-bindings/serial/pl01x.txt

@@ -5,3 +5,6 @@ Required properties:
 - reg: exactly one register range with length 0x1000
 - clock: input clock frequency for the UART (used to calculate the baud
   rate divisor)
+
+Optional properties:
+- skip-init: if present, the baud rate divisor is not changed

+ 2 - 0
drivers/serial/serial_pl01x.c

@@ -356,6 +356,8 @@ static int pl01x_serial_ofdata_to_platdata(struct udevice *dev)
 	plat->base = addr;
 	plat->clock = fdtdec_get_int(gd->fdt_blob, dev->of_offset, "clock", 1);
 	plat->type = dev_get_driver_data(dev);
+	plat->skip_init = fdtdec_get_bool(gd->fdt_blob, dev->of_offset,
+	                                  "skip-init");
 	return 0;
 }
 #endif