* Re: [PATCH v4 2/2] dt-bindings: ata: add DT bindings for MediaTek SATA controller
From: Tejun Heo @ 2017-08-29 14:24 UTC (permalink / raw)
To: Ryder Lee
Cc: Hans de Goede, Rob Herring, devicetree, linux-mediatek,
linux-kernel, linux-ide, Long Cheng
In-Reply-To: <0ac0ff921914acd95b7b5906ca435571e55c355f.1503018631.git.ryder.lee@mediatek.com>
On Fri, Aug 18, 2017 at 09:13:08AM +0800, Ryder Lee wrote:
> Add DT bindings for the onboard SATA controller present on the MediaTek
> SoCs.
>
> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com>
> Acked-by: Rob Herring <robh@kernel.org>
Applied to libata/for-4.14.
Thanks.
--
tejun
^ permalink raw reply
* Re: boot failure with 4.13.0-rc6 due to ATA errors
From: Christoph Hellwig @ 2017-08-29 12:42 UTC (permalink / raw)
To: Tejun Heo; +Cc: David Ahern, linux-ide, LKML, Christoph Hellwig, Robert Elliott
In-Reply-To: <20170828212225.GB491396@devbig577.frc2.facebook.com>
On Mon, Aug 28, 2017 at 02:22:25PM -0700, Tejun Heo wrote:
> Hello,
>
> On Mon, Aug 28, 2017 at 02:26:52PM -0600, David Ahern wrote:
> > On 8/28/17 1:59 PM, Tejun Heo wrote:
> > > Can you please verify whether 818831c8b22f ("libata: implement
> > > SECURITY PROTOCOL IN/OUT") is the culprit? ie. try to boot the commit
> > > to verify that the problem is there, and try the one prior?
> >
> > That commit is the problem. a0fd2454a36ffab2ce39b3a91c1385a5f98e63f0
> > works fine.
>
> Christoph, is there anything we can do to further gate issuing of the
> offending command? Otherwise, we might have to go for whitelist
> instead.
We could try to check the IDENTIFY DEVICE word, but given that it has
a dual meaning in older spec versions I don't really like the idea
either. Untested patch below as I'm not near my OPAL capable drive.
Also most recent ATA features seem to be keyed off a log page of some
sort, so we'll run into more problems like this.
---
>From e661047ec3a25587648b07c02a687a7dac778f3b Mon Sep 17 00:00:00 2001
From: Christoph Hellwig <hch@lst.de>
Date: Tue, 29 Aug 2017 14:35:50 +0200
Subject: libata: check for trusted computing in IDENTIFY DEVICE data
ATA-8 and later mirrors the TRUSTED COMPUTING SUPPORTED bit in word 48 of
the IDENTIFY DEVICE data. Check this before issuing a READ LOG PAGE
command to avoid issues with buggy devices. The only downside is that
we can't support Security Send / Receive for a device with an older
revision due to the conflicting use of this field in earlier
specifications.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
drivers/ata/libata-core.c | 3 +++
include/linux/ata.h | 10 +++++++++-
2 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 697f5f896b19..ca57b03ab950 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -2413,6 +2413,9 @@ static void ata_dev_config_trusted(struct ata_device *dev)
u64 trusted_cap;
unsigned int err;
+ if (!ata_id_has_trusted(dev->id))
+ return;
+
if (!ata_identify_page_supported(dev, ATA_LOG_SECURITY)) {
ata_dev_warn(dev,
"Security Log not supported\n");
diff --git a/include/linux/ata.h b/include/linux/ata.h
index e65ae4b2ed48..c7a353825450 100644
--- a/include/linux/ata.h
+++ b/include/linux/ata.h
@@ -60,7 +60,8 @@ enum {
ATA_ID_FW_REV = 23,
ATA_ID_PROD = 27,
ATA_ID_MAX_MULTSECT = 47,
- ATA_ID_DWORD_IO = 48,
+ ATA_ID_DWORD_IO = 48, /* before ATA-8 */
+ ATA_ID_TRUSTED = 48, /* ATA-8 and later */
ATA_ID_CAPABILITY = 49,
ATA_ID_OLD_PIO_MODES = 51,
ATA_ID_OLD_DMA_MODES = 52,
@@ -889,6 +890,13 @@ static inline bool ata_id_has_dword_io(const u16 *id)
return id[ATA_ID_DWORD_IO] & (1 << 0);
}
+static inline bool ata_id_has_trusted(const u16 *id)
+{
+ if (ata_id_major_version(id) <= 7)
+ return false;
+ return id[ATA_ID_TRUSTED] & (1 << 0);
+}
+
static inline bool ata_id_has_unload(const u16 *id)
{
if (ata_id_major_version(id) >= 7 &&
--
2.11.0
^ permalink raw reply related
* Re: [PATCH v4 1/2] ata: mediatek: add support for MediaTek SATA controller
From: Ryder Lee @ 2017-08-29 0:59 UTC (permalink / raw)
To: Tejun Heo
Cc: Hans de Goede, Rob Herring, devicetree, linux-mediatek,
linux-kernel, linux-ide, Long Cheng
In-Reply-To: <20170828175528.GY491396@devbig577.frc2.facebook.com>
On Mon, 2017-08-28 at 10:55 -0700, Tejun Heo wrote:
> On Fri, Aug 18, 2017 at 09:13:07AM +0800, Ryder Lee wrote:
> > This adds support the AHCI-compliant Serial ATA controller present
> > on MediaTek SoCs.
> >
> > Signed-off-by: Ryder Lee <ryder.lee@mediatek.com>
> > Acked-by: Tejun Heo <tj@kernel.org>
>
> Applied to libata/for-4.14. If you want me to take the dt patch too,
> please let me know.
>
> Thanks.
>
Yes, please take the dt patch through your tree as well.
Thanks,
Ryder
^ permalink raw reply
* Re: [PATCH] pata_octeon_cf: use of_property_read_{bool|u32}()
From: David Daney @ 2017-08-28 21:52 UTC (permalink / raw)
To: Sergei Shtylyov, Bartlomiej Zolnierkiewicz, Tejun Heo,
open list:LIBATA PATA DRIVERS
Cc: linux-mips
In-Reply-To: <20170827195613.904715064@cogentembedded.com>
On 08/27/2017 12:55 PM, Sergei Shtylyov wrote:
> The Octeon CF driver basically open-codes of_property_read_{bool|u32}()
> using of_{find|get}_property() calls in its probe() method. Using the
> modern DT APIs saves 2 LoCs and 16 bytes of object code (MIPS gcc 3.4.3).
>
> Signed-off-by: Sergei Shtylyov<sergei.shtylyov@cogentembedded.com>
It still works with this applied, so:
Acked-by: David Daney <david.daney@cavium.com>
>
> ---
> drivers/ata/pata_octeon_cf.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> Index: libata/drivers/ata/pata_octeon_cf.c
> ===================================================================
> --- libata.orig/drivers/ata/pata_octeon_cf.c
> +++ libata/drivers/ata/pata_octeon_cf.c
> @@ -840,7 +840,6 @@ static int octeon_cf_probe(struct platfo
> struct property *reg_prop;
> int n_addr, n_size, reg_len;
> struct device_node *node;
> - const void *prop;
> void __iomem *cs0;
> void __iomem *cs1 = NULL;
> struct ata_host *host;
> @@ -850,7 +849,7 @@ static int octeon_cf_probe(struct platfo
> void __iomem *base;
> struct octeon_cf_port *cf_port;
> int rv = -ENOMEM;
> -
> + u32 bus_width;
>
> node = pdev->dev.of_node;
> if (node == NULL)
> @@ -860,11 +859,10 @@ static int octeon_cf_probe(struct platfo
> if (!cf_port)
> return -ENOMEM;
>
> - cf_port->is_true_ide = (of_find_property(node, "cavium,true-ide", NULL) != NULL);
> + cf_port->is_true_ide = of_property_read_bool(node, "cavium,true-ide");
>
> - prop = of_get_property(node, "cavium,bus-width", NULL);
> - if (prop)
> - is_16bit = (be32_to_cpup(prop) == 16);
> + if (of_property_read_u32(node, "cavium,bus-width", &bus_width) == 0)
> + is_16bit = (bus_width == 16);
> else
> is_16bit = false;
>
>
>
>
^ permalink raw reply
* Re: boot failure with 4.13.0-rc6 due to ATA errors
From: Tejun Heo @ 2017-08-28 21:22 UTC (permalink / raw)
To: David Ahern; +Cc: linux-ide, LKML, Christoph Hellwig
In-Reply-To: <37033f6d-2ad0-7817-10b5-cbd7ff565624@gmail.com>
Hello,
On Mon, Aug 28, 2017 at 02:26:52PM -0600, David Ahern wrote:
> On 8/28/17 1:59 PM, Tejun Heo wrote:
> > Can you please verify whether 818831c8b22f ("libata: implement
> > SECURITY PROTOCOL IN/OUT") is the culprit? ie. try to boot the commit
> > to verify that the problem is there, and try the one prior?
>
> That commit is the problem. a0fd2454a36ffab2ce39b3a91c1385a5f98e63f0
> works fine.
Christoph, is there anything we can do to further gate issuing of the
offending command? Otherwise, we might have to go for whitelist
instead.
Thanks.
--
tejun
^ permalink raw reply
* Re: boot failure with 4.13.0-rc6 due to ATA errors
From: David Ahern @ 2017-08-28 20:26 UTC (permalink / raw)
To: Tejun Heo; +Cc: linux-ide, LKML, Christoph Hellwig
In-Reply-To: <20170828195916.GA491396@devbig577.frc2.facebook.com>
On 8/28/17 1:59 PM, Tejun Heo wrote:
> Can you please verify whether 818831c8b22f ("libata: implement
> SECURITY PROTOCOL IN/OUT") is the culprit? ie. try to boot the commit
> to verify that the problem is there, and try the one prior?
That commit is the problem. a0fd2454a36ffab2ce39b3a91c1385a5f98e63f0
works fine.
^ permalink raw reply
* Re: boot failure with 4.13.0-rc6 due to ATA errors
From: Tejun Heo @ 2017-08-28 19:59 UTC (permalink / raw)
To: David Ahern; +Cc: linux-ide, LKML, Christoph Hellwig
In-Reply-To: <3117ae58-d432-101e-3f0b-68d72fdee28b@gmail.com>
(cc'ing Christoph)
On Mon, Aug 28, 2017 at 12:40:39PM -0600, David Ahern wrote:
> Not sure why mailing list to direct this bug report to, so starting with
> libata based on the error messages.
>
> Some where between v4.12 and 4.13.0-rc6 a Celestica redstone switch
> fails to boot due to ATA errors:
>
> [ 9.185203] ata1.00: failed to set xfermode (err_mask=0x40)
> [ 9.500825] ata1.00: revalidation failed (errno=-5)
> [ 20.449205] ata1.00: failed to set xfermode (err_mask=0x40)
>
> I just tried Linus' top of tree (cc4a41fe5541) and it still fails. With
> v4.12 the same switch boots and 'dmesg | grep ata' shows:
>
> [ 0.129080] libata version 3.00 loaded.
> [ 1.016520] ata1: SATA max UDMA/133 abar m2048@0xdffce000 port
> 0xdffce100 irq 27
> [ 1.016524] ata2: SATA max UDMA/133 abar m2048@0xdffce000 port
> 0xdffce180 irq 27
> [ 1.016528] ata3: SATA max UDMA/133 abar m2048@0xdffce000 port
> 0xdffce200 irq 27
> [ 1.016531] ata4: SATA max UDMA/133 abar m2048@0xdffce000 port
> 0xdffce280 irq 27
> [ 1.028623] ata5: SATA max UDMA/133 abar m2048@0xdffcd000 port
> 0xdffcd100 irq 28
> [ 1.028627] ata6: SATA max UDMA/133 abar m2048@0xdffcd000 port
> 0xdffcd180 irq 28
> [ 1.326767] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
> [ 1.328646] ata2: SATA link down (SStatus 0 SControl 300)
> [ 1.330519] ata4: SATA link down (SStatus 0 SControl 300)
> [ 1.330554] ata3: SATA link down (SStatus 0 SControl 300)
> [ 1.330575] ata1.00: ATA-9: InnoDisk Corp. - mSATA 3ME, S130604, max
> UDMA/133
> [ 1.330581] ata1.00: 31277232 sectors, multi 16: LBA48 NCQ (depth
> 31/32), AA
> [ 1.332433] ata1.00: failed to get Identify Device Data, Emask 0x1
> [ 1.332709] ata1.00: failed to get Identify Device Data, Emask 0x1
> [ 1.332717] ata1.00: configured for UDMA/133
> [ 1.335813] ata6: SATA link down (SStatus 0 SControl 300)
> [ 1.339829] ata5: SATA link down (SStatus 0 SControl 300)
>
> Given the overhead of building, installing, booting and recovering from
> a failed boot, 'git bisect' is not a realistic option for this switch
> option unless some one can cut the span to a few iterations.
>
> If it helps, lspci and lsscsi output from an older kernel:
>
> # lspci
> 00:00.0 Host bridge: Intel Corporation Atom processor C2000 SoC
> Transaction Router (rev 02)
> 00:01.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root
> Port 1 (rev 02)
> 00:02.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root
> Port 2 (rev 02)
> 00:03.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root
> Port 3 (rev 02)
> 00:0e.0 Host bridge: Intel Corporation Atom processor C2000 RAS (rev 02)
> 00:0f.0 IOMMU: Intel Corporation Atom processor C2000 RCEC (rev 02)
> 00:13.0 System peripheral: Intel Corporation Atom processor C2000 SMBus
> 2.0 (rev 02)
> 00:14.0 Ethernet controller: Intel Corporation Ethernet Connection I354
> (rev 03)
> 00:14.1 Ethernet controller: Intel Corporation Ethernet Connection I354
> (rev 03)
> 00:14.2 Ethernet controller: Intel Corporation Ethernet Connection I354
> (rev 03)
> 00:16.0 USB controller: Intel Corporation Atom processor C2000 USB
> Enhanced Host Controller (rev 02)
> 00:17.0 SATA controller: Intel Corporation Atom processor C2000 AHCI
> SATA2 Controller (rev 02)
> 00:18.0 SATA controller: Intel Corporation Atom processor C2000 AHCI
> SATA3 Controller (rev 02)
> 00:1f.0 ISA bridge: Intel Corporation Atom processor C2000 PCU (rev 02)
> 00:1f.3 SMBus: Intel Corporation Atom processor C2000 PCU SMBus (rev 02)
> 01:00.0 Ethernet controller: Broadcom Corporation Device b854 (rev 03)
>
>
> # lsscsi
> [0:0:0:0] disk ATA InnoDisk Corp. - 604 /dev/sda
Can you please verify whether 818831c8b22f ("libata: implement
SECURITY PROTOCOL IN/OUT") is the culprit? ie. try to boot the commit
to verify that the problem is there, and try the one prior?
Thanks.
--
tejun
^ permalink raw reply
* boot failure with 4.13.0-rc6 due to ATA errors
From: David Ahern @ 2017-08-28 18:40 UTC (permalink / raw)
To: Tejun Heo, linux-ide; +Cc: LKML
Not sure why mailing list to direct this bug report to, so starting with
libata based on the error messages.
Some where between v4.12 and 4.13.0-rc6 a Celestica redstone switch
fails to boot due to ATA errors:
[ 9.185203] ata1.00: failed to set xfermode (err_mask=0x40)
[ 9.500825] ata1.00: revalidation failed (errno=-5)
[ 20.449205] ata1.00: failed to set xfermode (err_mask=0x40)
I just tried Linus' top of tree (cc4a41fe5541) and it still fails. With
v4.12 the same switch boots and 'dmesg | grep ata' shows:
[ 0.129080] libata version 3.00 loaded.
[ 1.016520] ata1: SATA max UDMA/133 abar m2048@0xdffce000 port
0xdffce100 irq 27
[ 1.016524] ata2: SATA max UDMA/133 abar m2048@0xdffce000 port
0xdffce180 irq 27
[ 1.016528] ata3: SATA max UDMA/133 abar m2048@0xdffce000 port
0xdffce200 irq 27
[ 1.016531] ata4: SATA max UDMA/133 abar m2048@0xdffce000 port
0xdffce280 irq 27
[ 1.028623] ata5: SATA max UDMA/133 abar m2048@0xdffcd000 port
0xdffcd100 irq 28
[ 1.028627] ata6: SATA max UDMA/133 abar m2048@0xdffcd000 port
0xdffcd180 irq 28
[ 1.326767] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 1.328646] ata2: SATA link down (SStatus 0 SControl 300)
[ 1.330519] ata4: SATA link down (SStatus 0 SControl 300)
[ 1.330554] ata3: SATA link down (SStatus 0 SControl 300)
[ 1.330575] ata1.00: ATA-9: InnoDisk Corp. - mSATA 3ME, S130604, max
UDMA/133
[ 1.330581] ata1.00: 31277232 sectors, multi 16: LBA48 NCQ (depth
31/32), AA
[ 1.332433] ata1.00: failed to get Identify Device Data, Emask 0x1
[ 1.332709] ata1.00: failed to get Identify Device Data, Emask 0x1
[ 1.332717] ata1.00: configured for UDMA/133
[ 1.335813] ata6: SATA link down (SStatus 0 SControl 300)
[ 1.339829] ata5: SATA link down (SStatus 0 SControl 300)
Given the overhead of building, installing, booting and recovering from
a failed boot, 'git bisect' is not a realistic option for this switch
option unless some one can cut the span to a few iterations.
If it helps, lspci and lsscsi output from an older kernel:
# lspci
00:00.0 Host bridge: Intel Corporation Atom processor C2000 SoC
Transaction Router (rev 02)
00:01.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root
Port 1 (rev 02)
00:02.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root
Port 2 (rev 02)
00:03.0 PCI bridge: Intel Corporation Atom processor C2000 PCIe Root
Port 3 (rev 02)
00:0e.0 Host bridge: Intel Corporation Atom processor C2000 RAS (rev 02)
00:0f.0 IOMMU: Intel Corporation Atom processor C2000 RCEC (rev 02)
00:13.0 System peripheral: Intel Corporation Atom processor C2000 SMBus
2.0 (rev 02)
00:14.0 Ethernet controller: Intel Corporation Ethernet Connection I354
(rev 03)
00:14.1 Ethernet controller: Intel Corporation Ethernet Connection I354
(rev 03)
00:14.2 Ethernet controller: Intel Corporation Ethernet Connection I354
(rev 03)
00:16.0 USB controller: Intel Corporation Atom processor C2000 USB
Enhanced Host Controller (rev 02)
00:17.0 SATA controller: Intel Corporation Atom processor C2000 AHCI
SATA2 Controller (rev 02)
00:18.0 SATA controller: Intel Corporation Atom processor C2000 AHCI
SATA3 Controller (rev 02)
00:1f.0 ISA bridge: Intel Corporation Atom processor C2000 PCU (rev 02)
00:1f.3 SMBus: Intel Corporation Atom processor C2000 PCU SMBus (rev 02)
01:00.0 Ethernet controller: Broadcom Corporation Device b854 (rev 03)
# lsscsi
[0:0:0:0] disk ATA InnoDisk Corp. - 604 /dev/sda
^ permalink raw reply
* Re: [PATCH v4 1/2] ata: mediatek: add support for MediaTek SATA controller
From: Tejun Heo @ 2017-08-28 17:55 UTC (permalink / raw)
To: Ryder Lee
Cc: Hans de Goede, Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-mediatek-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-kernel-u79uwXL29TY76Z2rM5mHXA,
linux-ide-u79uwXL29TY76Z2rM5mHXA, Long Cheng
In-Reply-To: <ab78899bd7fa99a12497b5b16ffb7acfeac1f42c.1503018631.git.ryder.lee-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>
On Fri, Aug 18, 2017 at 09:13:07AM +0800, Ryder Lee wrote:
> This adds support the AHCI-compliant Serial ATA controller present
> on MediaTek SoCs.
>
> Signed-off-by: Ryder Lee <ryder.lee-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>
> Acked-by: Tejun Heo <tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Applied to libata/for-4.14. If you want me to take the dt patch too,
please let me know.
Thanks.
--
tejun
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply
* Re: [PATCH] pata_octeon_cf: use of_property_read_{bool|u32}()
From: Tejun Heo @ 2017-08-28 17:45 UTC (permalink / raw)
To: Sergei Shtylyov
Cc: Bartlomiej Zolnierkiewicz,
"open list:LIBATA PATA DRIVERS", linux-mips
In-Reply-To: <20170827195613.904715064@cogentembedded.com>
On Sun, Aug 27, 2017 at 10:55:09PM +0300, Sergei Shtylyov wrote:
> The Octeon CF driver basically open-codes of_property_read_{bool|u32}()
> using of_{find|get}_property() calls in its probe() method. Using the
> modern DT APIs saves 2 LoCs and 16 bytes of object code (MIPS gcc 3.4.3).
>
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Applied to libata/for-4.14.
Thanks.
--
tejun
^ permalink raw reply
* ALPSS: reminder and submission deadline
From: Christoph Hellwig @ 2017-08-28 17:37 UTC (permalink / raw)
To: linux-ide
Just one more month to go until the Alpine Linux Persistence and Storage
Summit (ALPSS) will be held from September 27-29 at the Lizumerhuette
in Austria!
If you want to submit a 30-minute talk please do so until Sep 1st, as we
plan to finalize our schedule. BOFs and team meetings will be scheduled
ad-hoc in the available meeting rooms or outside with a beautiful mountain
panorama.
If you only want to attend you can do so until last minute as long as
space doesn't run.
To submit a talk or request attendance please send a mail to:
alpss-pc@lists.infradead.org
More details are available on our website:
http://www.alpss.at/
Thank you on behalf of the program committee:
Stephen Bates
Sagi Grimberg
Christoph Hellwig
Johannes Thumshirn
Richard Weinberger
^ permalink raw reply
* Re: [PATCH] libata: quirk read log on no-name M.2 SSD
From: Tejun Heo @ 2017-08-28 17:28 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: idosch, linux-ide
In-Reply-To: <20170828062808.20717-1-hch@lst.de>
On Mon, Aug 28, 2017 at 08:28:08AM +0200, Christoph Hellwig wrote:
> Ivo reported that reading the log page on his systems fails,
> so quirk it as it won't support ZBC or security protocols.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Reported-by: Ido Schimmel <idosch@mellanox.com>
> Tested-by: Ido Schimmel <idosch@mellanox.com>
Applied to libata/for-4.13-fixes w/ Ido's name fixed in the
description.
Thanks.
--
tejun
^ permalink raw reply
* (unknown),
From: dengx @ 2017-08-28 13:22 UTC (permalink / raw)
To: linux-ide
[-- Attachment #1: MAIL_365828227848183_linux-ide.zip --]
[-- Type: application/zip, Size: 72397 bytes --]
^ permalink raw reply
* [PATCH] libata: quirk read log on no-name M.2 SSD
From: Christoph Hellwig @ 2017-08-28 6:28 UTC (permalink / raw)
To: tj; +Cc: idosch, linux-ide
Ivo reported that reading the log page on his systems fails,
so quirk it as it won't support ZBC or security protocols.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reported-by: Ido Schimmel <idosch@mellanox.com>
Tested-by: Ido Schimmel <idosch@mellanox.com>
---
drivers/ata/libata-core.c | 4 ++++
include/linux/libata.h | 1 +
2 files changed, 5 insertions(+)
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index fa7dd4394c02..697f5f896b19 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -2079,6 +2079,8 @@ unsigned int ata_read_log_page(struct ata_device *dev, u8 log,
*/
if (ap_flags & ATA_FLAG_NO_LOG_PAGE)
return AC_ERR_DEV;
+ if (dev->horkage & ATA_HORKAGE_NO_LOG_PAGE)
+ return AC_ERR_DEV;
retry:
ata_tf_init(dev, &tf);
@@ -4578,6 +4580,8 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
{ "WDC WD3000JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM },
{ "WDC WD3200JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM },
+
+ { "M.2 (S42) 3ME3", NULL, ATA_HORKAGE_NO_LOG_PAGE },
/* End Marker */
{ }
};
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 931c32f1f18d..9e927ae7fced 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -438,6 +438,7 @@ enum {
ATA_HORKAGE_NO_DMA_LOG = (1 << 23), /* don't use DMA for log read */
ATA_HORKAGE_NOTRIM = (1 << 24), /* don't use TRIM */
ATA_HORKAGE_MAX_SEC_1024 = (1 << 25), /* Limit max sects to 1024 */
+ ATA_HORKAGE_NO_LOG_PAGE = (1 << 26), /* Doesn't like Get Log Page */
/* DMA mask for user DMA control: User visible values; DO NOT
renumber */
--
2.11.0
^ permalink raw reply related
* [PATCH] pata_octeon_cf: use of_property_read_{bool|u32}()
From: Sergei Shtylyov @ 2017-08-27 19:55 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz, Tejun Heo,
"open list:LIBATA PATA DRIVERS"
Cc: linux-mips, Sergei Shtylyov
[-- Attachment #1: pata_octeon_cf-use-of_property_read_-bool-u32.patch --]
[-- Type: text/plain, Size: 1543 bytes --]
The Octeon CF driver basically open-codes of_property_read_{bool|u32}()
using of_{find|get}_property() calls in its probe() method. Using the
modern DT APIs saves 2 LoCs and 16 bytes of object code (MIPS gcc 3.4.3).
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
---
drivers/ata/pata_octeon_cf.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
Index: libata/drivers/ata/pata_octeon_cf.c
===================================================================
--- libata.orig/drivers/ata/pata_octeon_cf.c
+++ libata/drivers/ata/pata_octeon_cf.c
@@ -840,7 +840,6 @@ static int octeon_cf_probe(struct platfo
struct property *reg_prop;
int n_addr, n_size, reg_len;
struct device_node *node;
- const void *prop;
void __iomem *cs0;
void __iomem *cs1 = NULL;
struct ata_host *host;
@@ -850,7 +849,7 @@ static int octeon_cf_probe(struct platfo
void __iomem *base;
struct octeon_cf_port *cf_port;
int rv = -ENOMEM;
-
+ u32 bus_width;
node = pdev->dev.of_node;
if (node == NULL)
@@ -860,11 +859,10 @@ static int octeon_cf_probe(struct platfo
if (!cf_port)
return -ENOMEM;
- cf_port->is_true_ide = (of_find_property(node, "cavium,true-ide", NULL) != NULL);
+ cf_port->is_true_ide = of_property_read_bool(node, "cavium,true-ide");
- prop = of_get_property(node, "cavium,bus-width", NULL);
- if (prop)
- is_16bit = (be32_to_cpup(prop) == 16);
+ if (of_property_read_u32(node, "cavium,bus-width", &bus_width) == 0)
+ is_16bit = (bus_width == 16);
else
is_16bit = false;
^ permalink raw reply
* Re: Regression due to "libata: implement SECURITY PROTOCOL IN/OUT"
From: Ido Schimmel @ 2017-08-27 18:25 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: tj, xiaolong.ye, mlxsw, michaelsh, linux-ide
In-Reply-To: <20170827170348.GA22437@lst.de>
On Sun, Aug 27, 2017 at 07:03:48PM +0200, Christoph Hellwig wrote:
> Does this make your boot issue go away?
Yes.
Feel free to submit officially with my tag:
Tested-by: Ido Schimmel <idosch@mellanox.com>
Hopefully the patch can be sent to Linus sometime this week, before 4.13
is released.
Thanks a lot Christoph!
^ permalink raw reply
* Re: Regression due to "libata: implement SECURITY PROTOCOL IN/OUT"
From: Christoph Hellwig @ 2017-08-27 17:03 UTC (permalink / raw)
To: Ido Schimmel
Cc: Christoph Hellwig, tj, xiaolong.ye, mlxsw, michaelsh, linux-ide
In-Reply-To: <20170827105331.GA18386@shredder.mtl.com>
Does this make your boot issue go away?
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index fa7dd4394c02..697f5f896b19 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -2079,6 +2079,8 @@ unsigned int ata_read_log_page(struct ata_device *dev, u8 log,
*/
if (ap_flags & ATA_FLAG_NO_LOG_PAGE)
return AC_ERR_DEV;
+ if (dev->horkage & ATA_HORKAGE_NO_LOG_PAGE)
+ return AC_ERR_DEV;
retry:
ata_tf_init(dev, &tf);
@@ -4578,6 +4580,8 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
{ "WDC WD3000JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM },
{ "WDC WD3200JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM },
+
+ { "M.2 (S42) 3ME3", NULL, ATA_HORKAGE_NO_LOG_PAGE },
/* End Marker */
{ }
};
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 931c32f1f18d..9e927ae7fced 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -438,6 +438,7 @@ enum {
ATA_HORKAGE_NO_DMA_LOG = (1 << 23), /* don't use DMA for log read */
ATA_HORKAGE_NOTRIM = (1 << 24), /* don't use TRIM */
ATA_HORKAGE_MAX_SEC_1024 = (1 << 25), /* Limit max sects to 1024 */
+ ATA_HORKAGE_NO_LOG_PAGE = (1 << 26), /* Doesn't like Get Log Page */
/* DMA mask for user DMA control: User visible values; DO NOT
renumber */
^ permalink raw reply related
* Re: Regression due to "libata: implement SECURITY PROTOCOL IN/OUT"
From: Ido Schimmel @ 2017-08-27 10:53 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: tj, xiaolong.ye, mlxsw, michaelsh, linux-ide
In-Reply-To: <20170827090546.GA16766@lst.de>
Hi Christoph,
On Sun, Aug 27, 2017 at 11:05:46AM +0200, Christoph Hellwig wrote:
> On Sat, Aug 26, 2017 at 08:15:37PM +0300, Ido Schimmel wrote:
> > On Thu, Aug 24, 2017 at 03:18:04PM +0300, Ido Schimmel wrote:
> > > On Thu, Aug 24, 2017 at 02:07:29PM +0200, Christoph Hellwig wrote:
> > > > What kind of device is this? Seems like we need to blacklist it
> > > > as it chokes when we tried to read the Identify Devіce Log.
> > >
> > > Is the below enough or do you need more info?
> >
> > Ping?
>
> Sorry, been a bit busy. Is this an actual SSD connected to a real
> controller, or a PCIe SSD that implements ahci itself?
Yes, it's an actual SSD. Not PCIe.
> Can you send the full dmesg output, plus lspci -v, plus the output of
> hdparm -i /dev/sdN for the device after a working boot?
dmesg from 4.12.8 kernel:
https://pastebin.com/HjMFqrP8
lspci -v from 4.12.8 kernel:
https://pastebin.com/UFnKVmg9
hdparm -i from 4.12.8 kernel:
https://pastebin.com/GdCVcj3G
dmesg from 4.13-rc6 kernel where the error is showed:
https://pastebin.com/uVLRsybx
Thank you for your time.
^ permalink raw reply
* Re: Regression due to "libata: implement SECURITY PROTOCOL IN/OUT"
From: Christoph Hellwig @ 2017-08-27 9:05 UTC (permalink / raw)
To: Ido Schimmel
Cc: Christoph Hellwig, tj, xiaolong.ye, mlxsw, michaelsh, linux-ide
In-Reply-To: <20170826171537.GA4755@shredder>
On Sat, Aug 26, 2017 at 08:15:37PM +0300, Ido Schimmel wrote:
> On Thu, Aug 24, 2017 at 03:18:04PM +0300, Ido Schimmel wrote:
> > On Thu, Aug 24, 2017 at 02:07:29PM +0200, Christoph Hellwig wrote:
> > > What kind of device is this? Seems like we need to blacklist it
> > > as it chokes when we tried to read the Identify Devіce Log.
> >
> > Is the below enough or do you need more info?
>
> Ping?
Sorry, been a bit busy. Is this an actual SSD connected to a real
controller, or a PCIe SSD that implements ahci itself?
Can you send the full dmesg output, plus lspci -v, plus the output of
hdparm -i /dev/sdN for the device after a working boot?
^ permalink raw reply
* Re: Regression due to "libata: implement SECURITY PROTOCOL IN/OUT"
From: Ido Schimmel @ 2017-08-26 17:15 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: tj, xiaolong.ye, mlxsw, michaelsh, linux-ide
In-Reply-To: <20170824121804.GA14057@shredder.mtl.com>
On Thu, Aug 24, 2017 at 03:18:04PM +0300, Ido Schimmel wrote:
> On Thu, Aug 24, 2017 at 02:07:29PM +0200, Christoph Hellwig wrote:
> > What kind of device is this? Seems like we need to blacklist it
> > as it chokes when we tried to read the Identify Devіce Log.
>
> Is the below enough or do you need more info?
Ping?
^ permalink raw reply
* Re: [PATCH v4 0/2] Add support for MediaTek AHCI SATA
From: Ryder Lee @ 2017-08-26 3:19 UTC (permalink / raw)
To: Tejun Heo
Cc: Hans de Goede, Rob Herring, devicetree, linux-mediatek,
linux-kernel, linux-ide, Long Cheng
In-Reply-To: <cover.1503018631.git.ryder.lee@mediatek.com>
Hi Tejun,
Just a gentle ping. I think others are okay with both :D
Thanks.
On Fri, 2017-08-18 at 09:13 +0800, Ryder Lee wrote:
> Hi,
>
> This patch series add support for AHCI compatible SATA controller, and it is
> compliant with the ahci 1.3 and sata 3.0 specification. This driver is slightly
> different than ahci_platform.c (e.g., reset control, subsystem setting).
>
> changes since v4:
> - update binding text: Instead of "soc-model", pick something checkpatch.pl understands
>
> changes since v3:
> - update binding text: fix a typo and modify compatible strings.
>
> changes since v2:
> - according to Commit a53e35db70d1 ("reset: Ensure drivers are explicit when requesting reset lines").
> replace devm_reset_control_get_optional() by devm_reset_control_get_optional_exclusive().
>
> changes since v1:
> - update binding text: add missing "specifier pairs" descriptions.
> - fix kbuild test warning: fix the error handling.
>
> Ryder Lee (2):
> ata: mediatek: add support for MediaTek SATA controller
> dt-bindings: ata: add DT bindings for MediaTek SATA controller
>
> Documentation/devicetree/bindings/ata/ahci-mtk.txt | 51 ++++++
> drivers/ata/Kconfig | 10 ++
> drivers/ata/Makefile | 1 +
> drivers/ata/ahci_mtk.c | 196 +++++++++++++++++++++
> 4 files changed, 258 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/ata/ahci-mtk.txt
> create mode 100644 drivers/ata/ahci_mtk.c
>
^ permalink raw reply
* [PATCH] ata: add a blank line after declaration
From: Himanshu Jha @ 2017-08-24 21:19 UTC (permalink / raw)
To: tj; +Cc: linux-ide, linux-kernel, Himanshu Jha
Added a blank line after declaration conforming to the coding style.
Issue found using checkpatch.pl
Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com>
---
drivers/ata/acard-ahci.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/ata/acard-ahci.c b/drivers/ata/acard-ahci.c
index 940ddbc..a45886b 100644
--- a/drivers/ata/acard-ahci.c
+++ b/drivers/ata/acard-ahci.c
@@ -338,6 +338,7 @@ static int acard_ahci_port_start(struct ata_port *ap)
if ((hpriv->cap & HOST_CAP_FBS) && sata_pmp_supported(ap)) {
void __iomem *port_mmio = ahci_port_base(ap);
u32 cmd = readl(port_mmio + PORT_CMD);
+
if (cmd & PORT_CMD_FBSCP)
pp->fbs_supported = true;
else if (hpriv->flags & AHCI_HFLAG_YES_FBS) {
--
2.7.4
^ permalink raw reply related
* Re: [PATCH 1/3] ata: ftide010: constify ata_port_info
From: Linus Walleij @ 2017-08-24 19:46 UTC (permalink / raw)
To: Arvind Yadav
Cc: Tejun Heo, Bartlomiej Zolnierkiewicz,
linux-kernel@vger.kernel.org, linux-ide
In-Reply-To: <1503568201-9991-2-git-send-email-arvind.yadav.cs@gmail.com>
On Thu, Aug 24, 2017 at 11:49 AM, Arvind Yadav
<arvind.yadav.cs@gmail.com> wrote:
> ata_port_info are not supposed to change at runtime. All functions
> working with ata_port_info provided by <linux/libata.h> work with
> const ata_port_info. So mark the non-const structs as const.
>
> Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Yours,
Linus Walleij
^ permalink raw reply
* Re: [PATCH 0/3] constify ata_port_info
From: Tejun Heo @ 2017-08-24 17:26 UTC (permalink / raw)
To: Arvind Yadav; +Cc: b.zolnierkie, linus.walleij, linux-kernel, linux-ide
In-Reply-To: <20170824142346.GN491396@devbig577.frc2.facebook.com>
On Thu, Aug 24, 2017 at 07:23:46AM -0700, Tejun Heo wrote:
> On Thu, Aug 24, 2017 at 03:19:58PM +0530, Arvind Yadav wrote:
> > ata_port_info are not supposed to change at runtime. All functions
> > working with ata_port_info provided by <linux/libata.h> work with
> > const ata_port_info. So mark the non-const structs as const.
>
> Applied 1-3 to libata/for-4.14.
Caused build warnings. Reverted. Please test before submitting
patches.
Thanks.
--
tejun
^ permalink raw reply
* [tj-libata:for-4.14 8/10] drivers/ata/pata_ftide010.c:376:31: error: assignment of member 'flags' in read-only object
From: kbuild test robot @ 2017-08-24 17:21 UTC (permalink / raw)
To: Arvind Yadav; +Cc: kbuild-all, linux-ide, Tejun Heo
[-- Attachment #1: Type: text/plain, Size: 7607 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git for-4.14
head: 1916a98f8d0c84065b2f73aa571ccebafb63e90f
commit: 8ab84a8d2ae554f248d3e59b5ad8242e2352b4c1 [8/10] ata: ftide010: constify ata_port_info
config: arm-allmodconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 8ab84a8d2ae554f248d3e59b5ad8242e2352b4c1
# save the attached .config to linux build tree
make.cross ARCH=arm
All errors (new ones prefixed by >>):
drivers/ata/pata_ftide010.c: In function 'pata_ftide010_gemini_init':
>> drivers/ata/pata_ftide010.c:376:31: error: assignment of member 'flags' in read-only object
ftide010_port_info[0].flags |= ATA_FLAG_SATA;
^~
vim +/flags +376 drivers/ata/pata_ftide010.c
be4e456e Linus Walleij 2017-06-04 350
be4e456e Linus Walleij 2017-06-04 351 static int pata_ftide010_gemini_init(struct ftide010 *ftide,
be4e456e Linus Walleij 2017-06-04 352 bool is_ata1)
be4e456e Linus Walleij 2017-06-04 353 {
be4e456e Linus Walleij 2017-06-04 354 struct device *dev = ftide->dev;
be4e456e Linus Walleij 2017-06-04 355 struct sata_gemini *sg;
be4e456e Linus Walleij 2017-06-04 356 enum gemini_muxmode muxmode;
be4e456e Linus Walleij 2017-06-04 357
be4e456e Linus Walleij 2017-06-04 358 /* Look up SATA bridge */
be4e456e Linus Walleij 2017-06-04 359 sg = gemini_sata_bridge_get();
be4e456e Linus Walleij 2017-06-04 360 if (IS_ERR(sg))
be4e456e Linus Walleij 2017-06-04 361 return PTR_ERR(sg);
be4e456e Linus Walleij 2017-06-04 362 ftide->sg = sg;
be4e456e Linus Walleij 2017-06-04 363
be4e456e Linus Walleij 2017-06-04 364 muxmode = gemini_sata_get_muxmode(sg);
be4e456e Linus Walleij 2017-06-04 365
be4e456e Linus Walleij 2017-06-04 366 /* Special ops */
be4e456e Linus Walleij 2017-06-04 367 pata_ftide010_port_ops.port_start =
be4e456e Linus Walleij 2017-06-04 368 pata_ftide010_gemini_port_start;
be4e456e Linus Walleij 2017-06-04 369 pata_ftide010_port_ops.port_stop =
be4e456e Linus Walleij 2017-06-04 370 pata_ftide010_gemini_port_stop;
be4e456e Linus Walleij 2017-06-04 371 pata_ftide010_port_ops.cable_detect =
be4e456e Linus Walleij 2017-06-04 372 pata_ftide010_gemini_cable_detect;
be4e456e Linus Walleij 2017-06-04 373
be4e456e Linus Walleij 2017-06-04 374 /* Flag port as SATA-capable */
be4e456e Linus Walleij 2017-06-04 375 if (gemini_sata_bridge_enabled(sg, is_ata1))
be4e456e Linus Walleij 2017-06-04 @376 ftide010_port_info[0].flags |= ATA_FLAG_SATA;
be4e456e Linus Walleij 2017-06-04 377
be4e456e Linus Walleij 2017-06-04 378 /*
be4e456e Linus Walleij 2017-06-04 379 * We assume that a simple 40-wire cable is used in the PATA mode.
be4e456e Linus Walleij 2017-06-04 380 * if you're adding a system using the PATA interface, make sure
be4e456e Linus Walleij 2017-06-04 381 * the right cable is set up here, it might be necessary to use
be4e456e Linus Walleij 2017-06-04 382 * special hardware detection or encode the cable type in the device
be4e456e Linus Walleij 2017-06-04 383 * tree with special properties.
be4e456e Linus Walleij 2017-06-04 384 */
be4e456e Linus Walleij 2017-06-04 385 if (!is_ata1) {
be4e456e Linus Walleij 2017-06-04 386 switch (muxmode) {
be4e456e Linus Walleij 2017-06-04 387 case GEMINI_MUXMODE_0:
be4e456e Linus Walleij 2017-06-04 388 ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 389 ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04 390 ftide->master_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04 391 break;
be4e456e Linus Walleij 2017-06-04 392 case GEMINI_MUXMODE_1:
be4e456e Linus Walleij 2017-06-04 393 ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 394 ftide->slave_cbl = ATA_CBL_NONE;
be4e456e Linus Walleij 2017-06-04 395 ftide->master_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04 396 break;
be4e456e Linus Walleij 2017-06-04 397 case GEMINI_MUXMODE_2:
be4e456e Linus Walleij 2017-06-04 398 ftide->master_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04 399 ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04 400 break;
be4e456e Linus Walleij 2017-06-04 401 case GEMINI_MUXMODE_3:
be4e456e Linus Walleij 2017-06-04 402 ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 403 ftide->slave_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 404 ftide->master_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04 405 ftide->slave_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04 406 break;
be4e456e Linus Walleij 2017-06-04 407 }
be4e456e Linus Walleij 2017-06-04 408 } else {
be4e456e Linus Walleij 2017-06-04 409 switch (muxmode) {
be4e456e Linus Walleij 2017-06-04 410 case GEMINI_MUXMODE_0:
be4e456e Linus Walleij 2017-06-04 411 ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 412 ftide->slave_cbl = ATA_CBL_NONE;
be4e456e Linus Walleij 2017-06-04 413 ftide->master_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04 414 break;
be4e456e Linus Walleij 2017-06-04 415 case GEMINI_MUXMODE_1:
be4e456e Linus Walleij 2017-06-04 416 ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 417 ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04 418 ftide->master_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04 419 break;
be4e456e Linus Walleij 2017-06-04 420 case GEMINI_MUXMODE_2:
be4e456e Linus Walleij 2017-06-04 421 ftide->master_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 422 ftide->slave_cbl = ATA_CBL_SATA;
be4e456e Linus Walleij 2017-06-04 423 ftide->slave_to_sata0 = true;
be4e456e Linus Walleij 2017-06-04 424 ftide->master_to_sata1 = true;
be4e456e Linus Walleij 2017-06-04 425 break;
be4e456e Linus Walleij 2017-06-04 426 case GEMINI_MUXMODE_3:
be4e456e Linus Walleij 2017-06-04 427 ftide->master_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04 428 ftide->slave_cbl = ATA_CBL_PATA40;
be4e456e Linus Walleij 2017-06-04 429 break;
be4e456e Linus Walleij 2017-06-04 430 }
be4e456e Linus Walleij 2017-06-04 431 }
be4e456e Linus Walleij 2017-06-04 432 dev_info(dev, "set up Gemini PATA%d\n", is_ata1);
be4e456e Linus Walleij 2017-06-04 433
be4e456e Linus Walleij 2017-06-04 434 return 0;
be4e456e Linus Walleij 2017-06-04 435 }
be4e456e Linus Walleij 2017-06-04 436 #else
be4e456e Linus Walleij 2017-06-04 437 static int pata_ftide010_gemini_init(struct ftide010 *ftide,
be4e456e Linus Walleij 2017-06-04 438 bool is_ata1)
be4e456e Linus Walleij 2017-06-04 439 {
be4e456e Linus Walleij 2017-06-04 440 return -ENOTSUPP;
be4e456e Linus Walleij 2017-06-04 441 }
be4e456e Linus Walleij 2017-06-04 442 #endif
be4e456e Linus Walleij 2017-06-04 443
be4e456e Linus Walleij 2017-06-04 444
:::::: The code at line 376 was first introduced by commit
:::::: be4e456ed3a5918f4e75f532837bb19128a690c9 ata: Add driver for Faraday Technology FTIDE010
:::::: TO: Linus Walleij <linus.walleij@linaro.org>
:::::: CC: Tejun Heo <tj@kernel.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 62819 bytes --]
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox