From: Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>
To: James Bottomley
<James.Bottomley-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
Cc: "Kweh,
Hock Leong"
<hock.leong.kweh-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
Ming Lei <ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>,
Matt Fleming
<matt-HNK1S37rvNbeXh+fF434Mdi2O/JbrIOy@public.gmane.org>,
"Ong,
Boon Leong"
<boon.leong.ong-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
LKML <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Sam Protsenko
<semen.protsenko-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Peter Jones <pjones-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Andy Lutomirski <luto-kltTT9wpgjJwATOyAt5JVQ@public.gmane.org>,
Roy Franz <roy.franz-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Borislav Petkov <bp-Gina5bIWoIWzQB+pC5nmwQ@public.gmane.org>
Subject: Re: [PATCH v4 2/2] efi: an sysfs interface for user to update efi firmware
Date: Thu, 23 Apr 2015 22:38:26 +0200 [thread overview]
Message-ID: <20150423203826.GE15251@kroah.com> (raw)
In-Reply-To: <1429805658.6624.2.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
On Thu, Apr 23, 2015 at 09:14:18AM -0700, James Bottomley wrote:
> > > OK, so this is what I'm trying to understand. Why isn't a pipe to
> > > firmware for something a "platform resource"? I think UEFI is in the
> > > same class as ACPI which uses platform devices all over.
> >
> > And I hate the fact that ACPI did that, but that ship has sailed a long
> > time ago. It "should" have been it's own bus and device type, but oh
> > well.
> >
> > For a "simple" bus-less device, that has no platform resources needed
> > (i.e from acpi or device tree), so you don't need the infrastructure
> > from the platform core, just use a simple device_create() call, that's
> > what it is there for.
>
> That's not confusing: ACPI shouldn't be a platform device, but something
> that is should have a platform resource provided by ACPI (or device tree).
>
> So I think the problem is that the documentation is wrong? Platform
> device isn't for "platform resources" like you said initially?
>
> Or do we have a more fundamental problem: You don't use the word
> "platform" the same way we do? A "platform" to most people on this
> thread is something designed to be delivered with the box that's not
> amenable to user modification. That's why we think of UEFI (and ACPI)
> as platform technologies: they come with the box (often they were
> specially crafted for it) and we use their services to discover stuff
> and correctly configure the OS. In this definition, almost everything
> we do via UEFI manipulates "platform resources".
Maybe we aren't using the word "platform" the same way.
Platform devices were originally created to handle all of the "cruft"
that a system has that used to be only at fixed locations on the
CPU/chipset, and were not on any real "bus". Things like timers,
keyboard controllers, and all of the odd embedded things that we just
"knew" where in memory they were located.
Then we got platform data structures, to help know "where" in memory
devices were to be able to write to, and board files interacted with
them that way.
Because of this, and how they were just so easy to create, lots of
developers were "lazy" and just put a platform device into their driver
instead of having to hook it up to an existing system, or actually write
a bus for it (I had an Intel laptop that shipped 1 year ago come with a
driver that used a platform device instead of a "real" i2c device like
the touchpad really was.
Then came device tree, which leveraged platform devices because that's
what they needed to control (replacing the board files.) Somewhere in
there ACPI also decided to use platform devices and it makes sense now,
as drivers just need to get a resource as to how to talk to the
hardware, and it doesn't matter if it comes from ACPI or device tree.
But for devices that are just "virtual", like this firmware loader, use
the virtual bus, which happens automatically when you don't provide a
parent to device_create(). That's what it is there for, your device
doesn't have to deal with any "resources" that it needs to read from
board files, device tree, or acpi, so it shouldn't be a platform device.
Hope that helps explain things better.
thanks,
greg k-h
prev parent reply other threads:[~2015-04-23 20:38 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-14 9:44 [PATCH v4 0/2] Enable capsule loader interface for efi firmware updating Kweh, Hock Leong
[not found] ` <1429004697-28320-1-git-send-email-hock.leong.kweh-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-04-14 9:44 ` [PATCH v4 1/2] firmware_loader: introduce new API - request_firmware_direct_full_path() Kweh, Hock Leong
2015-04-14 14:08 ` Greg Kroah-Hartman
2015-04-14 15:56 ` Andy Lutomirski
[not found] ` <CALCETrW_aXJ1iiXCa6aTE3r3J3EF_Njn5bb9=At_3ajCzPFSPg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-14 16:18 ` Borislav Petkov
[not found] ` <20150414161833.GE14069-fF5Pk5pvG8Y@public.gmane.org>
2015-04-15 10:14 ` Matt Fleming
[not found] ` <20150415101455.GB4804-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2015-04-15 10:18 ` Borislav Petkov
[not found] ` <20150415101805.GC2282-fF5Pk5pvG8Y@public.gmane.org>
2015-04-15 11:09 ` Matt Fleming
2015-04-15 13:15 ` Greg Kroah-Hartman
2015-04-15 15:53 ` Andy Lutomirski
[not found] ` <1429004697-28320-2-git-send-email-hock.leong.kweh-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-04-15 12:48 ` Matt Fleming
2015-04-14 9:44 ` [PATCH v4 2/2] efi: an sysfs interface for user to update efi firmware Kweh, Hock Leong
[not found] ` <1429004697-28320-3-git-send-email-hock.leong.kweh-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-04-14 14:09 ` Greg Kroah-Hartman
[not found] ` <20150414140914.GE5989-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2015-04-14 15:52 ` Andy Lutomirski
[not found] ` <CALCETrWeW8Gp9QFGCVhPmNo_Z+xsCJN7LYMPD6XNc92_dKMz3g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-15 13:20 ` Greg Kroah-Hartman
[not found] ` <20150415132000.GD21491-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2015-04-15 15:45 ` Andy Lutomirski
[not found] ` <CALCETrWUTjTLmwPZAwXrj06SwYaSX_7+XSTsVun2+HYC4wsqZQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-16 0:19 ` Roy Franz
[not found] ` <CAFECyb-bthi74VwkF8fpZg8ZpoyORmE5X+8dbRGG1uTP8RUm_A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-17 13:50 ` Greg KH
2015-04-15 11:32 ` Kweh, Hock Leong
[not found] ` <F54AEECA5E2B9541821D670476DAE19C2B8D2AEA-j2khPEwRog0FyVwBAnZdSLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-15 13:19 ` Greg Kroah-Hartman
2015-04-16 9:42 ` Kweh, Hock Leong
[not found] ` <F54AEECA5E2B9541821D670476DAE19C2B8D2E74-j2khPEwRog0FyVwBAnZdSLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-17 13:49 ` Greg Kroah-Hartman
2015-04-17 14:36 ` Matt Fleming
[not found] ` <20150417143640.GB3671-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2015-04-20 3:28 ` Kweh, Hock Leong
2015-04-20 14:43 ` Greg Kroah-Hartman
[not found] ` <20150420144323.GA7261-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2015-04-21 3:23 ` Kweh, Hock Leong
[not found] ` <F54AEECA5E2B9541821D670476DAE19C2CC11869-j2khPEwRog0FyVwBAnZdSLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-21 7:56 ` Greg Kroah-Hartman
[not found] ` <20150421075620.GA11000-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2015-04-22 1:21 ` James Bottomley
[not found] ` <1429665679.2207.44.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-22 1:58 ` Andy Lutomirski
2015-04-22 2:20 ` James Bottomley
[not found] ` <1429669228.2207.46.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-22 3:24 ` Andy Lutomirski
[not found] ` <CALCETrVsmQxoJ6WxVnW03Q9Hq8oH=zuv662S6TJxFwb26d=erQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-22 4:51 ` James Bottomley
[not found] ` <1429678269.18798.9.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-22 16:50 ` Andy Lutomirski
[not found] ` <CALCETrU5u5nUJB4i0KRPZGvXgohW5ojxxOOv-_pR2OLmypvXyw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-22 17:34 ` James Bottomley
[not found] ` <1429724049.2195.44.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-22 17:45 ` Andy Lutomirski
[not found] ` <CALCETrX9GZmWnfkm-CwKW-2mPvRbNcRaY6tUY=8e0THsPBKMcA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-22 13:27 ` Peter Jones
2015-04-22 15:18 ` James Bottomley
[not found] ` <1429715913.2195.22.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-22 15:24 ` One Thousand Gnomes
2015-04-23 8:30 ` Kweh, Hock Leong
2015-04-23 14:09 ` James Bottomley
[not found] ` <1429798187.2170.3.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-24 2:14 ` Kweh, Hock Leong
[not found] ` <F54AEECA5E2B9541821D670476DAE19C2CC12798-j2khPEwRog0FyVwBAnZdSLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-24 15:16 ` James Bottomley
[not found] ` <1429888575.2182.20.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-27 21:59 ` Andy Lutomirski
[not found] ` <CALCETrU2G10uGvdB6kVyfMPA=biuZwK7BAeqmKuY=jvN38K2wA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-27 22:35 ` James Bottomley
[not found] ` <1430174136.2314.49.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-27 22:40 ` Andy Lutomirski
[not found] ` <CALCETrXeh+y1XZrdDyhEmy+GK6z7-swZNPYGZybnqzppWAE+Wg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-27 22:51 ` James Bottomley
[not found] ` <1430175112.2314.56.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-29 11:23 ` Kweh, Hock Leong
2015-04-29 18:40 ` Andy Lutomirski
[not found] ` <CALCETrXBFBqwZ=A+zoC5Lj0Zr2_2hEkSBX0hrLZJRjyDWqjucA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-29 21:37 ` James Bottomley
2015-04-30 9:17 ` Kweh, Hock Leong
[not found] ` <F54AEECA5E2B9541821D670476DAE19C2CC142E1-j2khPEwRog0FyVwBAnZdSLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-30 17:55 ` Andy Lutomirski
[not found] ` <F54AEECA5E2B9541821D670476DAE19C2CC13F37-j2khPEwRog0FyVwBAnZdSLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-29 21:35 ` James Bottomley
2015-04-29 21:36 ` Andy Lutomirski
2015-04-29 21:39 ` James Bottomley
2015-04-29 21:42 ` Andy Lutomirski
2015-04-20 17:59 ` James Bottomley
[not found] ` <20150415131906.GC21491-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2015-04-22 15:35 ` James Bottomley
[not found] ` <1429716954.2195.28.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-22 15:46 ` Greg Kroah-Hartman
[not found] ` <20150422154620.GA32576-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2015-04-22 16:11 ` James Bottomley
[not found] ` <1429719077.2195.37.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-23 9:50 ` Greg Kroah-Hartman
2015-04-23 16:14 ` James Bottomley
[not found] ` <1429805658.6624.2.camel-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org>
2015-04-23 20:38 ` Greg Kroah-Hartman [this message]
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=20150423203826.GE15251@kroah.com \
--to=gregkh-hqyy1w1ycw8ekmwlsbkhg0b+6bgklq7r@public.gmane.org \
--cc=James.Bottomley-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk@public.gmane.org \
--cc=boon.leong.ong-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=bp-Gina5bIWoIWzQB+pC5nmwQ@public.gmane.org \
--cc=hock.leong.kweh-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=luto-kltTT9wpgjJwATOyAt5JVQ@public.gmane.org \
--cc=matt-HNK1S37rvNbeXh+fF434Mdi2O/JbrIOy@public.gmane.org \
--cc=ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org \
--cc=pjones-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=roy.franz-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=semen.protsenko-QSEj5FYQhm4dnm+yROfE0A@public.gmane.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).