Say Y here if you want kernel low-level debugging support
                  on SOCFPGA based platforms.
 
+       config DEBUG_TEGRA_UART
+               depends on ARCH_TEGRA
+               bool "Use Tegra UART for low-level debug"
+               help
+                 Say Y here if you want kernel low-level debugging support
+                 on Tegra based platforms.
+
        config DEBUG_VEXPRESS_UART0_DETECT
                bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
                depends on ARCH_VEXPRESS && CPU_CP15_MMU
 
 endchoice
 
+choice
+       prompt "Low-level debug console UART"
+       depends on DEBUG_LL && DEBUG_TEGRA_UART
+
+       config TEGRA_DEBUG_UART_AUTO_ODMDATA
+       bool "Via ODMDATA"
+       help
+         Automatically determines which UART to use for low-level debug based
+         on the ODMDATA value. This value is part of the BCT, and is written
+         to the boot memory device using nvflash, or other flashing tool.
+         When bits 19:18 are 3, then bits 17:15 indicate which UART to use;
+         0/1/2/3/4 are UART A/B/C/D/E.
+
+       config TEGRA_DEBUG_UARTA
+               bool "UART A"
+
+       config TEGRA_DEBUG_UARTB
+               bool "UART B"
+
+       config TEGRA_DEBUG_UARTC
+               bool "UART C"
+
+       config TEGRA_DEBUG_UARTD
+               bool "UART D"
+
+       config TEGRA_DEBUG_UARTE
+               bool "UART E"
+
+endchoice
+
 config DEBUG_LL_INCLUDE
        string
        default "debug/icedcc.S" if DEBUG_ICEDCC
        default "debug/socfpga.S" if DEBUG_SOCFPGA_UART
        default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT || \
                DEBUG_VEXPRESS_UART0_CA9 || DEBUG_VEXPRESS_UART0_RS1
+       default "debug/tegra.S" if DEBUG_TEGRA_UART
        default "mach/debug-macro.S"
 
 config EARLY_PRINTK
 
          which controls AHB bus master arbitration and some
          perfomance parameters(priority, prefech size).
 
-choice
-        prompt "Low-level debug console UART"
-
-config TEGRA_DEBUG_UART_AUTO_ODMDATA
-       bool "Via ODMDATA"
-       help
-         Automatically determines which UART to use for low-level debug based
-         on the ODMDATA value. This value is part of the BCT, and is written
-         to the boot memory device using nvflash, or other flashing tool.
-         When bits 19:18 are 3, then bits 17:15 indicate which UART to use;
-         0/1/2/3/4 are UART A/B/C/D/E.
-
-config TEGRA_DEBUG_UARTA
-        bool "UART-A"
-
-config TEGRA_DEBUG_UARTB
-        bool "UART-B"
-
-config TEGRA_DEBUG_UARTC
-        bool "UART-C"
-
-config TEGRA_DEBUG_UARTD
-        bool "UART-D"
-
-config TEGRA_DEBUG_UARTE
-        bool "UART-E"
-
-endchoice
-
 config TEGRA_EMC_SCALING_ENABLE
        bool "Enable scaling the memory frequency"