Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1227934 > unrolled thread
| Started by | Nicolas Ferre <nicolas.ferre@atmel.com> |
|---|---|
| First post | 2015-09-18 16:50 +0200 |
| Last post | 2015-09-21 16:30 +0200 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH] ARM: at91: debug: use DEBUG_UART_PHYS Nicolas Ferre <nicolas.ferre@atmel.com> - 2015-09-18 16:50 +0200
Re: [PATCH] ARM: at91: debug: use DEBUG_UART_PHYS Alexandre Belloni <alexandre.belloni@free-electrons.com> - 2015-09-19 00:20 +0200
Re: [PATCH] ARM: at91: debug: use DEBUG_UART_PHYS Nicolas Ferre <nicolas.ferre@atmel.com> - 2015-09-21 16:30 +0200
| From | Nicolas Ferre <nicolas.ferre@atmel.com> |
|---|---|
| Date | 2015-09-18 16:50 +0200 |
| Subject | Re: [PATCH] ARM: at91: debug: use DEBUG_UART_PHYS |
| Message-ID | <qa598-5y9-9@gated-at.bofh.it> |
Le 08/08/2015 12:11, Alexandre Belloni a écrit : > Instead of having to add a new configuration option each time support for > new SoC is added, use CONFIG_DEBUG_UART_PHYS. For now, > CONFIG_DEBUG_UART_VIRT is automatically computed. > > Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> > --- > arch/arm/Kconfig.debug | 41 ++++++++++++++++------------------------- > arch/arm/include/debug/at91.S | 18 ++++-------------- > 2 files changed, 20 insertions(+), 39 deletions(-) > > diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug > index 946c8c0fa1fb..3ba23d0f5c55 100644 > --- a/arch/arm/Kconfig.debug > +++ b/arch/arm/Kconfig.debug > @@ -123,29 +123,23 @@ choice > 0x80020000 | 0xf0020000 | UART8 > 0x80024000 | 0xf0024000 | UART9 > > - config AT91_DEBUG_LL_DBGU0 > - bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10, 9rl, 9x5, 9n12" > - select DEBUG_AT91_UART > + config DEBUG_AT91_UART > + bool "Kernel low-level debugging on Atmel SoCs" > depends on ARCH_AT91 > - depends on SOC_AT91RM9200 || SOC_AT91SAM9 > + help > + Say Y here if you want the debug print routines to direct > + their output to the serial port on atmel devices. > > - config AT91_DEBUG_LL_DBGU1 > - bool "Kernel low-level debugging on 9263, 9g45 and sama5d3" > - select DEBUG_AT91_UART > - depends on ARCH_AT91 > - depends on SOC_AT91SAM9 || SOC_SAMA5 > + SOC DEBUG_UART_PHYS DEBUG_UART_VIRT PORT > + rm9200, 9260/9g20, 0xfffff200 0xfefff200 DBGU > + 9261/9g10, 9rl > + 9263, 9g45, sama5d3 0xffffee00 0xfeffee00 DBGU > + sama5d4 0xfc00c000 0xfb00c000 USART3 > + sama5d4 0xfc069000 0xfb069000 DBGU This last one must be sama5d3, mustn't it? Otherwise I'm okay: Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> > + sama5d2 0xf8020000 0xf7020000 UART1 > > - config AT91_DEBUG_LL_DBGU2 > - bool "Kernel low-level debugging on sama5d4" > - select DEBUG_AT91_UART > - depends on ARCH_AT91 > - depends on SOC_SAMA5 > - > - config AT91_DEBUG_LL_DBGU3 > - bool "Kernel low-level debugging on sama5d2" > - select DEBUG_AT91_UART > - depends on ARCH_AT91 > - depends on SOC_SAMA5 > + Please adjust DEBUG_UART_PHYS configuration options based on > + your needs. > > config DEBUG_BCM2835 > bool "Kernel low-level debugging on BCM2835 PL011 UART" > @@ -1242,10 +1236,6 @@ choice > > endchoice > > -config DEBUG_AT91_UART > - bool > - depends on ARCH_AT91 > - > config DEBUG_EXYNOS_UART > bool > > @@ -1476,7 +1466,8 @@ config DEBUG_UART_PHYS > DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \ > DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \ > DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \ > - DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 > + DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ > + DEBUG_AT91_UART > > config DEBUG_UART_VIRT > hex "Virtual base address of debug UART" > diff --git a/arch/arm/include/debug/at91.S b/arch/arm/include/debug/at91.S > index 2556a8801c8c..43243be94cfc 100644 > --- a/arch/arm/include/debug/at91.S > +++ b/arch/arm/include/debug/at91.S > @@ -9,32 +9,22 @@ > * > */ > > -#if defined(CONFIG_AT91_DEBUG_LL_DBGU0) > -#define AT91_DBGU 0xfffff200 /* AT91_BASE_DBGU0 */ > -#elif defined(CONFIG_AT91_DEBUG_LL_DBGU1) > -#define AT91_DBGU 0xffffee00 /* AT91_BASE_DBGU1 */ > -#elif defined(CONFIG_AT91_DEBUG_LL_DBGU2) > -/* On sama5d4, use USART3 as low level serial console */ > -#define AT91_DBGU 0xfc00c000 /* SAMA5D4_BASE_USART3 */ > -#else > -/* On sama5d2, use UART1 as low level serial console */ > -#define AT91_DBGU 0xf8020000 > -#endif > - > #ifdef CONFIG_MMU > #define AT91_IO_P2V(x) ((x) - 0x01000000) > #else > #define AT91_IO_P2V(x) (x) > #endif > > +#define CONFIG_DEBUG_UART_VIRT AT91_IO_P2V(CONFIG_DEBUG_UART_PHYS) > + > #define AT91_DBGU_SR (0x14) /* Status Register */ > #define AT91_DBGU_THR (0x1c) /* Transmitter Holding Register */ > #define AT91_DBGU_TXRDY (1 << 1) /* Transmitter Ready */ > #define AT91_DBGU_TXEMPTY (1 << 9) /* Transmitter Empty */ > > .macro addruart, rp, rv, tmp > - ldr \rp, =AT91_DBGU @ System peripherals (phys address) > - ldr \rv, =AT91_IO_P2V(AT91_DBGU) @ System peripherals (virt address) > + ldr \rp, =CONFIG_DEBUG_UART_PHYS @ System peripherals (phys address) > + ldr \rv, =CONFIG_DEBUG_UART_VIRT @ System peripherals (virt address) > .endm > > .macro senduart,rd,rx > -- Nicolas Ferre -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Alexandre Belloni <alexandre.belloni@free-electrons.com> |
|---|---|
| Date | 2015-09-19 00:20 +0200 |
| Message-ID | <qacaB-7wO-13@gated-at.bofh.it> |
| In reply to | #1227934 |
Hi, On 18/09/2015 at 16:48:43 +0200, Nicolas Ferre wrote : > > - config AT91_DEBUG_LL_DBGU1 > > - bool "Kernel low-level debugging on 9263, 9g45 and sama5d3" > > - select DEBUG_AT91_UART > > - depends on ARCH_AT91 > > - depends on SOC_AT91SAM9 || SOC_SAMA5 > > + SOC DEBUG_UART_PHYS DEBUG_UART_VIRT PORT > > + rm9200, 9260/9g20, 0xfffff200 0xfefff200 DBGU > > + 9261/9g10, 9rl > > + 9263, 9g45, sama5d3 0xffffee00 0xfeffee00 DBGU > > + sama5d4 0xfc00c000 0xfb00c000 USART3 > > + sama5d4 0xfc069000 0xfb069000 DBGU > > This last one must be sama5d3, mustn't it? > No, that is the DBGU for sama5d4, sama5d3 is mentionned and is at 0xffffee00. I added it in case someone doesn't use USART3 for debugging and wants to use the DBGU. I actually doubt it may happen but we never now. I can remove it in a v2 if you prefer. > Otherwise I'm okay: > Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> > > > + sama5d2 0xf8020000 0xf7020000 UART1 > > > > - config AT91_DEBUG_LL_DBGU2 > > - bool "Kernel low-level debugging on sama5d4" > > - select DEBUG_AT91_UART > > - depends on ARCH_AT91 > > - depends on SOC_SAMA5 > > - > > - config AT91_DEBUG_LL_DBGU3 > > - bool "Kernel low-level debugging on sama5d2" > > - select DEBUG_AT91_UART > > - depends on ARCH_AT91 > > - depends on SOC_SAMA5 > > + Please adjust DEBUG_UART_PHYS configuration options based on > > + your needs. > > > > config DEBUG_BCM2835 > > bool "Kernel low-level debugging on BCM2835 PL011 UART" > > @@ -1242,10 +1236,6 @@ choice > > > > endchoice > > > > -config DEBUG_AT91_UART > > - bool > > - depends on ARCH_AT91 > > - > > config DEBUG_EXYNOS_UART > > bool > > > > @@ -1476,7 +1466,8 @@ config DEBUG_UART_PHYS > > DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \ > > DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \ > > DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \ > > - DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 > > + DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ > > + DEBUG_AT91_UART > > > > config DEBUG_UART_VIRT > > hex "Virtual base address of debug UART" > > diff --git a/arch/arm/include/debug/at91.S b/arch/arm/include/debug/at91.S > > index 2556a8801c8c..43243be94cfc 100644 > > --- a/arch/arm/include/debug/at91.S > > +++ b/arch/arm/include/debug/at91.S > > @@ -9,32 +9,22 @@ > > * > > */ > > > > -#if defined(CONFIG_AT91_DEBUG_LL_DBGU0) > > -#define AT91_DBGU 0xfffff200 /* AT91_BASE_DBGU0 */ > > -#elif defined(CONFIG_AT91_DEBUG_LL_DBGU1) > > -#define AT91_DBGU 0xffffee00 /* AT91_BASE_DBGU1 */ > > -#elif defined(CONFIG_AT91_DEBUG_LL_DBGU2) > > -/* On sama5d4, use USART3 as low level serial console */ > > -#define AT91_DBGU 0xfc00c000 /* SAMA5D4_BASE_USART3 */ > > -#else > > -/* On sama5d2, use UART1 as low level serial console */ > > -#define AT91_DBGU 0xf8020000 > > -#endif > > - > > #ifdef CONFIG_MMU > > #define AT91_IO_P2V(x) ((x) - 0x01000000) > > #else > > #define AT91_IO_P2V(x) (x) > > #endif > > > > +#define CONFIG_DEBUG_UART_VIRT AT91_IO_P2V(CONFIG_DEBUG_UART_PHYS) > > + > > #define AT91_DBGU_SR (0x14) /* Status Register */ > > #define AT91_DBGU_THR (0x1c) /* Transmitter Holding Register */ > > #define AT91_DBGU_TXRDY (1 << 1) /* Transmitter Ready */ > > #define AT91_DBGU_TXEMPTY (1 << 9) /* Transmitter Empty */ > > > > .macro addruart, rp, rv, tmp > > - ldr \rp, =AT91_DBGU @ System peripherals (phys address) > > - ldr \rv, =AT91_IO_P2V(AT91_DBGU) @ System peripherals (virt address) > > + ldr \rp, =CONFIG_DEBUG_UART_PHYS @ System peripherals (phys address) > > + ldr \rv, =CONFIG_DEBUG_UART_VIRT @ System peripherals (virt address) > > .endm > > > > .macro senduart,rd,rx > > > > > -- > Nicolas Ferre -- Alexandre Belloni, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Nicolas Ferre <nicolas.ferre@atmel.com> |
|---|---|
| Date | 2015-09-21 16:30 +0200 |
| Message-ID | <qbagq-O0-9@gated-at.bofh.it> |
| In reply to | #1228322 |
Le 19/09/2015 00:13, Alexandre Belloni a écrit : > Hi, > > On 18/09/2015 at 16:48:43 +0200, Nicolas Ferre wrote : >>> - config AT91_DEBUG_LL_DBGU1 >>> - bool "Kernel low-level debugging on 9263, 9g45 and sama5d3" >>> - select DEBUG_AT91_UART >>> - depends on ARCH_AT91 >>> - depends on SOC_AT91SAM9 || SOC_SAMA5 >>> + SOC DEBUG_UART_PHYS DEBUG_UART_VIRT PORT >>> + rm9200, 9260/9g20, 0xfffff200 0xfefff200 DBGU >>> + 9261/9g10, 9rl >>> + 9263, 9g45, sama5d3 0xffffee00 0xfeffee00 DBGU >>> + sama5d4 0xfc00c000 0xfb00c000 USART3 >>> + sama5d4 0xfc069000 0xfb069000 DBGU >> >> This last one must be sama5d3, mustn't it? >> > > No, that is the DBGU for sama5d4, sama5d3 is mentionned and is at > 0xffffee00. I added it in case someone doesn't use USART3 for debugging > and wants to use the DBGU. I actually doubt it may happen but we never > now. I can remove it in a v2 if you prefer. Ok, I understand now. No need for a v2, I take this one in at91-4.4-soc branch. Thanks, bye, > >> Otherwise I'm okay: >> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> >> >>> + sama5d2 0xf8020000 0xf7020000 UART1 >>> >>> - config AT91_DEBUG_LL_DBGU2 >>> - bool "Kernel low-level debugging on sama5d4" >>> - select DEBUG_AT91_UART >>> - depends on ARCH_AT91 >>> - depends on SOC_SAMA5 >>> - >>> - config AT91_DEBUG_LL_DBGU3 >>> - bool "Kernel low-level debugging on sama5d2" >>> - select DEBUG_AT91_UART >>> - depends on ARCH_AT91 >>> - depends on SOC_SAMA5 >>> + Please adjust DEBUG_UART_PHYS configuration options based on >>> + your needs. >>> >>> config DEBUG_BCM2835 >>> bool "Kernel low-level debugging on BCM2835 PL011 UART" >>> @@ -1242,10 +1236,6 @@ choice >>> >>> endchoice >>> >>> -config DEBUG_AT91_UART >>> - bool >>> - depends on ARCH_AT91 >>> - >>> config DEBUG_EXYNOS_UART >>> bool >>> >>> @@ -1476,7 +1466,8 @@ config DEBUG_UART_PHYS >>> DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \ >>> DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \ >>> DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \ >>> - DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 >>> + DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ >>> + DEBUG_AT91_UART >>> >>> config DEBUG_UART_VIRT >>> hex "Virtual base address of debug UART" >>> diff --git a/arch/arm/include/debug/at91.S b/arch/arm/include/debug/at91.S >>> index 2556a8801c8c..43243be94cfc 100644 >>> --- a/arch/arm/include/debug/at91.S >>> +++ b/arch/arm/include/debug/at91.S >>> @@ -9,32 +9,22 @@ >>> * >>> */ >>> >>> -#if defined(CONFIG_AT91_DEBUG_LL_DBGU0) >>> -#define AT91_DBGU 0xfffff200 /* AT91_BASE_DBGU0 */ >>> -#elif defined(CONFIG_AT91_DEBUG_LL_DBGU1) >>> -#define AT91_DBGU 0xffffee00 /* AT91_BASE_DBGU1 */ >>> -#elif defined(CONFIG_AT91_DEBUG_LL_DBGU2) >>> -/* On sama5d4, use USART3 as low level serial console */ >>> -#define AT91_DBGU 0xfc00c000 /* SAMA5D4_BASE_USART3 */ >>> -#else >>> -/* On sama5d2, use UART1 as low level serial console */ >>> -#define AT91_DBGU 0xf8020000 >>> -#endif >>> - >>> #ifdef CONFIG_MMU >>> #define AT91_IO_P2V(x) ((x) - 0x01000000) >>> #else >>> #define AT91_IO_P2V(x) (x) >>> #endif >>> >>> +#define CONFIG_DEBUG_UART_VIRT AT91_IO_P2V(CONFIG_DEBUG_UART_PHYS) >>> + >>> #define AT91_DBGU_SR (0x14) /* Status Register */ >>> #define AT91_DBGU_THR (0x1c) /* Transmitter Holding Register */ >>> #define AT91_DBGU_TXRDY (1 << 1) /* Transmitter Ready */ >>> #define AT91_DBGU_TXEMPTY (1 << 9) /* Transmitter Empty */ >>> >>> .macro addruart, rp, rv, tmp >>> - ldr \rp, =AT91_DBGU @ System peripherals (phys address) >>> - ldr \rv, =AT91_IO_P2V(AT91_DBGU) @ System peripherals (virt address) >>> + ldr \rp, =CONFIG_DEBUG_UART_PHYS @ System peripherals (phys address) >>> + ldr \rv, =CONFIG_DEBUG_UART_VIRT @ System peripherals (virt address) >>> .endm >>> >>> .macro senduart,rd,rx >>> >> >> >> -- >> Nicolas Ferre > -- Nicolas Ferre -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web