On 09/29/15 12:27, Michael S. Tsirkin wrote:
> On Sun, Sep 27, 2015 at 05:28:57PM -0400, Gabriel L. Somlo wrote:
>> New since v3:
>>
>>      - rebased to work on top of 87e896ab (introducing pc-*-25 classes),
>>        inserting fw_cfg acpi node only for machines >= 2.5.
>>
>>      - reintroduce _STA with value 0x0B (bit 2 for u/i visibility turned
>>        off to avoid Windows complaining -- thanks Igor for catching that!)
>>
>> If there's any other feedback besides questions regarding the
>> appropriateness of "QEMU0002" as the value of _HID, please don't hesitate!
>>
>> Thanks much,
>>   --Gabriel
> 
> How does /proc/ioports look before and after this patch?

... I vaguely remember that /proc/ioports and /proc/iomem tracks only
actual allocations by drivers. So the driver is supposed to get the
resources from ACPI, but until a driver actually allocates the ports (I
fail to recall the exact Linux APIs ATM -- apologies), the registers
might not show up in these pseudo-files.

OTOH Gabriel is working on a guest kernel driver that would look at ACPI
I think...

Laszlo

> 
> 
>>> New since v2:
>>>
>>>     - pc/i386 node in ssdt only on machine types *newer* than 2.4
>>>       (as suggested by Eduardo)
>>>
>>> I appreciate any further comments and reviews. Hopefully we can make
>>> this palatable for upstream, modulo the lingering concerns about whether
>>> "QEMU0002" is ok to use as the value of _HID, which I'll hopefully get
>>> sorted out with the kernel crew...
>>>
>>>> New since v1:
>>>>
>>>>    - expose control register size (suggested by Marc MarĂ­)
>>>>
>>>>    - leaving out _UID and _STA fields (thanks Shannon & Igor)
>>>>
>>>>    - using "QEMU0002" as the value of _HID (thanks Michael)
>>>>
>>>>    - added documentation blurb to docs/specs/fw_cfg.txt
>>>>      (mainly to record usage of the "QEMU0002" string with fw_cfg).
>>>>
>>>>> This series adds a fw_cfg device node to the SSDT (on pc), or to the
>>>>> DSDT (on arm).
>>>>>
>>>>>   - Patch 1/3 moves (and renames) the BIOS_CFG_IOPORT (0x510)
>>>>>     define from pc.c to pc.h, so that it could be used from
>>>>>     acpi-build.c in patch 2/3.
>>>>>
>>>>>   - Patch 2/3 adds a fw_cfg node to the pc SSDT.
>>>>>
>>>>>   - Patch 3/3 adds a fw_cfg node to the arm DSDT.
>>>>>
>>>>> I made up some names - "FWCF" for the node name, and "FWCF0001"
>>>>> for _HID; no idea whether that's appropriate, or how else I should
>>>>> figure out what to use instead...
>>>>>
>>>>> Also, using scope "\\_SB", based on where fw_cfg shows up in the
>>>>> output of "info qtree". Again, if that's wrong, please point me in
>>>>> the right direction.
>>>>>
>>>>> Re. 3/3 (also mentioned after the commit blurb in the patch itself),
>>>>> I noticed none of the other DSDT entries contain a _STA field, wondering
>>>>> why it would (not) make sense to include that, same as on the PC.
>>
>> Gabriel L. Somlo (5):
>>   fw_cfg: expose control register size in fw_cfg.h
>>   pc: fw_cfg: move ioport base constant to pc.h
>>   acpi: pc: add fw_cfg device node to ssdt
>>   acpi: arm: add fw_cfg device node to dsdt
>>   fw_cfg: document ACPI device node information
>>
>>  docs/specs/fw_cfg.txt     |  9 +++++++++
>>  hw/arm/virt-acpi-build.c  | 15 +++++++++++++++
>>  hw/i386/acpi-build.c      | 23 +++++++++++++++++++++++
>>  hw/i386/pc.c              |  5 ++---
>>  hw/i386/pc_piix.c         |  1 +
>>  hw/i386/pc_q35.c          |  1 +
>>  hw/nvram/fw_cfg.c         |  8 +++++---
>>  include/hw/i386/pc.h      |  3 +++
>>  include/hw/nvram/fw_cfg.h |  3 +++
>>  9 files changed, 62 insertions(+), 6 deletions(-)
>>
>> -- 
>> 2.4.3


Reply via email to