Thread (25 messages) 25 messages, 7 authors, 2014-10-21

[PATCH 2/6] arm64: Add DTS support for Spreadtrum's Shark64 SoC

From: zhang.lyra@gmail.com (Lyra Zhang)
Date: 2014-10-21 01:28:49
Also in: linux-devicetree, lkml

Hi, Arnd

This problem have been solved, and was submitted in v2.
Thanks for your answer to the question(which Orson asked for me) about
this on Freenode.

Best regards,
Lyra

2014-10-21 3:00 GMT+08:00 Arnd Bergmann [off-list ref]:
On Wednesday 15 October 2014 11:17:07 Lyra Zhang wrote:
quoted
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
quoted
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?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help