Re: SPCR / SSDT generation in the DynamicTablesPkg


Sami Mujawar <Sami.Mujawar@...>
 

Hi Irene, Jeff,

 

If I understand correctly, when the HID is PNP0501 the Linux driver ‘drivers\tty\serial\8250\8250_pnp.c’ is setting ‘uart.port.iotype = UPIO_MEM;’

This results in the read/write access size being 1 byte. Is this the problem you are seeing?

 

If so, are you intending to change the HID in your serial port SSDT? Or you are defining a property to specify the access size?

 

Please let me know. I am thinking if this problem can be solved more generically.

 

With regards to SSDT generation I can see a few options here:

1. Implement a SsdtSerialPortFixupLib for your platform.

    This would mean implementing the interfaces in https://github.com/tianocore/edk2/blob/master/DynamicTablesPkg/Include/Library/SsdtSerialPortFixupLib.h

 

2. A Feature PCD DisableUartSsdtGeneration could be introduced with the default value being FALSE.

 

I would prefer Option 1 as it would keep the Dynamic Tables Core code SBBR compliant.

 

Regards,

 

Sami Mujawar

 

From: Jeff Brasen <jbrasen@...>
Sent: 18 November 2020 09:36 AM
To: discuss@edk2.groups.io; Irene Park <ipark@...>; Sami Mujawar <Sami.Mujawar@...>; Pierre Gondois <Pierre.Gondois@...>; Alexei Fedorov <Alexei.Fedorov@...>
Subject: Re: [edk2-discuss] SPCR / SSDT generation in the DynamicTablesPkg

 

To add a little more detail on what we were seeing our 16550 based serial has 4 byte spacing which the SPCR table is generated with correctly but then the dynamic table code creates a SSDT with the standard pnp hid/cid in the ssdt table which at least from my reading of the Linux driver looks like that only uses 1 byte spacing between registers. It is possible I missed something though.

Thanks,

Jeff


From: Irene Park <ipark@...>
Sent: Wednesday, November 18, 2020 1:16:10 AM
To:
discuss@edk2.groups.io <discuss@edk2.groups.io>; Irene Park <ipark@...>; Sami.Mujawar@... <Sami.Mujawar@...>; pierre.gondois@... <pierre.gondois@...>; Alexei Fedorov <Alexei.Fedorov@...>; Jeff Brasen <jbrasen@...>
Subject: RE: [edk2-discuss] SPCR / SSDT generation in the DynamicTablesPkg

 

Hi Sami, Pierre, Alexei,
I wonder your thought about this topic.
Thank you,
Irene

-----Original Message-----
From: discuss@edk2.groups.io <discuss@edk2.groups.io> On Behalf Of Irene Park
Sent: Tuesday, November 17, 2020 3:28 AM
To: discuss@edk2.groups.io
Subject: [edk2-discuss] SPCR / SSDT generation in the DynamicTablesPkg

External email: Use caution opening links or attachments


The latest patches to the DynamicTablesPkg help an SSDT generated to meet the SBBR requirement when an SPCR generation is desired.
But the auto-generated SSDT might be unable to describe the compatible but custom 16550 device on the non-SBBR compliant platform.
I wonder if an SSDT generation would be manageable when a user doesn't want to.

Thank you,
Irene




IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

Join discuss@edk2.groups.io to automatically receive all group messages.