* [U-Boot] [PATCH v2] microblaze: usable uart16550 for big endian systems
@ 2011-11-24 22:32 Stephan Linz
2011-11-25 10:30 ` Michal Simek
2011-11-27 14:49 ` Wolfgang Denk
0 siblings, 2 replies; 4+ messages in thread
From: Stephan Linz @ 2011-11-24 22:32 UTC (permalink / raw)
To: u-boot
As a result of the commit 6833260 the uart16550 driver
is broken for Microblaze big endian systems, because of
the missing 3 byte offset. Other than as described, not
all U-Boot BSP will treat properly the 3 byte offset.
This why prefer to mask out the 3 byte offset in general
and setup correct _REG_SIZE value depending on edianess.
Signed-off-by: Stephan Linz <linz@li-pro.net>
---
v2: Mask out 3 byte offset
Set correct _REG_SIZE values for big/little endianess
---
include/configs/microblaze-generic.h | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index 6b3fd76..03a6f5a 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -41,10 +41,14 @@
#elif XILINX_UART16550_BASEADDR
# define CONFIG_SYS_NS16550 1
# define CONFIG_SYS_NS16550_SERIAL
-# define CONFIG_SYS_NS16550_REG_SIZE -4
+# if defined(__MICROBLAZEEL__)
+# define CONFIG_SYS_NS16550_REG_SIZE -4
+# else
+# define CONFIG_SYS_NS16550_REG_SIZE 4
+# endif
# define CONFIG_CONS_INDEX 1
# define CONFIG_SYS_NS16550_COM1 \
- (XILINX_UART16550_BASEADDR + 0x1000)
+ ((XILINX_UART16550_BASEADDR & ~0xF) + 0x1000)
# define CONFIG_SYS_NS16550_CLK XILINX_UART16550_CLOCK_HZ
# define CONFIG_BAUDRATE 115200
--
1.7.0.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH v2] microblaze: usable uart16550 for big endian systems
2011-11-24 22:32 [U-Boot] [PATCH v2] microblaze: usable uart16550 for big endian systems Stephan Linz
@ 2011-11-25 10:30 ` Michal Simek
2011-11-27 14:49 ` Wolfgang Denk
2011-11-27 14:49 ` Wolfgang Denk
1 sibling, 1 reply; 4+ messages in thread
From: Michal Simek @ 2011-11-25 10:30 UTC (permalink / raw)
To: u-boot
Stephan Linz wrote:
> As a result of the commit 6833260 the uart16550 driver
> is broken for Microblaze big endian systems, because of
> the missing 3 byte offset. Other than as described, not
> all U-Boot BSP will treat properly the 3 byte offset.
>
> This why prefer to mask out the 3 byte offset in general
> and setup correct _REG_SIZE value depending on edianess.
>
> Signed-off-by: Stephan Linz <linz@li-pro.net>
> ---
> v2: Mask out 3 byte offset
> Set correct _REG_SIZE values for big/little endianess
> ---
> include/configs/microblaze-generic.h | 8 ++++++--
> 1 files changed, 6 insertions(+), 2 deletions(-)
Tested-by: Michal Simek <monstr@monstr.eu>
Wolfgang: Can you please apply this patch directly to your repo.
Thanks,
Michal
--
Michal Simek, Ing. (M.Eng)
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel 2.6 Microblaze Linux - http://www.monstr.eu/fdt/
Microblaze U-BOOT custodian
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH v2] microblaze: usable uart16550 for big endian systems
2011-11-24 22:32 [U-Boot] [PATCH v2] microblaze: usable uart16550 for big endian systems Stephan Linz
2011-11-25 10:30 ` Michal Simek
@ 2011-11-27 14:49 ` Wolfgang Denk
1 sibling, 0 replies; 4+ messages in thread
From: Wolfgang Denk @ 2011-11-27 14:49 UTC (permalink / raw)
To: u-boot
Dear Stephan Linz,
In message <1322173972-11048-1-git-send-email-linz@li-pro.net> you wrote:
> As a result of the commit 6833260 the uart16550 driver
> is broken for Microblaze big endian systems, because of
> the missing 3 byte offset. Other than as described, not
> all U-Boot BSP will treat properly the 3 byte offset.
>
> This why prefer to mask out the 3 byte offset in general
> and setup correct _REG_SIZE value depending on edianess.
>
> Signed-off-by: Stephan Linz <linz@li-pro.net>
> ---
> v2: Mask out 3 byte offset
> Set correct _REG_SIZE values for big/little endianess
> ---
> include/configs/microblaze-generic.h | 8 ++++++--
> 1 files changed, 6 insertions(+), 2 deletions(-)
Applied, thanks.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"I find this a nice feature but it is not according to the documen-
tation. Or is it a BUG?" "Let's call it an accidental feature. :-)"
- Larry Wall in <6909@jpl-devvax.JPL.NASA.GOV>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH v2] microblaze: usable uart16550 for big endian systems
2011-11-25 10:30 ` Michal Simek
@ 2011-11-27 14:49 ` Wolfgang Denk
0 siblings, 0 replies; 4+ messages in thread
From: Wolfgang Denk @ 2011-11-27 14:49 UTC (permalink / raw)
To: u-boot
Dear Michal Simek,
In message <4ECF6E4C.8010506@monstr.eu> you wrote:
> Stephan Linz wrote:
> > As a result of the commit 6833260 the uart16550 driver
> > is broken for Microblaze big endian systems, because of
> > the missing 3 byte offset. Other than as described, not
> > all U-Boot BSP will treat properly the 3 byte offset.
> >
> > This why prefer to mask out the 3 byte offset in general
> > and setup correct _REG_SIZE value depending on edianess.
> >
> > Signed-off-by: Stephan Linz <linz@li-pro.net>
> > ---
> > v2: Mask out 3 byte offset
> > Set correct _REG_SIZE values for big/little endianess
> > ---
> > include/configs/microblaze-generic.h | 8 ++++++--
> > 1 files changed, 6 insertions(+), 2 deletions(-)
>
> Tested-by: Michal Simek <monstr@monstr.eu>
>
> Wolfgang: Can you please apply this patch directly to your repo.
Yes, I can. Done.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
: I've tried (in vi) "g/[a-z]\n[a-z]/s//_/"...but that doesn't
: cut it. Any ideas? (I take it that it may be a two-pass sort of solution).
In the first pass, install perl. :-) Larry Wall <6849@jpl-devvax.JPL.NASA.GOV>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2011-11-27 14:49 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-24 22:32 [U-Boot] [PATCH v2] microblaze: usable uart16550 for big endian systems Stephan Linz
2011-11-25 10:30 ` Michal Simek
2011-11-27 14:49 ` Wolfgang Denk
2011-11-27 14:49 ` Wolfgang Denk
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox