[OpenWrt-Devel] [PATCH v2 16/18] atheros[uart]: use 32-bit aligned I/O
Sergey Ryazanov
ryazanov.s.a at gmail.com
Mon Jul 14 19:57:35 EDT 2014
Use 32-bit aligned I/O and update base UART address (remove +3 offset).
Signed-off-by: Sergey Ryazanov <ryazanov.s.a at gmail.com>
---
target/linux/atheros/patches-3.10/100-board.patch | 6 +++---
target/linux/atheros/patches-3.10/101-early-printk-support.patch | 4 ++--
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/target/linux/atheros/patches-3.10/100-board.patch b/target/linux/atheros/patches-3.10/100-board.patch
index 4fdf435..b9d3719 100644
--- a/target/linux/atheros/patches-3.10/100-board.patch
+++ b/target/linux/atheros/patches-3.10/100-board.patch
@@ -766,7 +766,7 @@
+#define AR2315_LOCAL 0x10400000 /* LOCAL BUS MMR */
+#define AR2315_ENET0 0x10500000 /* ETHERNET MMR */
+#define AR2315_DSLBASE 0x11000000 /* RESET CONTROL MMR */
-+#define AR2315_UART0 0x11100003 /* UART MMR */
++#define AR2315_UART0 0x11100000 /* UART MMR */
+#define AR2315_SPI_MMR 0x11300000 /* SPI FLASH MMR */
+#define AR2315_PCIEXT 0x80000000 /* pci external */
+
@@ -1385,7 +1385,7 @@
+#define AR531X_FLASHCTL 0x18400000
+#define AR531X_APBBASE 0x1c000000
+#define AR531X_FLASH 0x1e000000
-+#define AR531X_UART0 0xbc000003 /* UART MMR */
++#define AR531X_UART0 0xbc000000 /* UART MMR */
+
+/*
+ * AR531X_NUM_ENET_MAC defines the number of ethernet MACs that
@@ -3007,7 +3007,7 @@
+ memset(&s, 0, sizeof(s));
+
+ s.flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST;
-+ s.iotype = UPIO_MEM;
++ s.iotype = UPIO_MEM32;
+ s.irq = irq;
+ s.regshift = 2;
+ s.mapbase = mapbase;
diff --git a/target/linux/atheros/patches-3.10/101-early-printk-support.patch b/target/linux/atheros/patches-3.10/101-early-printk-support.patch
index 3daa011..be68025 100644
--- a/target/linux/atheros/patches-3.10/101-early-printk-support.patch
+++ b/target/linux/atheros/patches-3.10/101-early-printk-support.patch
@@ -21,12 +21,12 @@
+static inline void prom_uart_wr(void __iomem *base, unsigned reg,
+ unsigned char ch)
+{
-+ __raw_writeb(ch, base + 4 * reg);
++ __raw_writel(ch, base + 4 * reg);
+}
+
+static inline unsigned char prom_uart_rr(void __iomem *base, unsigned reg)
+{
-+ return __raw_readb(base + 4 * reg);
++ return __raw_readl(base + 4 * reg);
+}
+
+void prom_putchar(unsigned char ch)
--
1.8.1.5
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list