v7: - change there is a container(PNP0A06) has a memory device (PNP0C80) before create device attributes under container subsys
v6: - get container device form container_subsys
v5: - check the container have PNP0C80 before create attribute files
v4: - prettify the code
v3: - prettify the code - add a hisi_internal.h to hold common code
v2: - remove the !adev judge in patch 9, as it will always be true.
patch 1-3: Add support for iterate through the child devices in the acpi device.
patch 4-9: Add support for hbm memory device and hbm cache support
Rafael J. Wysocki (3): ACPI: bus: Introduce acpi_dev_for_each_child() ACPI: bus: Avoid non-ACPI device objects in walks over children ACPI: bus: Export acpi_dev_for_each_child() to modules
Zhang Zekun (5): ACPI: OSL: Export the symbol of acpi_hotplug_schedule soc: hisilicon: hisi_hbmdev: Add power domain control methods ACPI: memhotplug: export the state of each hotplug device soc: hisilicon: hisi_hbmdev: Provide extra memory topology information soc: hbmcache: Add support for online and offline the hbm cache
drivers/acpi/acpi_memhotplug.c | 6 + drivers/acpi/bus.c | 27 +++ drivers/acpi/internal.h | 1 - drivers/acpi/osl.c | 1 + drivers/base/container.c | 1 + drivers/soc/Kconfig | 1 + drivers/soc/Makefile | 1 + drivers/soc/hisilicon/Kconfig | 33 +++ drivers/soc/hisilicon/Makefile | 4 + drivers/soc/hisilicon/hisi_hbmcache.c | 147 +++++++++++++ drivers/soc/hisilicon/hisi_hbmdev.c | 301 ++++++++++++++++++++++++++ drivers/soc/hisilicon/hisi_internal.h | 31 +++ include/acpi/acpi_bus.h | 2 + include/linux/acpi.h | 1 + include/linux/memory_hotplug.h | 2 + 15 files changed, 558 insertions(+), 1 deletion(-) create mode 100644 drivers/soc/hisilicon/Kconfig create mode 100644 drivers/soc/hisilicon/Makefile create mode 100644 drivers/soc/hisilicon/hisi_hbmcache.c create mode 100644 drivers/soc/hisilicon/hisi_hbmdev.c create mode 100644 drivers/soc/hisilicon/hisi_internal.h