From: Flavio Suligoi <f.suligoi@asem.it>
To: David Woodhouse <dwmw2@infradead.org>,
Brian Norris <computersforpeace@gmail.com>,
Boris Brezillon <bbrezillon@kernel.org>,
Marek Vasut <marek.vasut@gmail.com>,
Richard Weinberger <richard@nod.at>,
Mark Brown <broonie@kernel.org>,
Frieder Schrempf <frieder.schrempf@exceet.de>,
Yogesh Gaur <yogeshnarayan.gaur@nxp.com>,
<linux-mtd@lists.infradead.org>, <linux-kernel@vger.kernel.org>
Cc: Flavio Suligoi <f.suligoi@asem.it>
Subject: [PATCH v1 0/1] mtd: devices: add ACPI support for non-jedec m25p80
Date: Tue, 26 Feb 2019 11:48:07 +0100 [thread overview]
Message-ID: <1551178088-6615-1-git-send-email-f.suligoi@asem.it> (raw)
This patch concerns the use of a "non-jedec" m25p80 device in a x86 machine.
For an x86 machine a m25p80 device has to be declared inside a BIOS ACPI table
(for example inside the SSDT or the DSDT table).
No matching problems for the jedec compatible devices, since we have the list:
static const struct of_device_id m25p_of_table[] = {
{ .compatible = "jedec,spi-nor" },
{}
};
But for the "non-jedec" devices there are no possible matches, even if we try to
use, the SPI modalias, as:
spi:mr25h40
So it is necessary filling the m25p_of_table with all the m25p80 device names
used in the driver. This solution works both for the ACPI-style (x86) and
the DT-style declarations (ARM).
I checked this patch with:
1) x68 board using both an SSDT and DSDT tables
2) i.MX6DL custom board using a Device Tree
This is an example of working SSDT table for x86:
DefinitionBlock ("mr25h40.aml", "SSDT", 5, "ASEMsp", "MR25H40", 1)
{
External (_SB.SPI1, DeviceObj)
Scope (\_SB.SPI1)
{
Device (NVR0)
{
Name (_HID, "PRP0001")
Name (_DDN, "Everspin MR25H40 MRAM")
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
10000000, // 10 MHz
ClockPolarityLow, // SPI mode 0 ClockPolarityLow
ClockPhaseFirst, // SPI mode 0 ClockPhaseFirst
"\\_SB.SPI1", // SPI host controller
0, // Must be 0
ResourceConsumer,
,
)
})
Name (_DSD, Package () {
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package () {
Package () {"compatible", "mr25h40"},
}
})
}
}
}
Flavio Suligoi (1):
mtd: devices: add ACPI support for non-jedec m25p80
drivers/mtd/devices/m25p80.c | 57 +++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 56 insertions(+), 1 deletion(-)
--
2.7.4
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
next reply other threads:[~2019-02-26 10:48 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-26 10:48 Flavio Suligoi [this message]
2019-02-26 10:48 ` [PATCH v1 1/1] mtd: devices: add ACPI support for non-jedec m25p80 Flavio Suligoi
2019-03-07 17:40 ` David Woodhouse
2019-03-07 17:50 ` Flavio Suligoi
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=1551178088-6615-1-git-send-email-f.suligoi@asem.it \
--to=f.suligoi@asem.it \
--cc=bbrezillon@kernel.org \
--cc=broonie@kernel.org \
--cc=computersforpeace@gmail.com \
--cc=dwmw2@infradead.org \
--cc=frieder.schrempf@exceet.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=marek.vasut@gmail.com \
--cc=richard@nod.at \
--cc=yogeshnarayan.gaur@nxp.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;
as well as URLs for NNTP newsgroup(s).