diff mbox

[OpenWrt-Devel,v2,1/3] mcs814x: fix debug UART

Message ID 1437994095-16492-2-git-send-email-guenther.kelleter@devolo.de
State Superseded
Headers show

Commit Message

Günther Kelleter July 27, 2015, 10:48 a.m. UTC
It was broken since kernel 3.14

Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
---
 target/linux/mcs814x/config-3.18                   | 10 ++++--
 .../linux/mcs814x/patches-3.18/014-debuguart.patch | 41 ++++++++++++++++++++++
 2 files changed, 48 insertions(+), 3 deletions(-)
 create mode 100644 target/linux/mcs814x/patches-3.18/014-debuguart.patch

Comments

Florian Fainelli July 27, 2015, 5:52 p.m. UTC | #1
On Jul 27, 2015 3:54 AM, "Günther Kelleter" <guenther.kelleter@devolo.de>
wrote:
>
> It was broken since kernel 3.14

True, but your patch does not explain how you are fixing this, which is
what matters for a good commit message. Could expand on why migrating to
the generic 8250 debug uart code is fixing things?

>
> Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
> ---
>  target/linux/mcs814x/config-3.18                   | 10 ++++--
>  .../linux/mcs814x/patches-3.18/014-debuguart.patch | 41
++++++++++++++++++++++
>  2 files changed, 48 insertions(+), 3 deletions(-)
>  create mode 100644 target/linux/mcs814x/patches-3.18/014-debuguart.patch
>
> diff --git a/target/linux/mcs814x/config-3.18
b/target/linux/mcs814x/config-3.18
> index 87a8382..e57f5ff 100644
> --- a/target/linux/mcs814x/config-3.18
> +++ b/target/linux/mcs814x/config-3.18
> @@ -49,10 +49,15 @@ CONFIG_CRYPTO_CRC32C=y
>  CONFIG_CRYPTO_HASH=y
>  CONFIG_CRYPTO_HASH2=y
>  CONFIG_DEBUG_LL=y
> -CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
> +CONFIG_DEBUG_LL_INCLUDE="debug/8250.S"
>  CONFIG_DEBUG_LL_UART_NONE=y
> -# CONFIG_DEBUG_UART_8250 is not set
> +CONFIG_DEBUG_UART_8250=y
> +# CONFIG_DEBUG_UART_8250_FLOW_CONTROL is not set
> +CONFIG_DEBUG_UART_8250_SHIFT=2
> +# CONFIG_DEBUG_UART_8250_WORD is not set
> +CONFIG_DEBUG_UART_PHYS=0x400dc000
>  # CONFIG_DEBUG_UART_PL01X is not set
> +CONFIG_DEBUG_UART_VIRT=0xf00dc000
>  # CONFIG_DEBUG_USER is not set
>  CONFIG_DTC=y
>  CONFIG_EARLY_PRINTK=y
> @@ -157,7 +162,6 @@ CONFIG_MTD_PHYSMAP=y
>  CONFIG_MULTI_IRQ_HANDLER=y
>  CONFIG_NEED_DMA_MAP_STATE=y
>  CONFIG_NEED_KUSER_HELPERS=y
> -CONFIG_NEED_MACH_MEMORY_H=y
>  CONFIG_NEED_PER_CPU_KM=y
>  CONFIG_NET_KEY=y
>  # CONFIG_NET_VENDOR_BROADCOM is not set
> diff --git a/target/linux/mcs814x/patches-3.18/014-debuguart.patch
b/target/linux/mcs814x/patches-3.18/014-debuguart.patch
> new file mode 100644
> index 0000000..5f1b67f
> --- /dev/null
> +++ b/target/linux/mcs814x/patches-3.18/014-debuguart.patch
> @@ -0,0 +1,41 @@
> +--- a/arch/arm/mach-mcs814x/include/mach/debug-macro.S
> ++++ /dev/null
> +@@ -1,11 +0,0 @@
> +-#include <mach/mcs814x.h>
> +-
> +-                .macro  addruart, rp, rv, tmp
> +-              ldr     \rp, =MCS814X_PHYS_BASE
> +-              ldr     \rv, =MCS814X_VIRT_BASE
> +-              orr     \rp, \rp, #MCS814X_UART
> +-              orr     \rv, \rv, #MCS814X_UART
> +-                .endm
> +-
> +-#define UART_SHIFT    2
> +-#include <asm/hardware/debug-8250.S>
> +--- a/arch/arm/Kconfig.debug
> ++++ b/arch/arm/Kconfig.debug
> +@@ -1089,7 +1089,7 @@ config DEBUG_UART_8250
> +               (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
> +               ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
> +               ARCH_IOP33X || ARCH_IXP4XX || \
> +-              ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
> ++              ARCH_LPC32XX || ARCH_MCS814X || ARCH_MV78XX0 ||
ARCH_ORION5X || ARCH_RPC
> +
> + # Compatibility options for BCM63xx
> + config DEBUG_UART_BCM63XX
> +@@ -1124,6 +1124,7 @@ config DEBUG_UART_PHYS
> +       default 0x3e000000 if DEBUG_BCM_KONA_UART
> +       default 0x4000e400 if DEBUG_LL_UART_EFM32
> +       default 0x40090000 if ARCH_LPC32XX
> ++      default 0x400dc000 if ARCH_MCS814X
> +       default 0x40100000 if DEBUG_PXA_UART1
> +       default 0x42000000 if ARCH_GEMINI
> +       default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
> +@@ -1178,6 +1179,7 @@ config DEBUG_UART_VIRT
> +       default 0xe0010fe0 if ARCH_RPC
> +       default 0xe1000000 if DEBUG_MSM_UART
> +       default 0xf0000be0 if ARCH_EBSA110
> ++      default 0xf00dc000 if ARCH_MCS814X
> +       default 0xf01fb000 if DEBUG_NOMADIK_UART
> +       default 0xf0201000 if DEBUG_BCM2835
> +       default 0xf1000300 if DEBUG_BCM_5301X
> --
> 2.4.6.89.g851dcf4
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
Günther Kelleter July 28, 2015, 6:44 a.m. UTC | #2
Hi

Is this a better commit message?
„use new 8250 debug uart code because the old mach-mcs814x/include/mach/debug-macro.S tries to include
asm/hardware/debug-8250.S which no longer exists since kernel 3.14”

Günther


From: f.fainelli@gmail.com [mailto:f.fainelli@gmail.com] On Behalf Of Florian Fainelli

Sent: Monday, July 27, 2015 7:53 PM
To: Guenther Kelleter
Cc: OpenWrt Development List
Subject: Re: [OpenWrt-Devel] [PATCH v2 1/3] mcs814x: fix debug UART


On Jul 27, 2015 3:54 AM, "Günther Kelleter" <guenther.kelleter@devolo.de<mailto:guenther.kelleter@devolo.de>> wrote:
>

> It was broken since kernel 3.14


True, but your patch does not explain how you are fixing this, which is what matters for a good commit message. Could expand on why migrating to the generic 8250 debug uart code is fixing things?

>

> Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de<mailto:guenther.kelleter@devolo.de>>

> ---

>  target/linux/mcs814x/config-3.18                   | 10 ++++--

>  .../linux/mcs814x/patches-3.18/014-debuguart.patch | 41 ++++++++++++++++++++++

>  2 files changed, 48 insertions(+), 3 deletions(-)

>  create mode 100644 target/linux/mcs814x/patches-3.18/014-debuguart.patch

>

> diff --git a/target/linux/mcs814x/config-3.18 b/target/linux/mcs814x/config-3.18

> index 87a8382..e57f5ff 100644

> --- a/target/linux/mcs814x/config-3.18

> +++ b/target/linux/mcs814x/config-3.18

> @@ -49,10 +49,15 @@ CONFIG_CRYPTO_CRC32C=y

>  CONFIG_CRYPTO_HASH=y

>  CONFIG_CRYPTO_HASH2=y

>  CONFIG_DEBUG_LL=y

> -CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"

> +CONFIG_DEBUG_LL_INCLUDE="debug/8250.S"

>  CONFIG_DEBUG_LL_UART_NONE=y

> -# CONFIG_DEBUG_UART_8250 is not set

> +CONFIG_DEBUG_UART_8250=y

> +# CONFIG_DEBUG_UART_8250_FLOW_CONTROL is not set

> +CONFIG_DEBUG_UART_8250_SHIFT=2

> +# CONFIG_DEBUG_UART_8250_WORD is not set

> +CONFIG_DEBUG_UART_PHYS=0x400dc000

>  # CONFIG_DEBUG_UART_PL01X is not set

> +CONFIG_DEBUG_UART_VIRT=0xf00dc000

>  # CONFIG_DEBUG_USER is not set

>  CONFIG_DTC=y

>  CONFIG_EARLY_PRINTK=y

> @@ -157,7 +162,6 @@ CONFIG_MTD_PHYSMAP=y

>  CONFIG_MULTI_IRQ_HANDLER=y

>  CONFIG_NEED_DMA_MAP_STATE=y

>  CONFIG_NEED_KUSER_HELPERS=y

> -CONFIG_NEED_MACH_MEMORY_H=y

>  CONFIG_NEED_PER_CPU_KM=y

>  CONFIG_NET_KEY=y

>  # CONFIG_NET_VENDOR_BROADCOM is not set

> diff --git a/target/linux/mcs814x/patches-3.18/014-debuguart.patch b/target/linux/mcs814x/patches-3.18/014-debuguart.patch

> new file mode 100644

> index 0000000..5f1b67f

> --- /dev/null

> +++ b/target/linux/mcs814x/patches-3.18/014-debuguart.patch

> @@ -0,0 +1,41 @@

> +--- a/arch/arm/mach-mcs814x/include/mach/debug-macro.S

> ++++ /dev/null

> +@@ -1,11 +0,0 @@

> +-#include <mach/mcs814x.h>

> +-

> +-                .macro  addruart, rp, rv, tmp

> +-              ldr     \rp, =MCS814X_PHYS_BASE

> +-              ldr     \rv, =MCS814X_VIRT_BASE

> +-              orr     \rp, \rp, #MCS814X_UART

> +-              orr     \rv, \rv, #MCS814X_UART

> +-                .endm

> +-

> +-#define UART_SHIFT    2

> +-#include <asm/hardware/debug-8250.S>

> +--- a/arch/arm/Kconfig.debug

> ++++ b/arch/arm/Kconfig.debug

> +@@ -1089,7 +1089,7 @@ config DEBUG_UART_8250

> +               (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \

> +               ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \

> +               ARCH_IOP33X || ARCH_IXP4XX || \

> +-              ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC

> ++              ARCH_LPC32XX || ARCH_MCS814X || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC

> +

> + # Compatibility options for BCM63xx

> + config DEBUG_UART_BCM63XX

> +@@ -1124,6 +1124,7 @@ config DEBUG_UART_PHYS

> +       default 0x3e000000 if DEBUG_BCM_KONA_UART

> +       default 0x4000e400 if DEBUG_LL_UART_EFM32

> +       default 0x40090000 if ARCH_LPC32XX

> ++      default 0x400dc000 if ARCH_MCS814X

> +       default 0x40100000 if DEBUG_PXA_UART1

> +       default 0x42000000 if ARCH_GEMINI

> +       default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \

> +@@ -1178,6 +1179,7 @@ config DEBUG_UART_VIRT

> +       default 0xe0010fe0 if ARCH_RPC

> +       default 0xe1000000 if DEBUG_MSM_UART

> +       default 0xf0000be0 if ARCH_EBSA110

> ++      default 0xf00dc000 if ARCH_MCS814X

> +       default 0xf01fb000 if DEBUG_NOMADIK_UART

> +       default 0xf0201000 if DEBUG_BCM2835

> +       default 0xf1000300 if DEBUG_BCM_5301X

> --

> 2.4.6.89.g851dcf4

> _______________________________________________

> openwrt-devel mailing list

> openwrt-devel@lists.openwrt.org<mailto:openwrt-devel@lists.openwrt.org>

> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
diff mbox

Patch

diff --git a/target/linux/mcs814x/config-3.18 b/target/linux/mcs814x/config-3.18
index 87a8382..e57f5ff 100644
--- a/target/linux/mcs814x/config-3.18
+++ b/target/linux/mcs814x/config-3.18
@@ -49,10 +49,15 @@  CONFIG_CRYPTO_CRC32C=y
 CONFIG_CRYPTO_HASH=y
 CONFIG_CRYPTO_HASH2=y
 CONFIG_DEBUG_LL=y
-CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
+CONFIG_DEBUG_LL_INCLUDE="debug/8250.S"
 CONFIG_DEBUG_LL_UART_NONE=y
-# CONFIG_DEBUG_UART_8250 is not set
+CONFIG_DEBUG_UART_8250=y
+# CONFIG_DEBUG_UART_8250_FLOW_CONTROL is not set
+CONFIG_DEBUG_UART_8250_SHIFT=2
+# CONFIG_DEBUG_UART_8250_WORD is not set
+CONFIG_DEBUG_UART_PHYS=0x400dc000
 # CONFIG_DEBUG_UART_PL01X is not set
+CONFIG_DEBUG_UART_VIRT=0xf00dc000
 # CONFIG_DEBUG_USER is not set
 CONFIG_DTC=y
 CONFIG_EARLY_PRINTK=y
@@ -157,7 +162,6 @@  CONFIG_MTD_PHYSMAP=y
 CONFIG_MULTI_IRQ_HANDLER=y
 CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_NEED_KUSER_HELPERS=y
-CONFIG_NEED_MACH_MEMORY_H=y
 CONFIG_NEED_PER_CPU_KM=y
 CONFIG_NET_KEY=y
 # CONFIG_NET_VENDOR_BROADCOM is not set
diff --git a/target/linux/mcs814x/patches-3.18/014-debuguart.patch b/target/linux/mcs814x/patches-3.18/014-debuguart.patch
new file mode 100644
index 0000000..5f1b67f
--- /dev/null
+++ b/target/linux/mcs814x/patches-3.18/014-debuguart.patch
@@ -0,0 +1,41 @@ 
+--- a/arch/arm/mach-mcs814x/include/mach/debug-macro.S
++++ /dev/null
+@@ -1,11 +0,0 @@
+-#include <mach/mcs814x.h>
+-
+-                .macro  addruart, rp, rv, tmp
+-		ldr	\rp, =MCS814X_PHYS_BASE
+-		ldr	\rv, =MCS814X_VIRT_BASE
+-		orr	\rp, \rp, #MCS814X_UART
+-		orr	\rv, \rv, #MCS814X_UART
+-                .endm
+-
+-#define UART_SHIFT	2
+-#include <asm/hardware/debug-8250.S>
+--- a/arch/arm/Kconfig.debug
++++ b/arch/arm/Kconfig.debug
+@@ -1089,7 +1089,7 @@ config DEBUG_UART_8250
+ 		(FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
+ 		ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
+ 		ARCH_IOP33X || ARCH_IXP4XX || \
+-		ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
++		ARCH_LPC32XX || ARCH_MCS814X || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
+ 
+ # Compatibility options for BCM63xx
+ config DEBUG_UART_BCM63XX
+@@ -1124,6 +1124,7 @@ config DEBUG_UART_PHYS
+ 	default 0x3e000000 if DEBUG_BCM_KONA_UART
+ 	default 0x4000e400 if DEBUG_LL_UART_EFM32
+ 	default 0x40090000 if ARCH_LPC32XX
++	default 0x400dc000 if ARCH_MCS814X
+ 	default 0x40100000 if DEBUG_PXA_UART1
+ 	default 0x42000000 if ARCH_GEMINI
+ 	default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
+@@ -1178,6 +1179,7 @@ config DEBUG_UART_VIRT
+ 	default 0xe0010fe0 if ARCH_RPC
+ 	default 0xe1000000 if DEBUG_MSM_UART
+ 	default 0xf0000be0 if ARCH_EBSA110
++	default 0xf00dc000 if ARCH_MCS814X
+ 	default 0xf01fb000 if DEBUG_NOMADIK_UART
+ 	default 0xf0201000 if DEBUG_BCM2835
+ 	default 0xf1000300 if DEBUG_BCM_5301X