Skip to contentSkip to conversation

ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

PATCH New suman-tripathi 4 participants 7 messages Jun 15, 2016 – Jul 5, 2016 1 message not in the archive

Subsystems (2)
lore
Share & tools
lore
#1 lore raw

PATCH 1/1 ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

In reply to a message not in the archive

This patch adds ACPI support for APM X-Gene AHCI controller in ahci_platform driver for v3 hardware. APM X-Gene AHCI controller v3 hardware is fully compliant with ahci_platform driver and requires no workaround quirk.

---
 drivers/ata/ahci_platform.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/ahci_platform.c +1 -0
index 62a04c8..3395baf 100644
@@ -86,6 +86,7 @@ MODULE_DEVICE_TABLE(of, ahci_of_match);
 
 static const struct acpi_device_id ahci_acpi_match[] = {
 	{ ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
+	{ "APMC0D33", 0},
 	{},
 };
 MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);

--
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

#2 lore raw

PATCH 1/1 ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

Quoted 16 lines · CEST suman-tripathi

This patch adds ACPI support for APM X-Gene AHCI controller in ahci_platform driver for v3 hardware. APM X-Gene AHCI controller v3 hardware is fully compliant with ahci_platform driver and requires no workaround quirk.

---
 drivers/ata/ahci_platform.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/ahci_platform.c +0 -0
index 62a04c8..3395baf 100644

drivers/ata/ahci_platform.c MODULE_DEVICE_TABLE(of, ahci_of_match); · line 92

Quoted 7 lines
drivers/ata/ahci_platform.c +1 -0
@@ -86,6 +86,7 @@ MODULE_DEVICE_TABLE(of, ahci_of_match);
 
 static const struct acpi_device_id ahci_acpi_match[] = {
        { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
+       { "APMC0D33", 0},
        {},
 };
 MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);

Doesn't the ACPI_DEVICE_CLASS entry take care of this? I thought it had been added specifically for this purpose. It doesn't seem right to add vendor specific entries for generic hardware in each generic driver.

Arnd

#3 lore raw

PATCH 1/1 ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

Quoted 18 lines · Arnd Bergmann
Quoted 16 lines · CEST suman-tripathi

This patch adds ACPI support for APM X-Gene AHCI controller in ahci_platform driver for v3 hardware. APM X-Gene AHCI controller v3 hardware is fully compliant with ahci_platform driver and requires no workaround quirk.

---
 drivers/ata/ahci_platform.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/ahci_platform.c +0 -0
index 62a04c8..3395baf 100644
@@ -86,6 +86,7 @@ MODULE_DEVICE_TABLE(of, ahci_of_match);
 
Quoted 9 lines

drivers/ata/ahci_platform.c MODULE_DEVICE_TABLE(of, ahci_of_match); · line 92

Quoted 7 lines
drivers/ata/ahci_platform.c +1 -0
 static const struct acpi_device_id ahci_acpi_match[] = {
        { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
+       { "APMC0D33", 0},
        {},
 };
 MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);

Doesn't the ACPI_DEVICE_CLASS entry take care of this? I thought it had been

yeah it also works. Just thought that we need something different as our's is a non-PCI SATA.

Quoted 5 lines

added specifically for this purpose. It doesn't seem right to add vendor specific entries for generic hardware in each generic driver.

Arnd

Signature · 3 lines
Thanks,
with regards,
Suman Tripathi
#4 lore raw

PATCH 1/1 ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

Hi Arnd,

Quoted 30 lines · Suman Tripathi
Quoted 18 lines · Arnd Bergmann
Quoted 16 lines · CEST suman-tripathi

This patch adds ACPI support for APM X-Gene AHCI controller in ahci_platform driver for v3 hardware. APM X-Gene AHCI controller v3 hardware is fully compliant with ahci_platform driver and requires no workaround quirk.

---
 drivers/ata/ahci_platform.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/ahci_platform.c +0 -0
index 62a04c8..3395baf 100644
@@ -86,6 +86,7 @@ MODULE_DEVICE_TABLE(of, ahci_of_match);
 
Quoted 9 lines

drivers/ata/ahci_platform.c MODULE_DEVICE_TABLE(of, ahci_of_match); · line 92

Quoted 7 lines
drivers/ata/ahci_platform.c +1 -0
 static const struct acpi_device_id ahci_acpi_match[] = {
        { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
+       { "APMC0D33", 0},
        {},
 };
 MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);

Doesn't the ACPI_DEVICE_CLASS entry take care of this? I thought it had been

Quoted 2 lines

yeah it also works. Just thought that we need something different as our's is a non-PCI SATA.

Are you suggesting to introduce a new class ACPI_DEVICE_CLASS for non-pci ahci ? or to reuse the existing PCI_CLASS_STORAGE_SATA_AHCI ?

Quoted 13 lines
Quoted 5 lines

added specifically for this purpose. It doesn't seem right to add vendor specific entries for generic hardware in each generic driver.

Arnd

--
Thanks,
with regards,
Suman Tripathi

Signature · 3 lines
Thanks,
with regards,
Suman Tripathi
#5 lore raw

PATCH 1/1 ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

Quoted 31 lines · CEST Suman Tripathi
Quoted 30 lines · Suman Tripathi
Quoted 27 lines · Arnd Bergmann
Quoted 16 lines · CEST suman-tripathi

This patch adds ACPI support for APM X-Gene AHCI controller in ahci_platform driver for v3 hardware. APM X-Gene AHCI controller v3 hardware is fully compliant with ahci_platform driver and requires no workaround quirk.

---
 drivers/ata/ahci_platform.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/ahci_platform.c +0 -0
index 62a04c8..3395baf 100644

drivers/ata/ahci_platform.c MODULE_DEVICE_TABLE(of, ahci_of_match); · line 92

Quoted 7 lines
drivers/ata/ahci_platform.c +1 -0
@@ -86,6 +86,7 @@ MODULE_DEVICE_TABLE(of, ahci_of_match);
 
 static const struct acpi_device_id ahci_acpi_match[] = {
        { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
+       { "APMC0D33", 0},
        {},
 };
 MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);

Doesn't the ACPI_DEVICE_CLASS entry take care of this? I thought it had been

Quoted 5 lines
Quoted 2 lines

yeah it also works. Just thought that we need something different as our's is a non-PCI SATA.

Are you suggesting to introduce a new class ACPI_DEVICE_CLASS for non-pci ahci ? or to reuse the existing PCI_CLASS_STORAGE_SATA_AHCI ?

This was specifically introduced for non-PCI devices, so it should just work.

Arnd

#6 lore raw

PATCH 1/1 ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

In reply to Suman Tripathi
Quoted 33 lines · Suman Tripathi

Hi Arnd,

Quoted 30 lines · Suman Tripathi
Quoted 27 lines · Arnd Bergmann
Quoted 16 lines · CEST suman-tripathi

This patch adds ACPI support for APM X-Gene AHCI controller in ahci_platform driver for v3 hardware. APM X-Gene AHCI controller v3 hardware is fully compliant with ahci_platform driver and requires no workaround quirk.

---
 drivers/ata/ahci_platform.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/ahci_platform.c +0 -0
index 62a04c8..3395baf 100644

drivers/ata/ahci_platform.c MODULE_DEVICE_TABLE(of, ahci_of_match); · line 92

Quoted 7 lines
drivers/ata/ahci_platform.c +1 -0
@@ -86,6 +86,7 @@ MODULE_DEVICE_TABLE(of, ahci_of_match);
 
 static const struct acpi_device_id ahci_acpi_match[] = {
        { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
+       { "APMC0D33", 0},
        {},
 };
 MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);

Doesn't the ACPI_DEVICE_CLASS entry take care of this? I thought it had been

Quoted 5 lines
Quoted 2 lines

yeah it also works. Just thought that we need something different as our's is a non-PCI SATA.

Are you suggesting to introduce a new class ACPI_DEVICE_CLASS for non-pci ahci ? or to reuse the existing PCI_CLASS_STORAGE_SATA_AHCI ?

This was discussed when AMD Seattle SoC had the same issue and it was decided in standards body and on LKML that using PCI device classes for non PCI devices was fine.

Example from Overdrive DSDT

Device (AHC0)
{
Name (_HID, "AMDI0600") // _HID: Hardware ID Name (_UID, 0x00) // _UID: Unique ID
Name (_CCA, 0x01) // _CCA: Cache Coherency Attribute Name (_CLS,

    Package (0x03) // _CLS: Class Code
    {
      0x01,
      0x06,
      0x01
    })

...

Graeme

#7 lore raw

PATCH 1/1 ata: ahci_platform: Add ACPI support for APM X-Gene AHCI controller v3 hardware.

Quoted 53 lines · Graeme Gregory
Quoted 33 lines · Suman Tripathi

Hi Arnd,

Quoted 30 lines · Suman Tripathi
Quoted 27 lines · Arnd Bergmann
Quoted 16 lines · CEST suman-tripathi

This patch adds ACPI support for APM X-Gene AHCI controller in ahci_platform driver for v3 hardware. APM X-Gene AHCI controller v3 hardware is fully compliant with ahci_platform driver and requires no workaround quirk.

---
 drivers/ata/ahci_platform.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/ata/ahci_platform.c +0 -0
index 62a04c8..3395baf 100644

drivers/ata/ahci_platform.c MODULE_DEVICE_TABLE(of, ahci_of_match); · line 92

Quoted 7 lines
drivers/ata/ahci_platform.c +1 -0
@@ -86,6 +86,7 @@ MODULE_DEVICE_TABLE(of, ahci_of_match);
 
 static const struct acpi_device_id ahci_acpi_match[] = {
        { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
+       { "APMC0D33", 0},
        {},
 };
 MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);

Doesn't the ACPI_DEVICE_CLASS entry take care of this? I thought it had been

Quoted 5 lines
Quoted 2 lines

yeah it also works. Just thought that we need something different as our's is a non-PCI SATA.

Are you suggesting to introduce a new class ACPI_DEVICE_CLASS for non-pci ahci ? or to reuse the existing PCI_CLASS_STORAGE_SATA_AHCI ?

This was discussed when AMD Seattle SoC had the same issue and it was decided in standards body and on LKML that using PCI device classes for non PCI devices was fine.

Example from Overdrive DSDT

Device (AHC0)
{
Name (_HID, "AMDI0600") // _HID: Hardware ID Name (_UID, 0x00) // _UID: Unique ID
Name (_CCA, 0x01) // _CCA: Cache Coherency Attribute Name (_CLS,

Quoted 6 lines
    Package (0x03) // _CLS: Class Code
    {
      0x01,
      0x06,
      0x01
    })

Got it. Will do the same. Thanks !!

Quoted 5 lines

...

Graeme

Signature · 3 lines
Thanks,
with regards,
Suman Tripathi