Skip to content

Commit 8c8d541

Browse files
committed
Merge tag 'platform-drivers-x86-v6.13-5' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
Pull x86 platform driver fixes from Ilpo Järvinen: "Fixes and new HW support: - amd/pmc: Match IRQ1 wakeup disable with the enable on i8042 side - intel: power-domains: Clearwater Forest support - intel/pmc: Skip SSRAM setup when no additional devices are present - ISST: Clearwater Forest support" * tag 'platform-drivers-x86-v6.13-5' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: platform/x86: intel/pmc: Fix ioremap() of bad address platform/x86: ISST: Add Clearwater Forest to support list platform/x86/intel: power-domains: Add Clearwater Forest support platform/x86/amd/pmc: Only disable IRQ1 wakeup where i8042 actually enabled it
2 parents b999e7f + 1d7461d commit 8c8d541

File tree

4 files changed

+13
-1
lines changed

4 files changed

+13
-1
lines changed

drivers/platform/x86/amd/pmc/pmc.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -947,6 +947,10 @@ static int amd_pmc_suspend_handler(struct device *dev)
947947
{
948948
struct amd_pmc_dev *pdev = dev_get_drvdata(dev);
949949

950+
/*
951+
* Must be called only from the same set of dev_pm_ops handlers
952+
* as i8042_pm_suspend() is called: currently just from .suspend.
953+
*/
950954
if (pdev->disable_8042_wakeup && !disable_workarounds) {
951955
int rc = amd_pmc_wa_irq1(pdev);
952956

@@ -959,7 +963,9 @@ static int amd_pmc_suspend_handler(struct device *dev)
959963
return 0;
960964
}
961965

962-
static DEFINE_SIMPLE_DEV_PM_OPS(amd_pmc_pm, amd_pmc_suspend_handler, NULL);
966+
static const struct dev_pm_ops amd_pmc_pm = {
967+
.suspend = amd_pmc_suspend_handler,
968+
};
963969

964970
static const struct pci_device_id pmc_pci_ids[] = {
965971
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_PS) },

drivers/platform/x86/intel/pmc/core_ssram.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,8 +269,12 @@ pmc_core_ssram_get_pmc(struct pmc_dev *pmcdev, int pmc_idx, u32 offset)
269269
/*
270270
* The secondary PMC BARS (which are behind hidden PCI devices)
271271
* are read from fixed offsets in MMIO of the primary PMC BAR.
272+
* If a device is not present, the value will be 0.
272273
*/
273274
ssram_base = get_base(tmp_ssram, offset);
275+
if (!ssram_base)
276+
return 0;
277+
274278
ssram = ioremap(ssram_base, SSRAM_HDR_SIZE);
275279
if (!ssram)
276280
return -ENOMEM;

drivers/platform/x86/intel/speed_select_if/isst_if_common.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -804,6 +804,7 @@ EXPORT_SYMBOL_GPL(isst_if_cdev_unregister);
804804
static const struct x86_cpu_id isst_cpu_ids[] = {
805805
X86_MATCH_VFM(INTEL_ATOM_CRESTMONT, SST_HPM_SUPPORTED),
806806
X86_MATCH_VFM(INTEL_ATOM_CRESTMONT_X, SST_HPM_SUPPORTED),
807+
X86_MATCH_VFM(INTEL_ATOM_DARKMONT_X, SST_HPM_SUPPORTED),
807808
X86_MATCH_VFM(INTEL_EMERALDRAPIDS_X, 0),
808809
X86_MATCH_VFM(INTEL_GRANITERAPIDS_D, SST_HPM_SUPPORTED),
809810
X86_MATCH_VFM(INTEL_GRANITERAPIDS_X, SST_HPM_SUPPORTED),

drivers/platform/x86/intel/tpmi_power_domains.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ static const struct x86_cpu_id tpmi_cpu_ids[] = {
8181
X86_MATCH_VFM(INTEL_GRANITERAPIDS_X, NULL),
8282
X86_MATCH_VFM(INTEL_ATOM_CRESTMONT_X, NULL),
8383
X86_MATCH_VFM(INTEL_ATOM_CRESTMONT, NULL),
84+
X86_MATCH_VFM(INTEL_ATOM_DARKMONT_X, NULL),
8485
X86_MATCH_VFM(INTEL_GRANITERAPIDS_D, NULL),
8586
X86_MATCH_VFM(INTEL_PANTHERCOVE_X, NULL),
8687
{}

0 commit comments

Comments
 (0)