From: Russell King - ARM Linux <linux@arm.linux.org.uk>
To: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Cc: Tomasz Figa <tomasz.figa@gmail.com>,
Richard Cochran <richardcochran@gmail.com>,
Arend van Spriel <arend@broadcom.com>,
Olof Johansson <olof@lixom.net>, Mark Brown <broonie@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"ksummit-2013-discuss@lists.linuxfoundation.org"
<ksummit-2013-discuss@lists.linuxfoundation.org>,
Ian Campbell <ian.campbell@citrix.com>,
Pawel Moll <Pawel.Moll@arm.com>,
Stephen Warren <swarren@wwwdotorg.org>,
Domenico Andreoli <cavokz@gmail.com>,
"rob.herring@calxeda.com" <rob.herring@calxeda.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Dave P Martin <Dave.Martin@arm.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [Ksummit-2013-discuss] DT bindings as ABI [was: Do we have people interested in device tree janitoring / cleanup?]
Date: Mon, 29 Jul 2013 19:27:30 +0100 [thread overview]
Message-ID: <20130729182730.GN24642@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <20130729180513.GB1884@obsidianresearch.com>
On Mon, Jul 29, 2013 at 12:05:13PM -0600, Jason Gunthorpe wrote:
> Clearly general purpose systems (eg servers, workstations, etc) with
> *full featured firmware* fall into category b. Linux already basically
> has stable DT for those systems - but the firmware is expected to do
> lots of work and hide all the low level details from the
> kernel. Basically, the DT should stick to approximately ePAR and
> everything else is hidden by the firmware. This is essentially how x86
> works and achieves its compatibility.
and the downside of placing that trust in firmware is that it very often
leads to bugs which can't be solved.
I have a set of patches for my laptop/docking station which gets the
serial/printer ports working. I've had them for many years now - and
I thought I had a problem sorted. I was wrong - the nice helpful ACPI
reports on dock that the serial port is enabled, but the port is
actually disabled in hardware.
If I have ACPI/PNP stuff setup to always believe that this port is
disabled, then on boot with the docking station connected, it comes up
initially as ttyS0, and then, because the port is "disabled", the
resources are busy so it gets reassigned to a different IO port.
Undocking/redocking works because the port is now properly re-enabled
after a dock event.
If I report the ACPI status to the kernel, then on boot, it correctly
remains as ttyS0. However, after an undock/redock event, Linux
believes that the port is back, but any attempt to use it gets the
"LSR safety check engaged" message, because the port is actually
disabled. The only way to get it working again is to manually unbind
the device and rebind it - so the ACPI disable + enable methods get
called.
I've had this problem for years, and it's basically unfixable for me -
it's only fixable if you are IBM and can reflash the BIOS with alternative
ACPI tables which are correct. And I won't submit these patches all the
time that I don't know they work correctly.
That's the problem with "compatible systems" - you give away trust that
someone else will do the right thing, and if they don't, you may be
screwed in a way that is can not be worked around by quirks or similar
- just like the above.
Firmware is swings and roundabouts. You give up some control to a
third party so you don't have to think about XYZ, and you hope that
they get it right.
next prev parent reply other threads:[~2013-07-29 18:28 UTC|newest]
Thread overview: 142+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-25 16:09 Olof Johansson
2013-07-25 17:57 ` Mark Rutland
2013-07-25 18:05 ` Stephen Warren
2013-07-25 18:25 ` Olof Johansson
2013-07-25 18:50 ` Stephen Warren
2013-07-25 19:30 ` [Ksummit-2013-discuss] " Mark Brown
2013-07-25 18:29 ` Mark Rutland
2013-07-25 18:48 ` Richard Cochran
2013-07-25 18:53 ` Stephen Warren
2013-07-25 21:41 ` Domenico Andreoli
2013-07-26 4:43 ` Richard Cochran
2013-07-25 21:37 ` Jason Gunthorpe
2013-07-26 4:54 ` Richard Cochran
2013-07-26 13:42 ` Rob Herring
2013-07-26 17:15 ` Jason Gunthorpe
2013-07-27 8:48 ` Richard Cochran
2013-07-27 10:40 ` [Ksummit-2013-discuss] " Mark Brown
2013-07-27 17:37 ` Richard Cochran
2013-07-27 17:57 ` David Lang
2013-07-27 18:17 ` Richard Cochran
2013-07-28 11:27 ` Mark Brown
2013-07-29 17:54 ` Jason Gunthorpe
2013-07-29 18:16 ` Russell King - ARM Linux
2013-07-29 18:40 ` Jason Gunthorpe
2013-07-27 8:53 ` Richard Cochran
2013-07-27 10:20 ` Tomasz Figa
2013-07-27 11:36 ` [Ksummit-2013-discuss] " Mark Brown
2013-07-27 18:07 ` Richard Cochran
2013-07-28 12:10 ` Mark Brown
2013-07-26 8:01 ` Richard Cochran
2013-07-26 9:42 ` [Ksummit-2013-discuss] " David Woodhouse
2013-07-26 13:09 ` Richard Cochran
2013-07-26 13:14 ` Russell King - ARM Linux
2013-07-27 15:28 ` David Gibson
2013-07-26 13:27 ` Jason Cooper
2013-07-26 13:38 ` Russell King - ARM Linux
2013-07-26 13:45 ` Jason Cooper
2013-07-26 13:50 ` David Woodhouse
2013-07-26 13:59 ` Jason Cooper
2013-07-26 13:41 ` David Woodhouse
2013-07-26 13:47 ` Jason Cooper
2013-07-26 14:14 ` jonsmirl
2013-07-26 14:16 ` David Woodhouse
2013-07-26 14:21 ` Russell King - ARM Linux
2013-07-26 14:39 ` jonsmirl
2013-07-26 14:40 ` Mark Brown
2013-07-29 15:32 ` Matt Porter
2013-07-27 15:19 ` David Gibson
2013-07-27 19:37 ` Grant Likely
2013-07-27 9:16 ` Ming Lei
2013-07-26 14:10 ` Mark Brown
2013-07-26 15:49 ` Olof Johansson
2013-07-26 16:36 ` Rob Herring
2013-07-27 4:57 ` Richard Cochran
2013-07-27 5:04 ` Richard Cochran
2013-07-27 9:51 ` Tomasz Figa
2013-07-27 10:24 ` Arend van Spriel
2013-07-27 10:34 ` Arend van Spriel
2013-07-27 11:09 ` Russell King - ARM Linux
2013-07-27 10:36 ` Tomasz Figa
2013-07-27 10:59 ` Arend van Spriel
2013-07-27 19:45 ` Grant Likely
2013-07-27 20:01 ` jonsmirl
2013-07-27 20:03 ` David Woodhouse
2013-07-27 20:25 ` Grant Likely
2013-07-28 3:28 ` Grant Likely
2013-07-28 5:11 ` James Bottomley
2013-07-28 5:13 ` Grant Likely
2013-07-30 1:44 ` David Gibson
2013-07-30 2:15 ` jonsmirl
2013-07-30 3:29 ` David Gibson
2013-07-30 4:35 ` Grant Likely
2013-07-30 8:39 ` Maxime Ripard
2013-07-30 16:30 ` Stephen Warren
2013-07-30 17:27 ` John W. Linville
2013-07-30 16:40 ` Stephen Warren
2013-07-29 9:19 ` Arend van Spriel
2013-07-29 10:16 ` Arend van Spriel
2013-07-27 18:31 ` Richard Cochran
2013-07-27 18:51 ` Tomasz Figa
2013-07-27 19:22 ` jonsmirl
2013-07-28 8:56 ` Richard Cochran
2013-07-28 9:12 ` Tomasz Figa
2013-07-28 13:19 ` Richard Cochran
2013-07-28 13:39 ` Tomasz Figa
2013-07-28 14:09 ` jonsmirl
2013-07-28 15:35 ` Richard Cochran
2013-07-28 15:50 ` jonsmirl
2013-07-28 17:41 ` Mark Brown
2013-07-28 21:46 ` David Gibson
2013-07-28 15:30 ` Richard Cochran
2013-07-29 7:31 ` Maxime Ripard
2013-07-29 18:38 ` Richard Cochran
2013-07-29 18:51 ` Richard Cochran
2013-07-29 18:05 ` Jason Gunthorpe
2013-07-29 18:27 ` Russell King - ARM Linux [this message]
2013-07-29 22:20 ` David Gibson
2013-07-29 23:14 ` Jason Gunthorpe
2013-07-29 23:49 ` David Gibson
2013-07-31 10:37 ` Maxime Bizon
2013-07-31 10:59 ` Tomasz Figa
2013-07-31 15:07 ` Richard Cochran
2013-07-31 15:23 ` Tomasz Figa
2013-07-31 19:12 ` Richard Cochran
2013-07-31 19:29 ` Tomasz Figa
2013-07-31 20:00 ` Richard Cochran
2013-07-31 20:14 ` Russell King - ARM Linux
2013-07-31 20:37 ` jonsmirl
2013-07-31 20:48 ` Russell King - ARM Linux
2013-07-31 21:26 ` jonsmirl
2013-08-01 9:57 ` Arend van Spriel
2013-08-01 10:09 ` Mark Brown
2013-08-01 10:18 ` David Woodhouse
2013-08-01 13:34 ` jonsmirl
2013-08-01 13:43 ` jonsmirl
2013-08-01 13:48 ` Rob Herring
2013-08-02 3:50 ` David Gibson
2013-08-13 23:32 ` H. Peter Anvin
2013-08-14 1:49 ` Guenter Roeck
2013-08-14 14:46 ` H. Peter Anvin
2013-08-02 8:49 ` Tony Lindgren
2013-07-29 15:45 ` Matt Porter
2013-07-31 12:58 ` Ian Campbell
2013-07-25 17:59 ` Stephen Warren
2013-07-25 19:11 ` Rob Herring
2013-07-25 19:31 ` Jason Cooper
2013-07-25 20:04 ` [Ksummit-2013-discuss] " Mark Brown
2013-07-25 20:08 ` Jason Cooper
2013-07-25 20:16 ` Rob Herring
2013-07-25 20:32 ` Jason Cooper
2013-07-25 21:53 ` [Ksummit-2013-discuss] " Ben Hutchings
2013-07-26 0:36 ` Stephen Warren
2013-07-26 12:14 ` Jason Cooper
2013-07-26 0:34 ` Stephen Warren
2013-07-26 22:11 ` Rob Herring
2013-07-25 23:18 ` Russell King - ARM Linux
2013-07-26 0:27 ` jonsmirl
2013-07-26 11:38 ` Jason Cooper
2013-07-26 14:08 ` [Ksummit-2013-discuss] " David Woodhouse
2013-07-26 13:57 ` Mark Brown
2013-07-26 10:55 ` Mark Brown
2013-07-28 4:39 ` Grant Likely
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=20130729182730.GN24642@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--cc=Dave.Martin@arm.com \
--cc=Pawel.Moll@arm.com \
--cc=arend@broadcom.com \
--cc=broonie@kernel.org \
--cc=cavokz@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=ian.campbell@citrix.com \
--cc=jgunthorpe@obsidianresearch.com \
--cc=ksummit-2013-discuss@lists.linuxfoundation.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=olof@lixom.net \
--cc=richardcochran@gmail.com \
--cc=rob.herring@calxeda.com \
--cc=swarren@wwwdotorg.org \
--cc=tomasz.figa@gmail.com \
/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
all inboxes | Powered by JetHome®