diff options
Diffstat (limited to 'configs/platform-v7a/patches/barebox-2019.01.0/0004-serial_ns16550-handle-default-reg-io-width.patch')
-rw-r--r-- | configs/platform-v7a/patches/barebox-2019.01.0/0004-serial_ns16550-handle-default-reg-io-width.patch | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/configs/platform-v7a/patches/barebox-2019.01.0/0004-serial_ns16550-handle-default-reg-io-width.patch b/configs/platform-v7a/patches/barebox-2019.01.0/0004-serial_ns16550-handle-default-reg-io-width.patch deleted file mode 100644 index 568d74d..0000000 --- a/configs/platform-v7a/patches/barebox-2019.01.0/0004-serial_ns16550-handle-default-reg-io-width.patch +++ /dev/null @@ -1,78 +0,0 @@ -From: Rouven Czerwinski <r.czerwinski@pengutronix.de> -Date: Tue, 11 Dec 2018 11:28:33 +0100 -Subject: [PATCH] serial_ns16550: handle default reg-io-width - -According to the device tree bindings for 8250, width is an optional property. -Default to 1 which is the same default value as used by the kernel. -Before this change the driver would not work for device trees which do not -include the optional binding. - -Signed-off-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> ---- - drivers/serial/serial_ns16550.c | 46 ++++++++++++++++++++--------------------- - 1 file changed, 23 insertions(+), 23 deletions(-) - -diff --git a/drivers/serial/serial_ns16550.c b/drivers/serial/serial_ns16550.c -index 4d73ea8b8740..8ddcfdbefc1d 100644 ---- a/drivers/serial/serial_ns16550.c -+++ b/drivers/serial/serial_ns16550.c -@@ -297,36 +297,36 @@ static int ns16550_tstc(struct console_device *cdev) - static void ns16550_probe_dt(struct device_d *dev, struct ns16550_priv *priv) - { - struct device_node *np = dev->device_node; -- u32 width; -+ u32 width = 1; - - if (!IS_ENABLED(CONFIG_OFDEVICE)) - return; - - of_property_read_u32(np, "clock-frequency", &priv->plat.clock); - of_property_read_u32(np, "reg-shift", &priv->plat.shift); -- if (!of_property_read_u32(np, "reg-io-width", &width)) -- switch (width) { -- case 1: -- priv->read_reg = ns16550_read_reg_mmio_8; -- priv->write_reg = ns16550_write_reg_mmio_8; -- break; -- case 2: -- priv->read_reg = ns16550_read_reg_mmio_16; -- priv->write_reg = ns16550_write_reg_mmio_16; -- break; -- case 4: -- if (of_device_is_big_endian(np)) { -- priv->read_reg = ns16550_read_reg_mmio_32be; -- priv->write_reg = ns16550_write_reg_mmio_32be; -- } else { -- priv->read_reg = ns16550_read_reg_mmio_32; -- priv->write_reg = ns16550_write_reg_mmio_32; -- } -- break; -- default: -- dev_err(dev, "unsupported reg-io-width (%d)\n", -- width); -+ of_property_read_u32(np, "reg-io-width", &width); -+ switch (width) { -+ case 1: -+ priv->read_reg = ns16550_read_reg_mmio_8; -+ priv->write_reg = ns16550_write_reg_mmio_8; -+ break; -+ case 2: -+ priv->read_reg = ns16550_read_reg_mmio_16; -+ priv->write_reg = ns16550_write_reg_mmio_16; -+ break; -+ case 4: -+ if (of_device_is_big_endian(np)) { -+ priv->read_reg = ns16550_read_reg_mmio_32be; -+ priv->write_reg = ns16550_write_reg_mmio_32be; -+ } else { -+ priv->read_reg = ns16550_read_reg_mmio_32; -+ priv->write_reg = ns16550_write_reg_mmio_32; - } -+ break; -+ default: -+ dev_err(dev, "unsupported reg-io-width (%d)\n", -+ width); -+ } - } - - static struct ns16550_drvdata ns16450_drvdata = { |