From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexander Graf Date: Mon, 29 Feb 2016 14:04:59 +0100 Subject: [U-Boot] [PATCH V2] OMAP3: Various: Update serial platdata to update reg_offset to 0 In-Reply-To: <1456746808-5177-1-git-send-email-aford173@gmail.com> References: <1456746808-5177-1-git-send-email-aford173@gmail.com> Message-ID: <56D441FB.6070703@suse.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 02/29/2016 12:53 PM, Adam Ford wrote: > V2: I hastily copy-pasted the boards without looking at the UART number. > This addresses 3 boards that use UART3 and not UART1. > > With commit: d9a3bec682f9 "dm: ns16550: Add support for reg-offset property" > reg_offset is added to the struct ns16550_platdata to be > dt compatible with Linux kernel driver. A variety of OMAP3 boards are broken > as the serial platdata is missing offsets. By explicitly naming the entry, > this should also help 'future-proof' if more entries get added but are not > needed for OMAP3. Tested on the Logic PD Torpedo + Wireless. > > I only changed a handful of devices that used the same syntax as the Logic > board. Appologies if I missed one or stepped on toes. Thanks to Derald Woods > and Alexander Graf. > > Signed-off-by: Adam Ford > --- > board/isee/igep00x0/igep00x0.c | 7 ++++--- > board/logicpd/omap3som/omap3logic.c | 7 ++++--- > board/logicpd/zoom1/zoom1.c | 7 ++++--- > board/overo/overo.c | 7 ++++--- > board/quipos/cairo/cairo.c | 7 ++++--- > board/ti/beagle/beagle.c | 7 ++++--- > board/timll/devkit8000/devkit8000.c | 7 ++++--- > 7 files changed, 28 insertions(+), 21 deletions(-) > > diff --git a/board/isee/igep00x0/igep00x0.c b/board/isee/igep00x0/igep00x0.c > index e2fce50..63489e5 100644 > --- a/board/isee/igep00x0/igep00x0.c > +++ b/board/isee/igep00x0/igep00x0.c > @@ -34,9 +34,10 @@ static const u32 gpmc_lan_config[] = { > #endif > > static const struct ns16550_platdata igep_serial = { > - OMAP34XX_UART3, > - 2, > - V_NS16550_CLK > + .base = OMAP34XX_UART1, This looks wrong > + .reg_offset = 0, I'd say just leave reg_offset out in all the structs. It gets initialized to 0 by default. > + .reg_shift = 2, > + .clock = V_NS16550_CLK > }; > > U_BOOT_DEVICE(igep_uart) = { > diff --git a/board/logicpd/omap3som/omap3logic.c b/board/logicpd/omap3som/omap3logic.c > index 668f684..0e72a5a 100644 > --- a/board/logicpd/omap3som/omap3logic.c > +++ b/board/logicpd/omap3som/omap3logic.c > @@ -47,9 +47,10 @@ DECLARE_GLOBAL_DATA_PTR; > */ > > static const struct ns16550_platdata omap3logic_serial = { > - OMAP34XX_UART1, > - 2, > - V_NS16550_CLK > + .base = OMAP34XX_UART1, > + .reg_offset = 0, > + .reg_shift = 2, > + .clock = V_NS16550_CLK > }; > > U_BOOT_DEVICE(omap3logic_uart) = { > diff --git a/board/logicpd/zoom1/zoom1.c b/board/logicpd/zoom1/zoom1.c > index 4040114..3d34919 100644 > --- a/board/logicpd/zoom1/zoom1.c > +++ b/board/logicpd/zoom1/zoom1.c > @@ -44,9 +44,10 @@ static const u32 gpmc_lab_enet[] = { > }; > > static const struct ns16550_platdata zoom1_serial = { > - OMAP34XX_UART3, > - 2, > - V_NS16550_CLK > + .base = OMAP34XX_UART1, looks wrong too > + .reg_offset = 0, > + .reg_shift = 2, > + .clock = V_NS16550_CLK > }; > > U_BOOT_DEVICE(zoom1_uart) = { > diff --git a/board/overo/overo.c b/board/overo/overo.c > index a38b959..3da80e9 100644 > --- a/board/overo/overo.c > +++ b/board/overo/overo.c > @@ -68,9 +68,10 @@ static struct { > } expansion_config = {0x0}; > > static const struct ns16550_platdata overo_serial = { > - OMAP34XX_UART3, > - 2, > - V_NS16550_CLK > + .base = OMAP34XX_UART3, > + .reg_offset = 0, > + .reg_shift = 2, > + .clock = V_NS16550_CLK > }; > > U_BOOT_DEVICE(overo_uart) = { > diff --git a/board/quipos/cairo/cairo.c b/board/quipos/cairo/cairo.c > index 21793e8..15d68c1 100644 > --- a/board/quipos/cairo/cairo.c > +++ b/board/quipos/cairo/cairo.c > @@ -91,9 +91,10 @@ void get_board_mem_timings(struct board_sdrc_timings *timings) > #endif > > static const struct ns16550_platdata cairo_serial = { > - OMAP34XX_UART2, > - 2, > - V_NS16550_CLK > + .base = OMAP34XX_UART1, wrong? Given the number of typos, maybe try and create a coccinelle script instead? :) Alex > + .reg_offset = 0, > + .reg_shift = 2, > + .clock = V_NS16550_CLK > }; > > U_BOOT_DEVICE(cairo_uart) = { > diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c > index ff317ef..a5f2af7 100644 > --- a/board/ti/beagle/beagle.c > +++ b/board/ti/beagle/beagle.c > @@ -73,9 +73,10 @@ static struct { > } expansion_config; > > static const struct ns16550_platdata beagle_serial = { > - OMAP34XX_UART3, > - 2, > - V_NS16550_CLK > + .base = OMAP34XX_UART3, > + .reg_offset = 0, > + .reg_shift = 2, > + .clock = V_NS16550_CLK > }; > > U_BOOT_DEVICE(beagle_uart) = { > diff --git a/board/timll/devkit8000/devkit8000.c b/board/timll/devkit8000/devkit8000.c > index 1a447c7..fb8e357 100644 > --- a/board/timll/devkit8000/devkit8000.c > +++ b/board/timll/devkit8000/devkit8000.c > @@ -46,9 +46,10 @@ static u32 gpmc_net_config[GPMC_MAX_REG] = { > }; > > static const struct ns16550_platdata devkit8000_serial = { > - OMAP34XX_UART3, > - 2, > - V_NS16550_CLK > + .base = OMAP34XX_UART3, > + .reg_offset = 0, > + .reg_shift = 2, > + .clock = V_NS16550_CLK > }; > > U_BOOT_DEVICE(devkit8000_uart) = {