From: bhsharma@redhat.com (Bhupesh Sharma)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/2] RFC: Move efi bgrt code out of arch/x86
Date: Wed, 15 Feb 2017 18:34:50 +0530 [thread overview]
Message-ID: <1487163892-27701-1-git-send-email-bhsharma@redhat.com> (raw)
This patchset presents a RFC approach to move the ACPI BGRT table
handling related code out of 'arch/x86' and place it inside
'drivers/firmware/efi' so that it can be used to support
ACPI BGRT table and BGRT logo across x86 and AARCH64 ARCHs.
Note that this patchset is primarily tested on Qemu VMs for x86_64
and AARCH64 environments, while I try to get my hands on a real
AARCH64 hardware which supports a graphic card and whose boot firmware
I can modify to support the ACPI BGRT table to be passed to the kernel.
Here are some details/outputs about/from the test environment:
AARCH64:
========
1. I used the latest Qemu (master branch) and compiled it for aarch64 with softmmu support.
Here is the command line I use to launch the same:
# qemu-system-aarch64 -cpu cortex-a57 -M virt -m 2048 -bios QEMU_EFI.fd -kernel Image -initrd rootfs.cpio -serial stdio --append "acpi=force" -device virtio-gpu-pci
where, QEMU_EFI.fd is the DEBUG build of EDK2 ArmVirtQemu.dsc (master branch)
rootfs.cpio is the AARCH64 build of Buildroot (Little Endian AARCH64)
-device virtio-gpu-pci provides the Graphical support required to have BGRT logo.
2. Here are some test results once Linux boots up, which show a valid BGRT table/logo being
seen by the kernel:
# acpidump
...
BGRT @ 0x0000000000000000
0000: 42 47 52 54 38 00 00 00 01 B4 49 4E 54 45 4C 20 BGRT8.....INTEL
0010: 45 44 4B 32 20 20 20 20 02 00 00 00 20 20 20 20 EDK2 ....
0020: 13 00 00 01 01 00 01 00 00 80 B0 BA 00 00 00 00 ................
0030: 2F 01 00 00 0F 01 00 00 /.......
# dmesg | grep -i BGRT
[ 0.000000] ACPI: BGRT 0x00000000B8640000 000038 (v01 INTEL EDK2 00000002 01000013)
# ls -lah /sys/firmware/acpi/bgrt/image
-r--r--r-- 1 root root 32.9K Feb 15 11:27 /sys/firmware/acpi/bgrt/image
x86:
====
1. I used the latest Qemu (master branch) and compiled it for x86.
Here is the command line I use to launch the same:
# qemu-system-x86_64 -enable-kvm -sdl -m 2048 -vga std -boot c -cpu host -bios OVMF_CODE.fd -kernel bzImage -initrd rootfs.cpio -serial stdio
where, OVMF_CODE.fd is the RELEASE build of EDK2 OvmfPkg (master branch)
rootfs.cpio is the x86_64 build of Buildroot
2. Similar test results are seen as noted for the AARCH64 case above, which show a valid BGRT table/logo being
seen by the kernel.
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Dave Young <dyoung@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Bhupesh Sharma (2):
x86/efi-bgrt: Move efi-bgrt handling out of arch/x86
bgrt: Make ACPI BGRT parsing code common for ARCHs
arch/arm64/kernel/acpi.c | 3 +++
arch/x86/kernel/acpi/boot.c | 6 ------
arch/x86/platform/efi/Makefile | 1 -
drivers/acpi/Kconfig | 2 +-
drivers/acpi/bgrt.c | 6 ++++++
drivers/firmware/efi/Makefile | 1 +
{arch/x86/platform => drivers/firmware}/efi/efi-bgrt.c | 0
include/linux/efi-bgrt.h | 2 ++
8 files changed, 13 insertions(+), 8 deletions(-)
rename {arch/x86/platform => drivers/firmware}/efi/efi-bgrt.c (100%)
--
2.7.4
next reply other threads:[~2017-02-15 13:04 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-15 13:04 Bhupesh Sharma [this message]
2017-02-15 13:04 ` [PATCH 1/2] x86/efi-bgrt: Move efi-bgrt handling out of arch/x86 Bhupesh Sharma
2017-02-15 13:04 ` [PATCH 2/2] bgrt: Make ACPI BGRT parsing code common for ARCHs Bhupesh Sharma
2017-02-15 17:44 ` [PATCH 0/2] RFC: Move efi bgrt code out of arch/x86 Ard Biesheuvel
2017-02-15 23:44 ` Rafael J. Wysocki
2017-02-16 4:34 ` Bhupesh Sharma
2017-02-16 11:58 ` Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1487163892-27701-1-git-send-email-bhsharma@redhat.com \
--to=bhsharma@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).