From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: Octavian Purdila <octavian.purdila@intel.com>
Cc: "Rafael J . Wysocki" <rjw@rjwysocki.net>,
Len Brown <lenb@kernel.org>,
Matt Fleming <matt@codeblueprint.co.uk>,
Mark Brown <broonie@kernel.org>, Wolfram Sang <wsa@the-dreams.de>,
Joel Becker <jlbec@evilplan.org>,
linux-acpi@vger.kernel.org, linux-efi@vger.kernel.org,
linux-i2c@vger.kernel.org, linux-spi@vger.kernel.org,
linux-kernel@vger.kernel.org, irina.tirdea@intel.com,
leonard.crestez@intel.com
Subject: Re: [PATCH v5 2/8] acpi: fix enumeration (visited) flags for bus rescans
Date: Wed, 6 Jul 2016 18:03:17 +0300 [thread overview]
Message-ID: <20160706150317.GH23527@lahna.fi.intel.com> (raw)
In-Reply-To: <1467404352-27101-3-git-send-email-octavian.purdila@intel.com>
On Fri, Jul 01, 2016 at 11:19:06PM +0300, Octavian Purdila wrote:
> If the ACPI tables changes as a result of a dinamically loaded table and
> a bus rescan is required the enumeration/visited flag are not
> consistent.
>
> I2C/SPI are not directly enumerated in acpi_bus_attach(), however the
> visited flag is set. This makes it impossible to check if an ACPI device
> has already been enumerated by the I2C and SPI subsystems. To fix this
> issue we only set the visited flags if the device is not I2C or SPI.
>
> With this change we also need to remove setting visited to false from
> acpi_bus_attach(), otherwise if we rescan already enumerated I2C/SPI
> devices we try to re-enumerate them.
>
> Note that I2C/SPI devices can be enumerated either via a scan handler
> (when using PRP0001) or via regular device_attach(). In either case
> the flow goes through acpi_default_enumeration() which makes it the
> ideal place to mark the ACPI device as enumerated.
Hmm, this somehow fails to enumerate PRP0001 devices.
I'm adding following SSDT to my initrd and the resulting device is never
enumerated on SPI bus (it exists in /sys/bus/acpi/devices). If I use
normal ACPI IDs (non-PRP0001) then it works fine.
/*
* Minnowboard MAX
*
* http://wiki.minnowboard.org/MinnowBoard_MAX
*
* This adds Atmel AT25 compatible serial EEPROM to the SPI host controller
* available on Minnowboard MAX low speed connector.
*/
DefinitionBlock ("at25.aml", "SSDT", 5, "INTEL", "AT25", 1)
{
External (_SB_.SPI1, DeviceObj)
Scope (\_SB.SPI1)
{
Device (EEP0) {
Name (_HID, "PRP0001")
Name (_DDN, "Atmel AT25 compatible EEPROM")
Name (_CRS, ResourceTemplate () {
SpiSerialBus (
1, // Chip select
PolarityLow, // Chip select is active low
FourWireMode, // Full duplex
8, // Bits per word is 8 (byte)
ControllerInitiated, // Don't care
1000000, // Initial bus speed is 1MHz
ClockPolarityLow, // SPI mode 0
ClockPhaseFirst, // SPI mode 0
"\\_SB.SPI1", // SPI host controller
0 // Must be 0
)
})
/*
* See Documentation/devicetree/bindings/eeprom/at25.txt for
* more information about these bindings.
*/
Name (_DSD, Package () {
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () {"compatible", Package () {"atmel,at25"}},
Package () {"size", 1024},
Package () {"pagesize", 32},
Package () {"address-width", 16},
}
})
}
}
}
next prev parent reply other threads:[~2016-07-06 15:03 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-01 20:19 [PATCH v5 0/8] ACPI overlays Octavian Purdila
2016-07-01 20:19 ` [PATCH v5 2/8] acpi: fix enumeration (visited) flags for bus rescans Octavian Purdila
2016-07-06 15:03 ` Mika Westerberg [this message]
2016-07-06 15:37 ` Octavian Purdila
2016-07-06 21:09 ` Rafael J. Wysocki
[not found] ` <31239967.dEXrvihxAE-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2016-07-07 9:00 ` Mika Westerberg
2016-07-07 9:28 ` Mika Westerberg
2016-07-01 20:19 ` [PATCH v5 3/8] acpi: add support for ACPI reconfiguration notifiers Octavian Purdila
2016-07-07 9:34 ` Mika Westerberg
2016-07-01 20:19 ` [PATCH v5 4/8] i2c: add support for ACPI reconfigure notifications Octavian Purdila
2016-07-04 0:34 ` Wolfram Sang
[not found] ` <1467404352-27101-1-git-send-email-octavian.purdila-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-07-01 20:19 ` [PATCH v5 1/8] Documentation: acpi: add SSDT overlays documentation Octavian Purdila
[not found] ` <1467404352-27101-2-git-send-email-octavian.purdila-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-07-07 9:25 ` Mika Westerberg
2016-07-01 20:19 ` [PATCH v5 5/8] spi: add support for ACPI reconfigure notifications Octavian Purdila
2016-07-03 12:10 ` Mark Brown
2016-07-01 20:19 ` [PATCH v5 6/8] efi: load SSTDs from EFI variables Octavian Purdila
2016-07-02 8:18 ` Geert Uytterhoeven
2016-07-04 12:00 ` Matt Fleming
2016-07-06 0:34 ` [PATCH v5 0/8] ACPI overlays Rafael J. Wysocki
2016-07-06 6:29 ` Octavian Purdila
2016-07-01 20:19 ` [PATCH v5 7/8] acpi: add support for configfs Octavian Purdila
2016-07-07 9:39 ` Mika Westerberg
2016-07-01 20:19 ` [PATCH v5 8/8] acpi: add support for loading SSDTs via configfs Octavian Purdila
2016-07-07 9:42 ` Mika Westerberg
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=20160706150317.GH23527@lahna.fi.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=broonie@kernel.org \
--cc=irina.tirdea@intel.com \
--cc=jlbec@evilplan.org \
--cc=lenb@kernel.org \
--cc=leonard.crestez@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-spi@vger.kernel.org \
--cc=matt@codeblueprint.co.uk \
--cc=octavian.purdila@intel.com \
--cc=rjw@rjwysocki.net \
--cc=wsa@the-dreams.de \
/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).