diff mbox

[v11,2/4] ACPI: parse SPCR and enable matching console

Message ID 20170911110522.vwgwnohjrrj2twtk@bivouac.eciton.net (mailing list archive)
State New, archived
Headers show

Commit Message

Leif Lindholm Sept. 11, 2017, 11:05 a.m. UTC
I'm afraid Aleksey is no longer assigned to Linaro (you will probably
have seen a bounce).

On Mon, Sep 11, 2017 at 11:11:49AM +0200, Andreas Schwab wrote:
> On Sep 27 2016, Aleksey Makarov <aleksey.makarov@linaro.org> wrote:
> 
> > 'ARM Server Base Boot Requiremets' [1] mentions SPCR (Serial Port
> > Console Redirection Table) [2] as a mandatory ACPI table that
> > specifies the configuration of serial console.
> >
> > Defer initialization of DT earlycon until ACPI/DT decision is made.
> >
> > Parse the ACPI SPCR table, setup earlycon if required,
> > enable specified console.
> 
> How can I tell the kernel to ignore this table and use the console on
> the command line instead?

I guess we could just ignore the table completely
	if (console_set_on_cmdline)
like its counterpart in of_console_check().

Like so (not tested beyond compile testing):

Are you asking because you want to use a different console in a lab
setup or because there are issues with SPCR on your platform?

/
    Leif

Comments

Andreas Schwab Sept. 11, 2017, 11:39 a.m. UTC | #1
On Sep 11 2017, Leif Lindholm <leif.lindholm@linaro.org> wrote:

> Are you asking because you want to use a different console in a lab
> setup or because there are issues with SPCR on your platform?

The console from the SPCR is not the one forwarded by the BMC.

Andreas.
Graeme Gregory Sept. 11, 2017, 12:24 p.m. UTC | #2
On 11 September 2017 at 12:39, Andreas Schwab <schwab@suse.de> wrote:
> On Sep 11 2017, Leif Lindholm <leif.lindholm@linaro.org> wrote:
>
>> Are you asking because you want to use a different console in a lab
>> setup or because there are issues with SPCR on your platform?
>
> The console from the SPCR is not the one forwarded by the BMC.
>
Considering the SPCR table in question seems mildly insane, you could
always unload the SPCR in grub.

Graeme
Andreas Schwab Sept. 11, 2017, 12:28 p.m. UTC | #3
On Sep 11 2017, Graeme Gregory <graeme.gregory@linaro.org> wrote:

> Considering the SPCR table in question seems mildly insane, you could
> always unload the SPCR in grub.

How do you "unload the SPCR"?  But in any case, console= should always
take precedence.

Andreas.
Graeme Gregory Sept. 11, 2017, 1:03 p.m. UTC | #4
On 11 September 2017 at 13:28, Andreas Schwab <schwab@suse.de> wrote:
> On Sep 11 2017, Graeme Gregory <graeme.gregory@linaro.org> wrote:
>
>> Considering the SPCR table in question seems mildly insane, you could
>> always unload the SPCR in grub.
>
> How do you "unload the SPCR"?  But in any case, console= should always
> take precedence.
>
Ah apologies, I thought the acpi command in grub could delete a table,
but it seems it cannot.

Graeme
Leif Lindholm Sept. 11, 2017, 1:23 p.m. UTC | #5
On Mon, Sep 11, 2017 at 02:28:20PM +0200, Andreas Schwab wrote:
> On Sep 11 2017, Graeme Gregory <graeme.gregory@linaro.org> wrote:
> 
> > Considering the SPCR table in question seems mildly insane, you could
> > always unload the SPCR in grub.
> 
> How do you "unload the SPCR"?  But in any case, console= should always
> take precedence.

I am not saying it shouldn't. But you should probably talk to your
supplier with regards to fixing their system.

The BMC knows which console you are attached to, and the firmware
still instructs the kernel to use something else.

/
    Leif
diff mbox

Patch

diff --git a/drivers/acpi/spcr.c b/drivers/acpi/spcr.c
index 324b35bfe781..c3cf0f1ebb8f 100644
--- a/drivers/acpi/spcr.c
+++ b/drivers/acpi/spcr.c
@@ -96,6 +96,9 @@  int __init parse_spcr(bool earlycon)
        int baud_rate;
	        int err;

+       if (console_set_on_cmdline)
+               return 0;
+
        if (acpi_disabled)
	                return -ENODEV;