Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8ad0bbd8 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'qcom-soc-for-3.16' of...

Merge tag 'qcom-soc-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom into next/soc

Merge "Qualcomm ARM Based SoC Updates for v3.16" from Kumar Gala:

* Enabling building pinctrl and AMBA bus support
* Clean up debug UART selection

* tag 'qcom-soc-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom

:
  ARM: qcom: Select PINCTRL by default for ARCH_QCOM
  ARM: debug: qcom: make UART address selection configuration option
  ARM: qcom: Enable ARM_AMBA option for Qualcomm SOCs.

Conflicts:
	arch/arm/Kconfig.debug
	arch/arm/mach-qcom/Kconfig

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 37f5f4e1 87cfb00d
Loading
Loading
Loading
Loading
+33 −48
Original line number Diff line number Diff line
@@ -356,56 +356,39 @@ choice
		  Say Y here if you want kernel low-level debugging support
		  on MMP UART3.

	config DEBUG_MSM_UART1
		bool "Kernel low-level debugging messages via MSM UART1"
		depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
		select DEBUG_MSM_UART
	config DEBUG_MSM_UART
		bool "Kernel low-level debugging messages via MSM UART"
		depends on ARCH_MSM
		help
		  Say Y here if you want the debug print routines to direct
		  their output to the first serial port on MSM devices.
		  their output to the serial port on MSM devices.

	config DEBUG_MSM_UART2
		bool "Kernel low-level debugging messages via MSM UART2"
		depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
		select DEBUG_MSM_UART
		help
		  Say Y here if you want the debug print routines to direct
		  their output to the second serial port on MSM devices.
		  ARCH                DEBUG_UART_PHYS   DEBUG_UART_BASE   #
		  MSM7X00A, QSD8X50   0xa9a00000        0xe1000000        UART1
		  MSM7X00A, QSD8X50   0xa9b00000        0xe1000000        UART2
		  MSM7X00A, QSD8X50   0xa9c00000        0xe1000000        UART3

	config DEBUG_MSM_UART3
		bool "Kernel low-level debugging messages via MSM UART3"
		depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
		select DEBUG_MSM_UART
		help
		  Say Y here if you want the debug print routines to direct
		  their output to the third serial port on MSM devices.
		  MSM7X30             0xaca00000        0xe1000000        UART1
		  MSM7X30             0xacb00000        0xe1000000        UART2
		  MSM7X30             0xacc00000        0xe1000000        UART3

	config DEBUG_MSM8660_UART
		bool "Kernel low-level debugging messages via MSM 8660 UART"
		depends on ARCH_MSM8X60
		select MSM_HAS_DEBUG_UART_HS
		select DEBUG_MSM_UART
		help
		  Say Y here if you want the debug print routines to direct
		  their output to the serial port on MSM 8660 devices.
		  Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
		  options based on your needs.

	config DEBUG_MSM8960_UART
		bool "Kernel low-level debugging messages via MSM 8960 UART"
		depends on ARCH_MSM8960
		select MSM_HAS_DEBUG_UART_HS
		select DEBUG_MSM_UART
	config DEBUG_QCOM_UARTDM
		bool "Kernel low-level debugging messages via QCOM UARTDM"
		depends on ARCH_QCOM
		help
		  Say Y here if you want the debug print routines to direct
		  their output to the serial port on MSM 8960 devices.
		  their output to the serial port on Qualcomm devices.

	config DEBUG_MSM8974_UART
		bool "Kernel low-level debugging messages via MSM 8974 UART"
		depends on ARCH_MSM8974
		select MSM_HAS_DEBUG_UART_HS
		select DEBUG_MSM_UART
		help
		  Say Y here if you want the debug print routines to direct
		  their output to the serial port on MSM 8974 devices.
		  ARCH      DEBUG_UART_PHYS   DEBUG_UART_BASE
		  MSM8X60   0x19c40000        0xf0040000
		  MSM8960   0x16440000        0xf0040000
		  MSM8974   0xf991e000        0xfa71e000

		  Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
		  options based on your needs.

	config DEBUG_MVEBU_UART
		bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
@@ -967,10 +950,6 @@ config DEBUG_STI_UART
	bool
	depends on ARCH_STI

config DEBUG_MSM_UART
	bool
	depends on ARCH_MSM || ARCH_QCOM

config DEBUG_LL_INCLUDE
	string
	default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
@@ -989,7 +968,7 @@ config DEBUG_LL_INCLUDE
				 DEBUG_IMX6Q_UART || \
				 DEBUG_IMX6SL_UART || \
				 DEBUG_IMX6SX_UART
	default "debug/msm.S" if DEBUG_MSM_UART
	default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
	default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
	default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
	default "debug/sti.S" if DEBUG_STI_UART
@@ -1053,6 +1032,7 @@ config DEBUG_UART_PHYS
	default 0x80230000 if DEBUG_PICOXCELL_UART
	default 0x808c0000 if ARCH_EP93XX
	default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
	default 0xa9a00000 if DEBUG_MSM_UART
	default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
	default 0xc0013000 if DEBUG_U300_UART
	default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
@@ -1068,6 +1048,7 @@ config DEBUG_UART_PHYS
				ARCH_ORION5X
	default 0xf7fc9000 if DEBUG_BERLIN_UART
	default 0xf8b00000 if DEBUG_HI3716_UART
	default 0xf991e000 if DEBUG_QCOM_UARTDM
	default 0xfcb00000 if DEBUG_HI3620_UART
	default 0xfe800000 if ARCH_IOP32X
	default 0xffc02000 if DEBUG_SOCFPGA_UART
@@ -1076,11 +1057,13 @@ config DEBUG_UART_PHYS
	default 0xfffff700 if ARCH_IOP33X
	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
		DEBUG_LL_UART_EFM32 || \
		DEBUG_UART_8250 || DEBUG_UART_PL01X
		DEBUG_UART_8250 || DEBUG_UART_PL01X || \
		DEBUG_MSM_UART || DEBUG_QCOM_UARTDM

config DEBUG_UART_VIRT
	hex "Virtual base address of debug UART"
	default 0xe0010fe0 if ARCH_RPC
	default 0xe1000000 if DEBUG_MSM_UART
	default 0xf0000be0 if ARCH_EBSA110
	default 0xf0009000 if DEBUG_CNS3XXX
	default 0xf01fb000 if DEBUG_NOMADIK_UART
@@ -1096,6 +1079,7 @@ config DEBUG_UART_VIRT
	default 0xf7fc9000 if DEBUG_BERLIN_UART
	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
	default 0xfa71e000 if DEBUG_QCOM_UARTDM
	default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
	default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
	default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
@@ -1134,7 +1118,8 @@ config DEBUG_UART_VIRT
	default 0xff003000 if DEBUG_U300_UART
	default DEBUG_UART_PHYS if !MMU
	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
		DEBUG_UART_8250 || DEBUG_UART_PL01X
		DEBUG_UART_8250 || DEBUG_UART_PL01X || \
		DEBUG_MSM_UART || DEBUG_QCOM_UARTDM

config DEBUG_UART_8250_SHIFT
	int "Register offset shift for the 8250 debug UART"
+5 −41
Original line number Diff line number Diff line
@@ -15,51 +15,15 @@
 *
 */

#if defined(CONFIG_ARCH_MSM7X00A) || defined(CONFIG_ARCH_QSD8X50)
#define MSM_UART1_PHYS        0xA9A00000
#define MSM_UART2_PHYS        0xA9B00000
#define MSM_UART3_PHYS        0xA9C00000
#elif defined(CONFIG_ARCH_MSM7X30)
#define MSM_UART1_PHYS        0xACA00000
#define MSM_UART2_PHYS        0xACB00000
#define MSM_UART3_PHYS        0xACC00000
#endif

#if defined(CONFIG_DEBUG_MSM_UART1)
#define MSM_DEBUG_UART_BASE	0xE1000000
#define MSM_DEBUG_UART_PHYS	MSM_UART1_PHYS
#elif defined(CONFIG_DEBUG_MSM_UART2)
#define MSM_DEBUG_UART_BASE	0xE1000000
#define MSM_DEBUG_UART_PHYS	MSM_UART2_PHYS
#elif defined(CONFIG_DEBUG_MSM_UART3)
#define MSM_DEBUG_UART_BASE	0xE1000000
#define MSM_DEBUG_UART_PHYS	MSM_UART3_PHYS
#endif

#ifdef CONFIG_DEBUG_MSM8660_UART
#define MSM_DEBUG_UART_BASE	0xF0040000
#define MSM_DEBUG_UART_PHYS	0x19C40000
#endif

#ifdef CONFIG_DEBUG_MSM8960_UART
#define MSM_DEBUG_UART_BASE	0xF0040000
#define MSM_DEBUG_UART_PHYS	0x16440000
#endif

#ifdef CONFIG_DEBUG_MSM8974_UART
#define MSM_DEBUG_UART_BASE	0xFA71E000
#define MSM_DEBUG_UART_PHYS	0xF991E000
#endif

	.macro	addruart, rp, rv, tmp
#ifdef MSM_DEBUG_UART_PHYS
	ldr	\rp, =MSM_DEBUG_UART_PHYS
	ldr	\rv, =MSM_DEBUG_UART_BASE
#ifdef CONFIG_DEBUG_UART_PHYS
	ldr	\rp, =CONFIG_DEBUG_UART_PHYS
	ldr	\rv, =CONFIG_DEBUG_UART_VIRT
#endif
	.endm

	.macro	senduart, rd, rx
#ifdef CONFIG_MSM_HAS_DEBUG_UART_HS
#ifdef CONFIG_DEBUG_QCOM_UARTDM
	@ Write the 1 character to UARTDM_TF
	str	\rd, [\rx, #0x70]
#else
@@ -68,7 +32,7 @@
	.endm

	.macro	waituart, rd, rx
#ifdef CONFIG_MSM_HAS_DEBUG_UART_HS
#ifdef CONFIG_DEBUG_QCOM_UARTDM
	@ check for TX_EMT in UARTDM_SR
	ldr	\rd, [\rx, #0x08]
	tst	\rd, #0x08
+0 −3
Original line number Diff line number Diff line
@@ -42,9 +42,6 @@ config ARCH_QSD8X50

endchoice

config MSM_HAS_DEBUG_UART_HS
	bool

config MSM_SOC_REV_A
	bool

+2 −0
Original line number Diff line number Diff line
@@ -2,7 +2,9 @@ config ARCH_QCOM
	bool "Qualcomm Support" if ARCH_MULTI_V7
	select ARCH_REQUIRE_GPIOLIB
	select ARM_GIC
	select ARM_AMBA
	select CLKSRC_OF
	select PINCTRL
	select QCOM_SCM if SMP
	help
	  Support for Qualcomm's devicetree based systems.