[PATCH 2/6] arm64: Add DTS support for Spreadtrum's Shark64 SoC
From: arnd@arndb.de (Arnd Bergmann)
Date: 2014-10-20 19:00:55
Also in:
linux-devicetree, lkml
On Wednesday 15 October 2014 11:17:07 Lyra Zhang wrote:
Hi, Arnd
Hi Lyra, Sorry for the late reply, I've been away travelling and am just now catching up on email. Have you found a solution or do you still need help with this? Arnd
2014-09-29 21:47 GMT+08:00 Arnd Bergmann [off-list ref]:quoted
On Monday 29 September 2014 20:04:49 zhang.lyra at gmail.com wrote:quoted
+ +/memreserve/ 0x80000000 0x00010000;Maybe add a comment explaining why it is reserved?quoted
+ chosen { + bootargs = "earlycon=serial_sprd,0x70000000"; + };Just remove this for now, the command line should really be set by the boot loader, not hardcoded in the dts file. IIRC, the earlycon=... syntax is not recommended on DT based systems, better use the "stdout-path" syntax instead.I have tried to use "stdout-path" instead of "bootargs= "earlycon= ..." like below : / { ... chosen { stdout-path = "/serial at 70000000"; }; uart0: serial at 70000000 { status="okay"; }; ... }; But then there is nothing output information on serial console.(I have been testing in Fast Model) I saw the below code in init/main.c /* Check for early params. */ static int __init do_early_param(char *param, char *val, const char *unused) { const struct obs_kernel_param *p; for (p = __setup_start; p < __setup_end; p++) { if ((p->early && parameq(param, p->str)) || (strcmp(param, "console") == 0 && strcmp(p->str, "earlycon") == 0) ) { if (p->setup_func(val) != 0) pr_warn("Malformed early option '%s'\n", param); } } /* We accept everything at this stage. */ return 0; } And I saw a patch from Grant Likely, he had a comment in it : "If the devicetree specifies a serial port as a stdout device, then the kernel can use it as the default console if nothing else was selected on the command line. For any serial port that uses the uart_add_one_port() feature, the uart_add_one_port() has all the information needed to automatically enable the console device, which is what this patch does." So, I guess that the reason why I can't see any output information on console after using "stdout-path" instead of "earlycon" is that I haven't a driver of Spreadtrum's serial, and dose not use the uart_add_one_port() feature. I don't know is correct what I guess. Could you give me some suggestions to solve this problem?