[PATCH] ns16550: add device tree support

Sebastian Hesselbarth sebastian.hesselbarth at gmail.com
Mon Jun 24 11:03:09 EDT 2013


On 06/24/13 14:18, NISHIMOTO Hiroki wrote:
> This patch adds device tree support for serial_ns16550 driver.
>
> Tested with pcduino (allwinner a10).
>
> Signed-off-by: NISHIMOTO Hiroki <hiroki.nishimoto.if at gmail.com>
> ---
>   .../devicetree/bindings/serial/ns16550_serial.txt  | 34 ++++++++++++++
>   drivers/serial/serial_ns16550.c                    | 53 ++++++++++++++++++++--
>   2 files changed, 84 insertions(+), 3 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/serial/ns16550_serial.txt
>
> diff --git a/Documentation/devicetree/bindings/serial/ns16550_serial.txt b/Documentation/devicetree/bindings/serial/ns16550_serial.txt
> new file mode 100644
> index 0000000..848f949
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/serial/ns16550_serial.txt
> @@ -0,0 +1,34 @@
> +* NS16550 UART
> +
> +Required properties:
> +- compatible : "ns16550_serial"

Hiroki,

as stated in Documentation/devicetree/bindings/README, barebox uses the 
same bindings as "the kernel" which is Linux I guess. Linux already has
a binding for ns16550 compatible serial.

I suggest to use that binding as a reference although it is not
documented but needs to be stripped from its source code.

> +- reg : offset and length of the register set for the device.
> +
> +
> +Optional properties:
> +- clock-frequency : the input clock frequency for the UART.
> +- reg-shift : quantity to shift the register offsets by.  If this property is
> +  not present then the register offsets are not shifted.
> +- reg-io-width : the size (in bytes) of the IO accesses that should be
> +  performed on the device.  If this property is not present then single byte
> +  accesses are used.
> +- disable-fifo :
> +	0: enable tx/rx fifo (default value)
> +	1: disable tx/rx fifo
> +- console-stdin : activate stdin on this console.
> +- console-stdout : activate stdout on this console.
> +- console-stderr : activate stderr on this console.

ePAPR specification already defines stdout-path and stdin-path.
Moreover, barebox has of_device_is_stdout_path to check if a device is
referenced by stdout-path property.

Sebastian




More information about the barebox mailing list