linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [RFC PATCH for AMD Seattle 0/4] Drivers for AMD-Seatlle to boot from ACPI
       [not found] <1410828446-28502-1-git-send-email-suravee.suthikulpanit@amd.com>
@ 2014-09-16  4:28 ` Suravee Suthikulpanit
  2014-09-16 22:56   ` Jon Masters
       [not found] ` <1410828446-28502-2-git-send-email-suravee.suthikulpanit@amd.com>
  1 sibling, 1 reply; 10+ messages in thread
From: Suravee Suthikulpanit @ 2014-09-16  4:28 UTC (permalink / raw)
  To: catalin.marinas, will.deacon, linux-arm-kernel, linux-acpi
  Cc: linux-kernel, astone, hanjun.guo, rjw, marc.zyngier, mark.rutland,
	Sudeep.Holla, olof, grant.likely, graeme.gregory, arnd, jason

Note: Correcting the typo for linux-acpi mailing list in this reply.

Also, I would like to add the link to the "AMD Opteron™ A1100 Series 
Processor ACPI Porting Guide", which describes the current ACPI table 
for AMD Seattle platform here:

http://amd-dev.wpengine.netdna-cdn.com/wordpress/media/2012/10/Seattle_ACPI_Guide.pdf

Suravee

On 09/15/2014 07:47 PM, suravee.suthikulpanit@amd.com wrote:
> From: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
>
> As a follow up of the email thread:
>
>      [PATCH v3 00/17] Introduce ACPI for ARM64 based on ACPI 5.1
>      https://lkml.org/lkml/2014/9/1/446
>
> Besides Hanjun Guo's patches above, these are the additional patches required
> to boot AMD Seattle platform with full ACPI support:
>
>      [PATCH] efi/arm64: efistub: don't abort if base of DRAM is occupied
>      http://lists.infradead.org/pipermail/linux-arm-kernel/2014-July/272274.html
>
>      [PATCH v2] efi/arm64: fix fdt-related memory reservation
>      https://lkml.org/lkml/2014/9/8/483
>
>      [PATCH] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
>      https://lkml.org/lkml/2014/9/9/834
>
>      [RFC PATCH for Juno 2/2] tty: SBSA compatible UART
>      https://lkml.org/lkml/2014/9/1/448
>      (NOTE: This is not meant to be submitted upstream, but required to enable
>       ACPI support for UART SBSA driver.)
>
> These patches are rebased from the linux-3.17-rc4 upstream kernel, and
> compatible with the AMD Seattle Firmware version ROD0070C.
> The full kernel boot log can be found here:
>
>      http://people.linaro.org/~al.stone/seattle-boot-acpi-dmesg.txt
>
> Suravee / Al
>
> Ard Biesheuvel (1):
>    arm64/efi: efistub: don't abort if base of DRAM is occupied
>
> Grame Gregory (1):
>    [RFC PATCH for Juno 2/2] tty: SBSA compatible UART
>
> Mark Salter (1):
>    efi/arm64: fix fdt-related memory reservation
>
> Suravee Suthikulpanit (1):
>    ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
>
>   arch/arm64/kernel/efi-stub.c       |  16 +-
>   arch/arm64/mm/init.c               |   3 +-
>   drivers/ata/Kconfig                |   2 +-
>   drivers/ata/ahci_platform.c        |  13 ++
>   drivers/firmware/efi/libstub/fdt.c |  10 +-
>   drivers/tty/Kconfig                |   6 +
>   drivers/tty/Makefile               |   1 +
>   drivers/tty/sbsauart.c             | 328 +++++++++++++++++++++++++++++++++++++
>   8 files changed, 365 insertions(+), 14 deletions(-)
>   create mode 100644 drivers/tty/sbsauart.c
>
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [RFC PATCH for AMD Seattle 0/4] Drivers for AMD-Seatlle to boot from ACPI
  2014-09-16  4:28 ` [RFC PATCH for AMD Seattle 0/4] Drivers for AMD-Seatlle to boot from ACPI Suravee Suthikulpanit
@ 2014-09-16 22:56   ` Jon Masters
  0 siblings, 0 replies; 10+ messages in thread
From: Jon Masters @ 2014-09-16 22:56 UTC (permalink / raw)
  To: Suravee Suthikulpanit, catalin.marinas, will.deacon
  Cc: linux-kernel, astone, hanjun.guo, rjw, marc.zyngier, mark.rutland,
	Sudeep.Holla, olof, grant.likely, graeme.gregory, arnd, jason,
	linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org

On 09/16/2014 12:28 AM, Suravee Suthikulpanit wrote:
> Note: Correcting the typo for linux-acpi mailing list in this reply.
> 
> Also, I would like to add the link to the "AMD Opteron™ A1100 Series 
> Processor ACPI Porting Guide", which describes the current ACPI table 
> for AMD Seattle platform here:
> 
> http://amd-dev.wpengine.netdna-cdn.com/wordpress/media/2012/10/Seattle_ACPI_Guide.pdf

Thanks again for posting the patch series, and this document, which is
very useful. We have test systems running these patches right now, and
they work quite well. If anyone at Linaro Connect this week would like
to see hardware and get their own kernel built running these bits, let
myself, Suravee, or Al know and we'll help you make that happen.

Jon.

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
       [not found] ` <1410828446-28502-2-git-send-email-suravee.suthikulpanit@amd.com>
@ 2014-09-17  1:26   ` Matthew Garrett
  2014-10-01 21:19     ` Suravee Suthikulanit
  0 siblings, 1 reply; 10+ messages in thread
From: Matthew Garrett @ 2014-09-17  1:26 UTC (permalink / raw)
  To: suravee.suthikulpanit
  Cc: mark.rutland, rjw, graeme.gregory, arnd, marc.zyngier,
	catalin.marinas, olof, will.deacon, linux-kernel, astone,
	linux-acpi, hanjun.guo, Sudeep.Holla, grant.likely,
	linux-arm-kernel, jason

On Mon, Sep 15, 2014 at 07:47:23PM -0500, suravee.suthikulpanit@amd.com wrote:
> From: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
> 
> This patch adds ACPI match table in ahci_platform. The table includes
> the acpi_device_id to match AMD Seattle SATA controller with following
> asl structure in DSDT:
> 
>     Device (SATA0)
>     {
>       Name(_HID, "AMDI0600")	// Seattle AHSATA

There really ought to be a well-defined PNPID for AHCI, so you can _HID 
to AMD and _CID to something generic. That way we won't have:

> +#ifdef CONFIG_ATA_ACPI
> +static const struct acpi_device_id ahci_acpi_match[] = {
> +	{ "AMDI0600", 0 }, /* AMD Seattle AHCI */
> +	{ },
> +};

utter sadness here. Really, please don't end up in a situation where we 
need to add device-specific IDs to a generic driver.

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
  2014-09-17  1:26   ` [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller Matthew Garrett
@ 2014-10-01 21:19     ` Suravee Suthikulanit
  2014-10-02  8:39       ` Arnd Bergmann
  0 siblings, 1 reply; 10+ messages in thread
From: Suravee Suthikulanit @ 2014-10-01 21:19 UTC (permalink / raw)
  To: Matthew Garrett
  Cc: catalin.marinas, will.deacon, linux-arm-kernel, linux-acpi,
	mark.rutland, arnd, graeme.gregory, marc.zyngier, rjw,
	linux-kernel, astone, grant.likely, hanjun.guo, Sudeep.Holla,
	olof, jason, Duran, Leo, Jon Masters

On 9/16/2014 8:26 PM, Matthew Garrett wrote:
> On Mon, Sep 15, 2014 at 07:47:23PM -0500, suravee.suthikulpanit@amd.com wrote:
>> From: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
>>
>> This patch adds ACPI match table in ahci_platform. The table includes
>> the acpi_device_id to match AMD Seattle SATA controller with following
>> asl structure in DSDT:
>>
>>      Device (SATA0)
>>      {
>>        Name(_HID, "AMDI0600")	// Seattle AHSATA
>
> There really ought to be a well-defined PNPID for AHCI, so you can _HID
> to AMD and _CID to something generic. That way we won't have:
>
>> +#ifdef CONFIG_ATA_ACPI
>> +static const struct acpi_device_id ahci_acpi_match[] = {
>> +	{ "AMDI0600", 0 }, /* AMD Seattle AHCI */
>> +	{ },
>> +};
>
> utter sadness here. Really, please don't end up in a situation where we
> need to add device-specific IDs to a generic driver.
>
Matthew,

Currently, there is no _CID defined for generic AHCI. We will work on 
proposing one, and provide update patches for including the new ID.

Thanks,
Suravee


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
  2014-10-01 21:19     ` Suravee Suthikulanit
@ 2014-10-02  8:39       ` Arnd Bergmann
  2014-10-06 16:31         ` Matthew Garrett
  0 siblings, 1 reply; 10+ messages in thread
From: Arnd Bergmann @ 2014-10-02  8:39 UTC (permalink / raw)
  To: Suravee Suthikulanit
  Cc: Matthew Garrett, catalin.marinas, will.deacon, linux-arm-kernel,
	linux-acpi, mark.rutland, graeme.gregory, marc.zyngier, rjw,
	linux-kernel, astone, grant.likely, hanjun.guo, Sudeep.Holla,
	olof, jason, Duran, Leo, Jon Masters

On Wednesday 01 October 2014 16:19:37 Suravee Suthikulanit wrote:
> On 9/16/2014 8:26 PM, Matthew Garrett wrote:
> > On Mon, Sep 15, 2014 at 07:47:23PM -0500, suravee.suthikulpanit@amd.com wrote:
> >> From: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
> >>
> >> This patch adds ACPI match table in ahci_platform. The table includes
> >> the acpi_device_id to match AMD Seattle SATA controller with following
> >> asl structure in DSDT:
> >>
> >>      Device (SATA0)
> >>      {
> >>        Name(_HID, "AMDI0600")        // Seattle AHSATA
> >
> > There really ought to be a well-defined PNPID for AHCI, so you can _HID
> > to AMD and _CID to something generic. That way we won't have:
> >
> >> +#ifdef CONFIG_ATA_ACPI
> >> +static const struct acpi_device_id ahci_acpi_match[] = {
> >> +    { "AMDI0600", 0 }, /* AMD Seattle AHCI */
> >> +    { },
> >> +};
> >
> > utter sadness here. Really, please don't end up in a situation where we
> > need to add device-specific IDs to a generic driver.
> >
> Matthew,
> 
> Currently, there is no _CID defined for generic AHCI. We will work on 
> proposing one, and provide update patches for including the new ID.
> 

I think part of the problem is that there is no specification for what
an AHCI device should look like when it's not connected to a PCI
bus, the AHCI document published by Intel just states:

"AHCI is a PCI class device that acts as a data movement engine
between system memory and Serial ATA devices."

It also requires the PCI config space to have the PM capability
registers and (optionally) the MSI capability registers.
There are lots of chips we support in Linux with the ahci-platform
driver, but they are not actually compliant because they cannot
use the pmcap registers but instead typically rely on setting
external clock/phy/regulator/pinctrl registers.

The ARM SBSA document just requires any SATA controller to be AHCI
compliant but does not explain what that means in the case where
it's not a PCI device.

	Arnd

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
  2014-10-02  8:39       ` Arnd Bergmann
@ 2014-10-06 16:31         ` Matthew Garrett
  2014-10-06 18:19           ` Arnd Bergmann
  0 siblings, 1 reply; 10+ messages in thread
From: Matthew Garrett @ 2014-10-06 16:31 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Suravee Suthikulanit, catalin.marinas, will.deacon,
	linux-arm-kernel, linux-acpi, mark.rutland, graeme.gregory,
	marc.zyngier, rjw, linux-kernel, astone, grant.likely, hanjun.guo,
	Sudeep.Holla, olof, jason, Duran, Leo, Jon Masters

On Thu, Oct 02, 2014 at 10:39:18AM +0200, Arnd Bergmann wrote:

> I think part of the problem is that there is no specification for what
> an AHCI device should look like when it's not connected to a PCI
> bus, the AHCI document published by Intel just states:

One thing that has come out of further discussion on this - ACPI defines 
a _CLS object, which allows ACPI devices to declare compatibility with a 
PCI class device. We don't have support for it at the moment, but it 
would be easy enough to add this to the kernel and then just expose the 
AHCI PCI class via _CLS. That would avoid us having problems with people 
doing similar things with USB hosts.

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
  2014-10-06 16:31         ` Matthew Garrett
@ 2014-10-06 18:19           ` Arnd Bergmann
  2014-10-06 18:21             ` Matthew Garrett
  0 siblings, 1 reply; 10+ messages in thread
From: Arnd Bergmann @ 2014-10-06 18:19 UTC (permalink / raw)
  To: Matthew Garrett
  Cc: Suravee Suthikulanit, catalin.marinas, will.deacon,
	linux-arm-kernel, linux-acpi, mark.rutland, graeme.gregory,
	marc.zyngier, rjw, linux-kernel, astone, grant.likely, hanjun.guo,
	Sudeep.Holla, olof, jason, Duran, Leo, Jon Masters

On Monday 06 October 2014 17:31:47 Matthew Garrett wrote:
> On Thu, Oct 02, 2014 at 10:39:18AM +0200, Arnd Bergmann wrote:
> 
> > I think part of the problem is that there is no specification for what
> > an AHCI device should look like when it's not connected to a PCI
> > bus, the AHCI document published by Intel just states:
> 
> One thing that has come out of further discussion on this - ACPI defines 
> a _CLS object, which allows ACPI devices to declare compatibility with a 
> PCI class device. We don't have support for it at the moment, but it 
> would be easy enough to add this to the kernel and then just expose the 
> AHCI PCI class via _CLS. That would avoid us having problems with people 
> doing similar things with USB hosts.

Interesting. Does this also define a way to get access to registers
that are normally in PCI config space, provided they are accessible at
all?

I'm guessing that it's not extremely important, given that so far all
platforms are doing ok without the power management registers or MSI,
but I guess it would be nice if we could support those.

	Arnd

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
  2014-10-06 18:19           ` Arnd Bergmann
@ 2014-10-06 18:21             ` Matthew Garrett
  2014-10-06 18:44               ` Arnd Bergmann
  0 siblings, 1 reply; 10+ messages in thread
From: Matthew Garrett @ 2014-10-06 18:21 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Suravee Suthikulanit, catalin.marinas, will.deacon,
	linux-arm-kernel, linux-acpi, mark.rutland, graeme.gregory,
	marc.zyngier, rjw, linux-kernel, astone, grant.likely, hanjun.guo,
	Sudeep.Holla, olof, jason, Duran, Leo, Jon Masters

On Mon, Oct 06, 2014 at 08:19:37PM +0200, Arnd Bergmann wrote:

> Interesting. Does this also define a way to get access to registers
> that are normally in PCI config space, provided they are accessible at
> all?

Unfortunately not. I'd assume that PM registers are expected to be 
accessed via the _PS* methods instead. Does MSI make sense outside the 
context of PCI interrupts?

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
  2014-10-06 18:21             ` Matthew Garrett
@ 2014-10-06 18:44               ` Arnd Bergmann
  2014-10-06 18:47                 ` Matthew Garrett
  0 siblings, 1 reply; 10+ messages in thread
From: Arnd Bergmann @ 2014-10-06 18:44 UTC (permalink / raw)
  To: Matthew Garrett
  Cc: Suravee Suthikulanit, catalin.marinas, will.deacon,
	linux-arm-kernel, linux-acpi, mark.rutland, graeme.gregory,
	marc.zyngier, rjw, linux-kernel, astone, grant.likely, hanjun.guo,
	Sudeep.Holla, olof, jason, Duran, Leo, Jon Masters

On Monday 06 October 2014 19:21:53 Matthew Garrett wrote:
> On Mon, Oct 06, 2014 at 08:19:37PM +0200, Arnd Bergmann wrote:
> 
> > Interesting. Does this also define a way to get access to registers
> > that are normally in PCI config space, provided they are accessible at
> > all?
> 
> Unfortunately not. I'd assume that PM registers are expected to be 
> accessed via the _PS* methods instead. Does MSI make sense outside the 
> context of PCI interrupts?

Yes, the ARM GIC has a weird sense of what MSI is used for, and
apparently some SoC vendors have started using MSI by default for
all on-chip peripherals.

A patch series to extend MSI to platform devices is currently
under review.

	Arnd

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller
  2014-10-06 18:44               ` Arnd Bergmann
@ 2014-10-06 18:47                 ` Matthew Garrett
  0 siblings, 0 replies; 10+ messages in thread
From: Matthew Garrett @ 2014-10-06 18:47 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Suravee Suthikulanit, catalin.marinas, will.deacon,
	linux-arm-kernel, linux-acpi, mark.rutland, graeme.gregory,
	marc.zyngier, rjw, linux-kernel, astone, grant.likely, hanjun.guo,
	Sudeep.Holla, olof, jason, Duran, Leo, Jon Masters

On Mon, Oct 06, 2014 at 08:44:35PM +0200, Arnd Bergmann wrote:
> On Monday 06 October 2014 19:21:53 Matthew Garrett wrote:
> > Unfortunately not. I'd assume that PM registers are expected to be 
> > accessed via the _PS* methods instead. Does MSI make sense outside the 
> > context of PCI interrupts?
> 
> Yes, the ARM GIC has a weird sense of what MSI is used for, and
> apparently some SoC vendors have started using MSI by default for
> all on-chip peripherals.
> 
> A patch series to extend MSI to platform devices is currently
> under review.

Mm. Yeah, it doesn't seem like there's any ACPI-defined mechanism for 
MSI control. Let's chat about this next week?

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2014-10-06 18:47 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1410828446-28502-1-git-send-email-suravee.suthikulpanit@amd.com>
2014-09-16  4:28 ` [RFC PATCH for AMD Seattle 0/4] Drivers for AMD-Seatlle to boot from ACPI Suravee Suthikulpanit
2014-09-16 22:56   ` Jon Masters
     [not found] ` <1410828446-28502-2-git-send-email-suravee.suthikulpanit@amd.com>
2014-09-17  1:26   ` [PATCH 1/4] ata: ahci_platform: Add ACPI support for AMD Seattle SATA controller Matthew Garrett
2014-10-01 21:19     ` Suravee Suthikulanit
2014-10-02  8:39       ` Arnd Bergmann
2014-10-06 16:31         ` Matthew Garrett
2014-10-06 18:19           ` Arnd Bergmann
2014-10-06 18:21             ` Matthew Garrett
2014-10-06 18:44               ` Arnd Bergmann
2014-10-06 18:47                 ` Matthew Garrett

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).