|
91 | 91 | #define AMD_CPU_ID_PCO AMD_CPU_ID_RV |
92 | 92 | #define AMD_CPU_ID_CZN AMD_CPU_ID_RN |
93 | 93 | #define AMD_CPU_ID_YC 0x14B5 |
| 94 | +#define AMD_CPU_ID_CB 0x14D8 |
94 | 95 |
|
95 | 96 | #define PMC_MSG_DELAY_MIN_US 50 |
96 | 97 | #define RESPONSE_REGISTER_LOOP_MAX 20000 |
@@ -318,6 +319,7 @@ static int amd_pmc_idlemask_read(struct amd_pmc_dev *pdev, struct device *dev, |
318 | 319 | val = amd_pmc_reg_read(pdev, AMD_PMC_SCRATCH_REG_CZN); |
319 | 320 | break; |
320 | 321 | case AMD_CPU_ID_YC: |
| 322 | + case AMD_CPU_ID_CB: |
321 | 323 | val = amd_pmc_reg_read(pdev, AMD_PMC_SCRATCH_REG_YC); |
322 | 324 | break; |
323 | 325 | default: |
@@ -491,7 +493,7 @@ static void amd_pmc_dbgfs_register(struct amd_pmc_dev *dev) |
491 | 493 | &amd_pmc_idlemask_fops); |
492 | 494 | /* Enable STB only when the module_param is set */ |
493 | 495 | if (enable_stb) { |
494 | | - if (dev->cpu_id == AMD_CPU_ID_YC) |
| 496 | + if (dev->cpu_id == AMD_CPU_ID_YC || dev->cpu_id == AMD_CPU_ID_CB) |
495 | 497 | debugfs_create_file("stb_read", 0644, dev->dbgfs_dir, dev, |
496 | 498 | &amd_pmc_stb_debugfs_fops_v2); |
497 | 499 | else |
@@ -615,6 +617,7 @@ static int amd_pmc_get_os_hint(struct amd_pmc_dev *dev) |
615 | 617 | return MSG_OS_HINT_PCO; |
616 | 618 | case AMD_CPU_ID_RN: |
617 | 619 | case AMD_CPU_ID_YC: |
| 620 | + case AMD_CPU_ID_CB: |
618 | 621 | return MSG_OS_HINT_RN; |
619 | 622 | } |
620 | 623 | return -EINVAL; |
@@ -735,6 +738,7 @@ static struct acpi_s2idle_dev_ops amd_pmc_s2idle_dev_ops = { |
735 | 738 | #endif |
736 | 739 |
|
737 | 740 | static const struct pci_device_id pmc_pci_ids[] = { |
| 741 | + { PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_CB) }, |
738 | 742 | { PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_YC) }, |
739 | 743 | { PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_CZN) }, |
740 | 744 | { PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_RN) }, |
@@ -877,7 +881,7 @@ static int amd_pmc_probe(struct platform_device *pdev) |
877 | 881 |
|
878 | 882 | mutex_init(&dev->lock); |
879 | 883 |
|
880 | | - if (enable_stb && dev->cpu_id == AMD_CPU_ID_YC) { |
| 884 | + if (enable_stb && (dev->cpu_id == AMD_CPU_ID_YC || dev->cpu_id == AMD_CPU_ID_CB)) { |
881 | 885 | err = amd_pmc_s2d_init(dev); |
882 | 886 | if (err) |
883 | 887 | return err; |
@@ -915,6 +919,7 @@ static const struct acpi_device_id amd_pmc_acpi_ids[] = { |
915 | 919 | {"AMDI0005", 0}, |
916 | 920 | {"AMDI0006", 0}, |
917 | 921 | {"AMDI0007", 0}, |
| 922 | + {"AMDI0008", 0}, |
918 | 923 | {"AMD0004", 0}, |
919 | 924 | {"AMD0005", 0}, |
920 | 925 | { } |
|
0 commit comments