From: Matt Fleming <matt@codeblueprint.co.uk>
To: Lukas Wunner <lukas@wunner.de>
Cc: linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org,
Andreas Noever <andreas.noever@gmail.com>,
x86@kernel.org, linux-acpi@vger.kernel.org
Subject: Re: [PATCH 0/6] Apple device properties
Date: Mon, 15 Aug 2016 12:54:14 +0100 [thread overview]
Message-ID: <20160815115414.GE30909@codeblueprint.co.uk> (raw)
In-Reply-To: <20160809133816.GA6571@wunner.de>
On Tue, 09 Aug, at 03:38:16PM, Lukas Wunner wrote:
> @@ -208,7 +201,10 @@ struct efi_config {
> __pure const struct efi_config *__efi_early(void);
>
> #define efi_call_early(f, ...) \
> - __efi_early()->call(__efi_early()->f, __VA_ARGS__);
> + __efi_early()->call(__efi_early()->is64 ? \
> + ((efi_boot_services_64_t *)__efi_early()->boot_services)->f : \
> + ((efi_boot_services_32_t *)__efi_early()->boot_services)->f, \
> + __VA_ARGS__);
>
You cannot use pointers from the firmware directly in mixed mode
because the kernel is compiled for 64-bits but the firmware is using
32-bit addresses, so dereferencing a pointer causes a 64-bit load.
That's the reason we deconstruct the tables and copy the addresses
from the last level - so we don't have to jump through multiple
pointers.
next prev parent reply other threads:[~2016-08-15 11:54 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-27 11:20 [PATCH 0/6] Apple device properties Lukas Wunner
2016-07-27 11:20 ` Lukas Wunner
[not found] ` <cover.1469616641.git.lukas-JFq808J9C/izQB+pC5nmwQ@public.gmane.org>
2016-07-27 11:20 ` [PATCH 4/6] driver core: Don't leak secondary fwnode on device removal Lukas Wunner
2016-07-27 11:20 ` Lukas Wunner
2016-08-17 0:38 ` Rafael J. Wysocki
2016-08-30 9:03 ` Lukas Wunner
2016-09-12 22:03 ` Rafael J. Wysocki
2016-07-27 11:20 ` [PATCH 3/6] efi: Add device path parser Lukas Wunner
2016-07-27 11:20 ` [PATCH 1/6] efi: Retrieve Apple device properties Lukas Wunner
2016-07-27 11:20 ` Lukas Wunner
2016-07-30 19:16 ` Andrei Borzenkov
2016-07-30 19:16 ` Andrei Borzenkov
2016-08-04 15:13 ` Matt Fleming
2016-08-04 15:13 ` Matt Fleming
2016-08-05 11:42 ` Lukas Wunner
2016-08-05 11:42 ` Lukas Wunner
2016-08-05 12:06 ` Matt Fleming
2016-07-27 11:20 ` [PATCH 2/6] ACPI / bus: Make acpi_get_first_physical_node() public Lukas Wunner
2016-08-17 0:38 ` Rafael J. Wysocki
[not found] ` <1821462.QyPXGhZaWJ-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2016-09-12 22:03 ` Rafael J. Wysocki
2016-09-12 22:03 ` Rafael J. Wysocki
2016-07-27 11:20 ` [PATCH 6/6] thunderbolt: Use Device ROM retrieved from EFI Lukas Wunner
2016-07-27 11:20 ` [PATCH 5/6] efi: Assign Apple device properties Lukas Wunner
[not found] ` <a0edd928ab099682c2cb4c4544c599573144d03a.1469616641.git.lukas-JFq808J9C/izQB+pC5nmwQ@public.gmane.org>
2016-08-04 15:52 ` Matt Fleming
2016-08-04 15:52 ` Matt Fleming
2016-07-27 23:48 ` [PATCH 0/6] " Rafael J. Wysocki
2016-07-27 23:48 ` Rafael J. Wysocki
2016-07-28 0:25 ` [PATCH 2/6] ACPI / bus: Make acpi_get_first_physical_node() public Lukas Wunner
2016-07-28 0:25 ` [PATCH 3/6] efi: Add device path parser Lukas Wunner
2016-07-28 0:25 ` [PATCH 6/6] thunderbolt: Use Device ROM retrieved from EFI Lukas Wunner
2016-07-28 0:25 ` [PATCH 1/6] efi: Retrieve Apple device properties Lukas Wunner
2016-07-28 0:25 ` [PATCH 5/6] efi: Assign " Lukas Wunner
2016-07-28 0:25 ` [PATCH 4/6] driver core: Don't leak secondary fwnode on device removal Lukas Wunner
2016-08-04 14:57 ` [PATCH 0/6] Apple device properties Matt Fleming
2016-08-09 13:38 ` Lukas Wunner
2016-08-15 11:54 ` Matt Fleming [this message]
2016-08-15 16:13 ` Lukas Wunner
2016-08-18 20:34 ` Matt Fleming
[not found] ` <20160818203433.GP30909-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2016-08-22 9:58 ` Lukas Wunner
2016-08-22 9:58 ` Lukas Wunner
2016-08-24 19:49 ` Matt Fleming
-- strict thread matches above, loose matches on Subject: below --
2016-07-28 0:25 Lukas Wunner
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=20160815115414.GE30909@codeblueprint.co.uk \
--to=matt@codeblueprint.co.uk \
--cc=andreas.noever@gmail.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=x86@kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.