x86: baytrail: Add option to disable the internal UART to setup_early_uart()
authorStefan Roese <sr@denx.de>
Tue, 19 Jan 2016 13:24:12 +0000 (14:24 +0100)
committerBin Meng <bmeng.cn@gmail.com>
Thu, 28 Jan 2016 05:53:30 +0000 (13:53 +0800)
This patch adds a parameter to the function setup_early_uart() to either
enable or disable the internal BayTrail legacy UART. Since the name
setup_early_uart() does not match its functionality any more, lets
rename it to setup_internal_uart() as well in this patch.

Signed-off-by: Stefan Roese <sr@denx.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
arch/x86/cpu/baytrail/early_uart.c
arch/x86/include/asm/u-boot-x86.h
arch/x86/lib/fsp/fsp_support.c
doc/README.x86

index b64a3a90db4ab7e1d10b9a20e3a0867a38031bab..471d592b49fddb45ed215bcf177311fdcec73a13 100644 (file)
@@ -59,11 +59,15 @@ static void x86_pci_write_config32(int dev, unsigned int where, u32 value)
 }
 
 /* This can be called after memory-mapped PCI is working */
-int setup_early_uart(void)
+int setup_internal_uart(int enable)
 {
-       /* Enable the legacy UART hardware. */
+       /* Enable or disable the legacy UART hardware */
        x86_pci_write_config32(PCI_DEV_CONFIG(0, LPC_DEV, LPC_FUNC), UART_CONT,
-                              1);
+                              enable);
+
+       /* All done for the disable part, so just return */
+       if (!enable)
+               return 0;
 
        /*
         * Set up the pads to the UART function. This allows the signals to
index 9c143caf670b84653d14eda57bf70b936b965c35..031740b708a8f5d660801f816db421af77e0a8fd 100644 (file)
@@ -45,7 +45,7 @@ void dram_init_banksize(void);
 int default_print_cpuinfo(void);
 
 /* Set up a UART which can be used with printch(), printhex8(), etc. */
-int setup_early_uart(void);
+int setup_internal_uart(int enable);
 
 void setup_pcat_compatibility(void);
 
index 875c96a8f19a47961b366d2f1ea400e3270ac347..29fa06098d1afb30f61e38683538ff62ce119b9f 100644 (file)
@@ -111,7 +111,7 @@ void fsp_init(u32 stack_top, u32 boot_mode, void *nvs_buf)
 #endif
 
 #ifdef CONFIG_DEBUG_UART
-       setup_early_uart();
+       setup_internal_uart(1);
 #endif
 
        fsp_hdr = find_fsp_header();
index 36aaef011de9956dc6f3a6921024f8458b8b1448..6d9cb10edc85233bf25536ba971eadcdb19474ba 100644 (file)
@@ -706,7 +706,7 @@ the board, then you can use post_code() calls from C or assembler to monitor
 boot progress. This can be good for debugging.
 
 If not, you can try to get serial working as early as possible. The early
-debug serial port may be useful here. See setup_early_uart() for an example.
+debug serial port may be useful here. See setup_internal_uart() for an example.
 
 During the U-Boot porting, one of the important steps is to write correct PIRQ
 routing information in the board device tree. Without it, device drivers in the