Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1320262 > unrolled thread
| Started by | "Gabriel L. Somlo" <somlo@cmu.edu> |
|---|---|
| First post | 2016-01-28 04:20 +0100 |
| Last post | 2016-01-28 04:20 +0100 |
| Articles | 2 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH v6 0/5] add ACPI node for fw_cfg on pc and arm "Gabriel L. Somlo" <somlo@cmu.edu> - 2016-01-28 04:20 +0100
[PATCH v6 5/5] fw_cfg: document ACPI device node information "Gabriel L. Somlo" <somlo@cmu.edu> - 2016-01-28 04:20 +0100
| From | "Gabriel L. Somlo" <somlo@cmu.edu> |
|---|---|
| Date | 2016-01-28 04:20 +0100 |
| Subject | [PATCH v6 0/5] add ACPI node for fw_cfg on pc and arm |
| Message-ID | <qVLhL-5vZ-3@gated-at.bofh.it> |
New since v5: - rebased on top of latest QEMU git master Thanks, --Gabriel >New since v4: > > - rebased on top of Marc's DMA series > - drop machine compat dependency for insertion into x86/ssdt > (patch 3/5), following agreement between Igor and Eduardo > - [mm]io register range now covers DMA register as well, if > available. > - s/bios/firmware in doc file updates > >>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! >> >>>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 | 29 +++++++++++++++++++++++++++++ hw/i386/pc.c | 5 ++--- hw/nvram/fw_cfg.c | 4 +++- include/hw/i386/pc.h | 2 ++ include/hw/nvram/fw_cfg.h | 3 +++ 7 files changed, 63 insertions(+), 4 deletions(-) -- 2.4.3
[toc] | [next] | [standalone]
| From | "Gabriel L. Somlo" <somlo@cmu.edu> |
|---|---|
| Date | 2016-01-28 04:20 +0100 |
| Subject | [PATCH v6 5/5] fw_cfg: document ACPI device node information |
| Message-ID | <qVLhM-5vZ-33@gated-at.bofh.it> |
| In reply to | #1320262 |
Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Marc MarĂ <markmb@redhat.com> --- docs/specs/fw_cfg.txt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/specs/fw_cfg.txt b/docs/specs/fw_cfg.txt index 2099ad9..5414140 100644 --- a/docs/specs/fw_cfg.txt +++ b/docs/specs/fw_cfg.txt @@ -84,6 +84,15 @@ Selector Register address: Base + 8 (2 bytes) Data Register address: Base + 0 (8 bytes) DMA Address address: Base + 16 (8 bytes) +== ACPI Interface == + +The fw_cfg device is defined with ACPI ID "QEMU0002". Since we expect +ACPI tables to be passed into the guest through the fw_cfg device itself, +the guest-side firmware can not use ACPI to find fw_cfg. However, once the +firmware is finished setting up ACPI tables and hands control over to the +guest kernel, the latter can use the fw_cfg ACPI node for a more accurate +inventory of in-use IOport or MMIO regions. + == Firmware Configuration Items == === Signature (Key 0x0000, FW_CFG_SIGNATURE) === -- 2.4.3
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web