[U-Boot] [PATCH v1 2/2] WIP: x86: acpi: Generate SPCR table
Andy Shevchenko
andriy.shevchenko at linux.intel.com
Thu Nov 15 16:06:33 UTC 2018
On Tue, Sep 25, 2018 at 10:27:33AM +0800, Bin Meng wrote:
> On Sat, Sep 22, 2018 at 9:05 PM Andy Shevchenko
> <andriy.shevchenko at linux.intel.com> wrote:
> > +/* SPCR (Serial Port Console Redirection table) */
> > +struct __packed acpi_spcr {
> > + struct acpi_table_header header; /* Common ACPI table header */
> > + u8 interface_type; /* 0=full 16550, 1=subset of 16550 */
> > + u8 reserved[3];
> > + struct acpi_gen_regaddr serial_port; /* The base address of the Serial Port register set */
> > + u8 interrupt_type;
> > + u8 pc_interrupt;
> > + u32 interrupt; /* Global system interrupt */
> > + u8 baud_rate;
> > + u8 parity;
> > + u8 stop_bits;
> > + u8 flow_control;
> > + u8 terminal_type;
> > + u8 reserved1;
> > + u16 pci_device_id; /* Must be 0xffff if not PCI device */
> > + u16 pci_vendor_id; /* Must be 0xffff if not PCI device */
> > + u8 pci_bus;
> > + u8 pci_device;
> > + u8 pci_function;
> > + u32 pci_flags;
> > + u8 pci_segment;
> > + u32 reserved2;
> > +};
> I see not every member of 'struct __packed acpi_spcr' is populated.
> Are they not used by kernel? If kernel does not use it, it is used by
> Windows?
No idea about Windows, but there are two statements:
- *not all* should be filled, otherwise it would be contradictory
(PCI vs. non-PCI device, for example)
- Linux doesn't use all of them, indeed
--
With Best Regards,
Andy Shevchenko
More information about the U-Boot
mailing list