Create Intel PMC SSRAM Telemetry driver
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v5 Latest5 patches 1 replyIn review
- v44 patches 4 repliesSuperseded
- v38 patches 3 repliesSuperseded
Earlier versions · 2
| Version | Posted | Patches | Replies | Status |
|---|---|---|---|---|
| v2 | 11 patches | 14 replies | Superseded | |
| v1 | 7 patches | 2 replies | Superseded |
v5->v4 from the cover letter
- Remove unneeded changes in pmc_core_ssram_get_lpm_reqs()
- Replace mutex_init() with devm_mutex_init()
Patches in v5 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/5 | platform/x86:intel/vsec: Change return type of intel_vsec_registerdrivers/ include/ | +9 | 0 replies | |
| 2/5 | platform/x86:intel/pmc: Create Intel PMC SSRAM Telemetry driverdrivers/ drivers/ drivers/ +3 more | +185 | 0 replies | |
| 3/5 | platform/x86:intel/pmc: Use devm for mutex_initdrivers/ | +3 | 0 replies | |
| 4/5 | platform/x86:intel/pmc: Move error handling to init functiondrivers/ | +19 | 0 replies | |
| 5/5 | platform/x86:intel/pmc: Improve pmc_core_get_lpm_req()drivers/ | +45 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v5 yet.
Cover letter [PATCH v5 0/5] Create Intel PMC SSRAM Telemetry driver
This patch series removes the SSRAM support from Intel PMC Core driver and creates a separate PCI driver for SSRAM device. The new Intel PMC SSRAM driver provides the following functionalities:
1. Search and store the PMC information in a structure, including PWRMBASE address and devid for each available PMC. Then Intel PMC Core driver achieves the PMC information using the API provided by the new driver.
2. Search and register Intel Platform Monitoring Techology telemetry regions so they would by available for read through sysfs and Intel PMT API. Intel PMC Core driver can achieve Low Power Mode requirement information from a telemetry region registered by the new driver.
The above functionalities was previously handled by Intel PMC Core driver. Intel PMC Core driver returns -EPROBE_DEFER when trying to read data from a telem region that is not available yet. This setup may result in an infinite loop of .probe() calls as Intel PMC Core driver creates child devices. Creating a separate PCI driver avoids the infinite loop possibility.
v5->v4:
- Remove unneeded changes in pmc_core_ssram_get_lpm_reqs()
- Replace mutex_init() with devm_mutex_init()
V4->v3:
- Remove the first six patches that are accepted.
- Add a patch to change the return type of intel_vsec_registeri() from void to int.
- Change the return type of pmc_ssram_telemetry_get_pmc() so the probe function of Intel PMC SSRAM Telemetry driver will fail if intel_vsec_register() fails. The previous implementation hides the failure.
- Use __free(pci_dev_put) in core.c.
- Move pmc_ssram_telemetry_get_pmc_info() function comment to c file from h file.
- Add a patch to improve pmc_core_get_lpm_req() suggested by comment from last version.
v3->v2:
- Add memory barriers to the new driver to ensure write/read order of device_probed variable.
- Minor grammar changes: add needed white space and end of life new line.
- Add patch to move error handling to init function.
- Remove patch to enable SSRAM support of LNL platforms. This patch will be included in a separate series.
v2->v1:
- Rearrange and restructure patches completely based on feedback from v1
Xi Pardee (5):
platform/x86:intel/vsec: Change return type of intel_vsec_register platform/x86:intel/pmc: Create Intel PMC SSRAM Telemetry driver platform/x86:intel/pmc: Use devm for mutex_init platform/x86:intel/pmc: Move error handling to init function platform/x86:intel/pmc: Improve pmc_core_get_lpm_req()
drivers/platform/x86/intel/pmc/Kconfig | 4 + drivers/platform/x86/intel/pmc/Makefile | 8 +- drivers/platform/x86/intel/pmc/core.c | 189 +++++++++++------- drivers/platform/x86/intel/pmc/core.h | 7 - .../platform/x86/intel/pmc/ssram_telemetry.c | 147 +++++++++----- .../platform/x86/intel/pmc/ssram_telemetry.h | 24 +++ drivers/platform/x86/intel/vsec.c | 9 +- include/linux/intel_vsec.h | 5 +- 8 files changed, 260 insertions(+), 133 deletions(-) create mode 100644 drivers/platform/x86/intel/pmc/ssram_telemetry.h
Signature · 1 line
2.43.0