On Thursday 26 February 2015 17:18:41 Chanwoo Choi wrote:
> I add following aliases and serial_1/serial_3 dt node in board dtsi:
> I tested that change the alias of serial_x node.
>         
>         aliases {
>                 serial0 = &serial_1;
>                 serial1 = &serial_3;
>         };
> 
>         /* Add 'linux,stdout-path' property to print kernel log by using 
> ealycon */
>         chosen {
>                 linux,stdout-path = &serial_1;
>         };
> 
>         [snip]
> 
>         /* serial_1 is used for printing kernel log throught JIG cable */
>         &serial_1 {
>                 status = "okay";
>         };
> 
>         &serial_3 {
>                 status = "okay";
>         };
> 
> In result, serial driver create the /dev/ttySAC0 for serial_1 and 
> /dev/ttySAC1 for serial_3.
> But, I cannot complete the kernel booting and stop it with following kernel 
> log
> 
> [    0.000000] Booting Linux on physical CPU 0x100
> [    0.000000] Initializing cgroup subsys cpuset
> [    0.000000] Initializing cgroup subsys cpu
> [    0.000000] Initializing cgroup subsys cpuacct
> [    0.000000] Linux version 4.0.0-rc1-00066-g49bfcec-dirty (cwchoi00@chan) 
> (gcc version 4.9.2 20140904 (prerelease) (crosstool-NG l5
> [snip]
> [    0.000000] Kernel command line: console=ttySAC1,115200 
> earlycon=exynos4210,0x14C20000

What is the "earlycon=exynos4210,0x14C20000" doing here? Should that not just be
"earlycon=exynos" or something like that when you set the correct stdout-path?

> [snip]
> [    0.651647] dma-pl330 15610000.pdma: Loaded driver for PL330 DMAC-341330
> [    0.651851] dma-pl330 15610000.pdma:         DBUFF-32x4bytes Num_Chans-8 
> Num_Peri-32 Num_Events-32
> [    0.658566] dma-pl330 15600000.pdma: Loaded driver for PL330 DMAC-341330
> [    0.662872] dma-pl330 15600000.pdma:         DBUFF-32x4bytes Num_Chans-8 
> Num_Peri-32 Num_Events-32
> [    0.672487] dma-pl330 11420000.adma: Loaded driver for PL330 DMAC-341330
> [ 8466.414900] dma-pl330 11420000.adma:         DBUFF-8x8bytes Num_Chans-8 
> Num_Peri-16 Num_Events-8
> [ 8466.481648] 14c20000.serial: ttySAC0 at MMIO 0x14c20000 (irq = 21, 
> base_baud = 0) is a S3C6400/10
> (dont' print any kernel log)
> 
> So, I change the kernel command line about ('console' bootparam) as following:
> because tty framework must use the 'console' bootparam to print kernel log.
> - original     : Kernel command line: console=ttySAC1,115200 ... (cannot the 
> kernel log from serial driver probed)
> - modification : Kernel command line: console=ttySAC0,115200 ... (got the 
> successful kernel booting)
> 
> After modification, I got the successful kernel booting.
> 
> If should use the serial_0 device and then modify the 'aliases' as following:
> I have to modify the commandline of bootloader if the commandline of 
> bootloader is used
> instad of default kernel command line.
> 
>         aliases {
>                 serial0 = &serial_0;
>                 serial1 = &serial_1;
>                 serial2 = &serial_3;
>         };

If you need the numbers to match, maybe there is still a bug in the serial port
driver and it uses some arbitrary number (e.g. probe order, or ascending
MMIO address) for the console instead of the alias?

        Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to