linux/drivers/acpi
Sudeep Holla 0d4c331af4 ACPI: PPTT: Use table offset as fw_token instead of virtual address
There is need to use the cache sharing information quite early during
the boot before the secondary cores are up and running. The permanent
memory map for all the ACPI tables(via acpi_permanent_mmap) is turned
on in acpi_early_init() which is quite late for the above requirement.

As a result there is possibility that the ACPI PPTT gets mapped to
different virtual addresses. In such scenarios, using virtual address as
fw_token before the acpi_permanent_mmap is enabled results in different
fw_token for the same cache entity and hence wrong cache sharing
information will be deduced based on the same.

Instead of using virtual address, just use the table offset as the
unique firmware token for the caches. The same offset is used as
ACPI identifiers if the firmware has not set a valid one for other
entries in the ACPI PPTT.

Link: https://lore.kernel.org/r/20220704101605.1318280-2-sudeep.holla@arm.com
Cc: linux-acpi@vger.kernel.org
Tested-by: Ionela Voinescu <ionela.voinescu@arm.com>
Tested-by: Conor Dooley <conor.dooley@microchip.com>
Acked-by: Rafael J. Wysocki <rafael@kernel.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2022-07-04 16:22:27 +01:00
..
acpica Revert "ACPICA: executer/exsystem: Warn about sleeps greater than 10 ms" 2022-05-21 18:02:26 +02:00
apei ACPI, APEI, EINJ: Refuse to inject into the zero page 2022-04-22 16:52:27 +02:00
arm64 ACPI: AGDI: Fix missing prototype warning for acpi_agdi_init() 2022-05-06 20:35:44 +02:00
dptf ACPI: DPTF: Support Meteor Lake 2022-05-25 15:37:07 +02:00
nfit cxl for 5.19 2022-05-27 21:24:19 -07:00
numa cxl for 5.17 2022-01-12 15:57:59 -08:00
pmic ACPI: PMIC: xpower: Fix _TMP ACPI errors 2021-12-08 15:34:57 +01:00
x86 platform-drivers-x86 for v5.18-1 2022-03-25 12:14:39 -07:00
ac.c ACPI: clean up white space in a few places for consistency 2022-05-12 16:54:49 +02:00
acpi_adxl.c
acpi_amba.c ACPI: AMBA: Fix resource name in /proc/iomem 2021-06-30 20:01:10 +02:00
acpi_apd.c i2c: designware: Add AMD PSP I2C bus support 2022-02-11 15:38:23 +01:00
acpi_cmos_rtc.c ACPI: cmos_rtc: Using pr_fmt() and remove PREFIX 2021-06-07 15:36:45 +02:00
acpi_configfs.c ACPI: configfs: Make get_header() to return error pointer 2021-07-16 19:20:28 +02:00
acpi_dbg.c ACPI: debug: Remove the not used function 2020-11-17 18:12:34 +01:00
acpi_extlog.c ACPI / extlog: Check for RDMSR failure 2020-10-02 19:01:55 +02:00
acpi_fpdt.c ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved 2021-08-25 20:01:07 +02:00
acpi_ipmi.c ACPI: IPMI: replace usage of found with dedicated list iterator variable 2022-03-25 18:01:40 +01:00
acpi_lpat.c
acpi_lpit.c
acpi_lpss.c ACPI: LPSS: Provide an SSP type to the driver 2022-03-01 20:36:34 +01:00
acpi_memhotplug.c ACPI: memhotplug: use a single static memory group for a single memory device 2021-09-08 11:50:23 -07:00
acpi_pad.c ACPI: Add perf low power callback 2022-04-05 10:24:38 +02:00
acpi_pcc.c ACPI: PCC: pcc_ctx can be static 2022-01-12 19:40:31 +01:00
acpi_platform.c ACPI: platform: Constify properties parameter in acpi_create_platform_device() 2022-03-01 20:36:34 +01:00
acpi_pnp.c ACPI: PNP: remove duplicated BRI0A49 and BDP3336 entries 2021-09-24 18:12:15 +02:00
acpi_processor.c ACPI: processor: Replace deprecated CPU-hotplug functions 2021-08-04 20:25:54 +02:00
acpi_tad.c ACPI: Use DEVICE_ATTR_<RW|RO|WO> macros 2021-01-22 16:17:19 +01:00
acpi_video.c ACPI: video: improve PM notifer callback 2022-05-19 20:07:54 +02:00
acpi_watchdog.c ACPI: watchdog: Replace open coded variant of resource_union() 2020-11-17 18:06:29 +01:00
battery.c ACPI: battery: Make "not-charging" the default on no charging or full info 2022-05-06 20:37:51 +02:00
bgrt.c ACPI: BGRT: use static for BGRT_SHOW kobj_attribute defines 2022-04-22 16:55:33 +02:00
blacklist.c ACPI: blacklist: Unify the message printing 2021-06-07 15:36:45 +02:00
bus.c cxl for 5.19 2022-05-27 21:24:19 -07:00
button.c ACPI: button: Add DMI quirk for Lenovo Yoga 9 (14INTL5) 2021-08-25 19:57:01 +02:00
container.c
cppc_acpi.c Merge branches 'acpi-glue', 'acpi-osl', 'acpi-processor' and 'acpi-cppc' 2022-05-30 18:04:57 +02:00
custom_method.c ACPI: custom_method: fix a possible memory leak 2021-04-28 19:17:54 +02:00
debugfs.c
device_pm.c Merge branches 'acpi-pm', 'acpi-pci', 'acpi-sysfs' and 'acpi-tables' 2022-05-23 18:29:20 +02:00
device_sysfs.c ACPI: sysfs: use default_groups in kobj_type 2021-12-28 19:15:41 +01:00
dock.c ACPI: Use acpi_fetch_acpi_dev() instead of acpi_bus_get_device() 2021-12-17 18:45:51 +01:00
ec_sys.c ACPI: EC: Mark the ec_sys write_support param as module_param_hw() 2021-12-01 20:19:30 +01:00
ec.c ACPI: EC: Rearrange code in acpi_ec_submit_event() 2022-02-14 20:14:40 +01:00
event.c Merge branches 'acpi-ec', 'acpi-apei', 'acpi-soc' and 'acpi-misc' 2021-06-29 15:51:25 +02:00
evged.c ACPI: GED: fix -Wformat 2020-11-09 19:25:20 +01:00
fan_attr.c ACPI: fan: Add additional attributes for fine grain control 2022-02-25 20:49:30 +01:00
fan_core.c ACPI: fan: Add additional attributes for fine grain control 2022-02-25 20:49:30 +01:00
fan.h ACPI: DPTF: Support Meteor Lake 2022-05-25 15:37:07 +02:00
glue.c ACPI: glue: Rearrange find_child_checks() 2022-05-12 16:52:32 +02:00
hed.c ACPI: HED: Drop unused ACPI_MODULE_NAME() definition 2021-03-08 16:51:48 +01:00
internal.h ACPI: scan: Use ida_alloc() instead of ida_simple_get() 2022-02-18 20:16:34 +01:00
ioapic.c
irq.c ACPI: irq: Prevent unregistering of GIC SGIs 2021-04-23 18:00:52 +01:00
Kconfig ACPI: clean up double words in two comments 2022-02-21 20:09:52 +01:00
Makefile ACPI: fan: Separate file for attributes creation 2022-02-25 20:49:29 +01:00
nvs.c Merge branches 'acpi-ec', 'acpi-apei', 'acpi-soc' and 'acpi-misc' 2021-06-29 15:51:25 +02:00
osi.c
osl.c ACPI: OSL: Remove the helper for deactivating memory region 2022-04-27 20:44:55 +02:00
pci_irq.c ACPI: PCI: IRQ: Consolidate printing diagnostic messages 2021-03-08 16:51:08 +01:00
pci_link.c ACPI: clean up double words in two comments 2022-02-21 20:09:52 +01:00
pci_mcfg.c PCI: tegra: Add Tegra194 MCFG quirks for ECAM errata 2021-04-16 11:34:17 -05:00
pci_root.c cxl for 5.19 2022-05-27 21:24:19 -07:00
pci_slot.c
pfr_telemetry.c ACPI: pfr_telemetry: Fix info leak in pfrt_log_ioctl() 2022-01-10 16:36:45 +01:00
pfr_update.c ACPI: pfr_update: Fix return value check in pfru_write() 2022-01-06 18:53:31 +01:00
platform_profile.c ACPI: platform-profile: call sysfs_notify() from platform_profile_store() 2021-08-16 18:32:02 +02:00
power.c Merge branches 'acpi-scan', 'acpi-pm', 'acpi-power' and 'acpi-pci' 2022-01-10 16:48:27 +01:00
pptt.c ACPI: PPTT: Use table offset as fw_token instead of virtual address 2022-07-04 16:22:27 +01:00
prmt.c ACPI: PRM: Handle memory allocation and memory remap failure 2021-10-26 15:29:07 +02:00
proc.c proc: remove PDE_DATA() completely 2022-01-22 08:33:37 +02:00
processor_core.c
processor_driver.c ACPI: Use acpi_fetch_acpi_dev() instead of acpi_bus_get_device() 2021-12-17 18:45:51 +01:00
processor_idle.c Merge branches 'acpi-glue', 'acpi-osl', 'acpi-processor' and 'acpi-cppc' 2022-05-30 18:04:57 +02:00
processor_pdc.c ACPI: processor: Get rid of ACPICA message printing 2021-03-08 16:51:19 +01:00
processor_perflib.c ACPI: processor_perflib: Cleanup print messages 2021-06-07 15:36:46 +02:00
processor_thermal.c ACPI: processor: thermal: avoid cpufreq_get_policy() 2021-12-30 19:39:34 +01:00
processor_throttling.c Merge branches 'acpi-dptf' and 'acpi-messages' 2021-06-29 15:50:37 +02:00
property.c ACPI: property: Release subnode properties with data nodes 2022-04-13 19:54:47 +02:00
reboot.c ACPI: reboot: Unify the message printing 2021-06-07 15:36:46 +02:00
resource.c ACPI: Use acpi_fetch_acpi_dev() instead of acpi_bus_get_device() 2021-12-17 18:45:51 +01:00
sbs.c ACPI: sbs: Unify the message printing 2021-06-07 15:36:46 +02:00
sbshc.c Merge branches 'acpi-ec', 'acpi-apei', 'acpi-soc' and 'acpi-misc' 2021-06-29 15:51:25 +02:00
sbshc.h ACPI: Fix whitespace inconsistencies 2020-11-09 19:08:06 +01:00
scan.c ACPI: bus: Eliminate acpi_bus_get_device() 2022-04-05 19:49:26 +02:00
sleep.c Merge back reboot/poweroff notifiers rework for 5.19-rc1. 2022-05-25 14:38:29 +02:00
sleep.h Revert "Revert "ACPI: scan: Turn off unused power resources during initialization"" 2021-05-10 14:02:17 +02:00
spcr.c ACPI: SPCR: Add support for NVIDIA 16550-compatible port subtype 2022-04-13 20:37:29 +02:00
sysfs.c ACPI: sysfs: Fix BERT error region memory mapping 2022-04-13 19:58:14 +02:00
tables.c ACPI: tables: Make LAPIC_ADDR_OVR address readable in message 2022-03-25 18:11:42 +01:00
thermal.c Merge branches 'acpi-tables', 'acpi-numa', 'acpi-sysfs', 'acpi-cppc', 'acpi-thermal' and 'acpi-battery' 2022-01-10 17:22:15 +01:00
tiny-power-button.c ACPI: tiny-power-button: Simplify the code using module_acpi_driver() 2020-11-17 18:12:34 +01:00
utils.c ACPI: utils: include UUID in _DSM evaluation warning 2022-05-19 20:06:26 +02:00
video_detect.c ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU 2022-03-17 14:29:07 +01:00
viot.c ACPI: Add driver for the VIOT table 2021-06-25 15:02:43 +02:00
wakeup.c ACPI: Fix whitespace inconsistencies 2020-11-09 19:08:06 +01:00