linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [V8 PATCH 0/3] Introduce ACPI support for ahci_platform driver
@ 2015-03-30 21:56 Suravee Suthikulpanit
  2015-03-30 21:56 ` [V8 PATCH 1/3] ACPICA: Add ACPI _CLS processing Suravee Suthikulpanit
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: Suravee Suthikulpanit @ 2015-03-30 21:56 UTC (permalink / raw)
  To: rjw, mika.westerberg, robert.moore, lv.zheng, hanjun.guo
  Cc: lenb, hdegoede, tj, mjg59, gregkh, al.stone, graeme.gregory,
	leo.duran, linux-ide, linux-acpi, linux-kernel, linaro-acpi,
	Suravee Suthikulpanit

This patch series introduce ACPI support for AHCI platform driver.
Existing ACPI support for AHCI assumes the device controller is a PCI device.
Since there is no ACPI _CID for generic AHCI controller, the driver
could not use it for matching devices. Therefore, this patch introduces
a mechanism for drivers to match devices using ACPI _CLS method.
_CLS contains PCI-defined class-code.

This patch series also modifies ACPI modalias to add class-code to the
exisiting format, which currently only uses _HID and _CIDs. This is required
to support loadable modules w/ _CLS.

This is rebased from and tested with:

    http://git.linaro.org/leg/acpi/acpi.git acpi-5.1-v11

This topic was discussed earlier here (as part of introducing support for
AMD Seattle SATA controller):

    http://marc.info/?l=linux-arm-kernel&m=141083492521584&w=2

Changes from V7 (https://lkml.org/lkml/2015/3/26/592)
	* [1/3] Return AE_AML_OPERAND_TYPE when _CLS package containing
	  invalid type (per Robert Moore suggestion). 
	* [2/3] Fixed build error due missing ACPI_DEVICE_CLASS definition
	  when disabling ACPI.

Changes from V6 (https://lkml.org/lkml/2015/3/25/797)
	* Adding Acked-by Mika, and Reviewed-by Hanjun
	* Minor clen up to use lower case 0xffffff for cls_msk
	  (per Mika suggestions).
	* Modify the ACPI_DEVICE_CLASS macro to use designated initializer
	  (per Mika suggestions).

Changes from V5 (https://lkml.org/lkml/2015/3/6/24)
	* Rebased and tested with acpi-5.1-v11
	* Splitting up the ACPICA changes into a separate patch [1/3].
	  (per Mika suggestion)
	* Adding class-code mask support (per Mika suggestion)
	* Use macro to define struct acpi_device_id entry (per Mika suggestion)
	* Note: Mika also recommend reordering the member of struct acpi_device_id
	  and define a macro to be used for declaring each table entry. This is a
	  large amount of changes, and will be done separtely from this patch series.

Changes from V4 (https://lkml.org/lkml/2015/3/2/56)
	* [1/2] Bug fixed: Reorder the declaration of
	  struct acpi_pnp_device_id cls in the struct acpi_device_info
	  (include/acpi/actypes.h) since compatible_id_list must be last one.
	* [2/2] Added Acked-by: Tejun Heo <tj@kernel.org>

Changes from V3 (https://lkml.org/lkml/2015/2/8/106)
	* Instead of introducing new structure acpi_device_cls, add cls into
	  the acpi_device_id, and modify the __acpi_match_device
	  to also match for cls. (per Mika suggestion.)
	* Add loadable module support, which requires changes in ACPI
	  modalias. (per Mika suggestion.)
	* Rebased and tested with acpi-5.1-v9

Changes from V2 (https://lkml.org/lkml/2015/1/5/662)
	* Update with review comment from Rafael in patch 1/2
	* Rebased and tested with acpi-5.1-v8

Changes from V1 (https://lkml.org/lkml/2014/12/19/345)
	* Rebased to 3.19.0-rc2
	* Change from acpi_cls in device_driver to acpi_match_cls (Hanjun comment)
	* Change the matching logic in acpi_driver_match_device() due to the new
	  special PRP0001 _HID.
	* Simplify the return type of acpi_match_device_cls() to boolean.

Changes from RFC (https://lkml.org/lkml/2014/12/17/446)
	* Remove #ifdef and make non-ACPI version of the acpi_match_device_cls
	  as inline. (per Arnd)
	* Simplify logic to retrieve and evaluate _CLS handle. (per Hanjun)

Suravee Suthikulpanit (3):
  ACPICA: Add ACPI _CLS processing
  ACPI / scan: Add support for ACPI _CLS device matching
  ata: ahci_platform: Add ACPI _CLS matching

 drivers/acpi/acpica/acutils.h     |  3 ++
 drivers/acpi/acpica/nsxfname.c    | 21 +++++++++--
 drivers/acpi/acpica/utids.c       | 73 +++++++++++++++++++++++++++++++++++++++
 drivers/acpi/scan.c               | 36 ++++++++++++++++---
 drivers/ata/Kconfig               |  2 +-
 drivers/ata/ahci_platform.c       |  9 +++++
 include/acpi/acnames.h            |  1 +
 include/acpi/actypes.h            |  4 ++-
 include/linux/acpi.h              | 14 ++++++++
 include/linux/mod_devicetable.h   |  2 ++
 scripts/mod/devicetable-offsets.c |  2 ++
 scripts/mod/file2alias.c          | 32 +++++++++++++++--
 12 files changed, 189 insertions(+), 10 deletions(-)

-- 
2.1.0


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

end of thread, other threads:[~2015-04-27 22:18 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-30 21:56 [V8 PATCH 0/3] Introduce ACPI support for ahci_platform driver Suravee Suthikulpanit
2015-03-30 21:56 ` [V8 PATCH 1/3] ACPICA: Add ACPI _CLS processing Suravee Suthikulpanit
2015-04-13 13:54   ` Rafael J. Wysocki
2015-04-17  1:45   ` Zheng, Lv
2015-04-17  3:48     ` Moore, Robert
2015-04-24 21:08     ` Suravee Suthikulpanit
2015-04-25  2:28       ` Rafael J. Wysocki
2015-04-26 22:45         ` Suthikulpanit, Suravee
2015-04-27 20:38           ` Rafael J. Wysocki
2015-04-27 22:18             ` Suravee Suthikulpanit
2015-03-30 21:56 ` [V8 PATCH 2/3] ACPI / scan: Add support for ACPI _CLS device matching Suravee Suthikulpanit
2015-03-30 21:56 ` [V8 PATCH 3/3] ata: ahci_platform: Add ACPI _CLS matching Suravee Suthikulpanit
2015-04-06 15:45 ` [V8 PATCH 0/3] Introduce ACPI support for ahci_platform driver Suravee Suthikulanit
2015-04-23 16:32   ` Suthikulpanit, Suravee
2015-04-23 17:02     ` Rafael J. Wysocki
2015-04-24 20:46       ` Suravee Suthikulpanit

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