]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mfd: intel_soc_pmic_bxtwc: Fix IRQ domain names duplication
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Sat, 5 Oct 2024 19:27:07 +0000 (22:27 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Dec 2024 12:53:32 +0000 (13:53 +0100)
[ Upstream commit 3727c0b4ff6ba0e61203544b4c831f7f8899753b ]

For all of the devices regmap IRQ may try to created the folder
with the same name which is impossible and fails with:

  debugfs: File '\_SB.IPC1.PMIC' in directory 'domains' already present!

Add domain_suffix to all of the IRQ chips driver registers to solve
the issue.

Fixes: 39d047c0b1c8 ("mfd: add Intel Broxton Whiskey Cove PMIC driver")
Fixes: 957ae5098185 ("platform/x86: Add Whiskey Cove PMIC TMU support")
Fixes: 57129044f504 ("mfd: intel_soc_pmic_bxtwc: Use chained IRQs for second level IRQ chips")
Depends-on: dde286ee5770 ("regmap: Allow setting IRQ domain name suffix")
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20241005193029.1929139-5-andriy.shevchenko@linux.intel.com
Signed-off-by: Lee Jones <lee@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mfd/intel_soc_pmic_bxtwc.c

index f588e0f1fd0ade10079b98cf630e07f0113e6a22..b65f604a1eec3befd4ff2866a853cdb7264e92e8 100644 (file)
@@ -149,6 +149,7 @@ static struct regmap_irq_chip bxtwc_regmap_irq_chip = {
 
 static struct regmap_irq_chip bxtwc_regmap_irq_chip_pwrbtn = {
        .name = "bxtwc_irq_chip_pwrbtn",
+       .domain_suffix = "PWRBTN",
        .status_base = BXTWC_PWRBTNIRQ,
        .mask_base = BXTWC_MPWRBTNIRQ,
        .irqs = bxtwc_regmap_irqs_pwrbtn,
@@ -158,6 +159,7 @@ static struct regmap_irq_chip bxtwc_regmap_irq_chip_pwrbtn = {
 
 static struct regmap_irq_chip bxtwc_regmap_irq_chip_tmu = {
        .name = "bxtwc_irq_chip_tmu",
+       .domain_suffix = "TMU",
        .status_base = BXTWC_TMUIRQ,
        .mask_base = BXTWC_MTMUIRQ,
        .irqs = bxtwc_regmap_irqs_tmu,
@@ -167,6 +169,7 @@ static struct regmap_irq_chip bxtwc_regmap_irq_chip_tmu = {
 
 static struct regmap_irq_chip bxtwc_regmap_irq_chip_bcu = {
        .name = "bxtwc_irq_chip_bcu",
+       .domain_suffix = "BCU",
        .status_base = BXTWC_BCUIRQ,
        .mask_base = BXTWC_MBCUIRQ,
        .irqs = bxtwc_regmap_irqs_bcu,
@@ -176,6 +179,7 @@ static struct regmap_irq_chip bxtwc_regmap_irq_chip_bcu = {
 
 static struct regmap_irq_chip bxtwc_regmap_irq_chip_adc = {
        .name = "bxtwc_irq_chip_adc",
+       .domain_suffix = "ADC",
        .status_base = BXTWC_ADCIRQ,
        .mask_base = BXTWC_MADCIRQ,
        .irqs = bxtwc_regmap_irqs_adc,
@@ -185,6 +189,7 @@ static struct regmap_irq_chip bxtwc_regmap_irq_chip_adc = {
 
 static struct regmap_irq_chip bxtwc_regmap_irq_chip_chgr = {
        .name = "bxtwc_irq_chip_chgr",
+       .domain_suffix = "CHGR",
        .status_base = BXTWC_CHGR0IRQ,
        .mask_base = BXTWC_MCHGR0IRQ,
        .irqs = bxtwc_regmap_irqs_chgr,
@@ -194,6 +199,7 @@ static struct regmap_irq_chip bxtwc_regmap_irq_chip_chgr = {
 
 static struct regmap_irq_chip bxtwc_regmap_irq_chip_crit = {
        .name = "bxtwc_irq_chip_crit",
+       .domain_suffix = "CRIT",
        .status_base = BXTWC_CRITIRQ,
        .mask_base = BXTWC_MCRITIRQ,
        .irqs = bxtwc_regmap_irqs_crit,