]> git.ipfire.org Git - thirdparty/kernel/linux.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)
committerLee Jones <lee@kernel.org>
Wed, 16 Oct 2024 08:04:11 +0000 (09:04 +0100)
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>
drivers/mfd/intel_soc_pmic_bxtwc.c

index fefbeb4164fdee8ffda59ad1f619d94560855861..b7204072e93ef882711a0bd53b8873c91a671b3a 100644 (file)
@@ -148,6 +148,7 @@ static const struct regmap_irq_chip bxtwc_regmap_irq_chip = {
 
 static const 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,
@@ -157,6 +158,7 @@ static const struct regmap_irq_chip bxtwc_regmap_irq_chip_pwrbtn = {
 
 static const 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,
@@ -166,6 +168,7 @@ static const struct regmap_irq_chip bxtwc_regmap_irq_chip_tmu = {
 
 static const 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,
@@ -175,6 +178,7 @@ static const struct regmap_irq_chip bxtwc_regmap_irq_chip_bcu = {
 
 static const 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,
@@ -184,6 +188,7 @@ static const struct regmap_irq_chip bxtwc_regmap_irq_chip_adc = {
 
 static const 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,
@@ -193,6 +198,7 @@ static const struct regmap_irq_chip bxtwc_regmap_irq_chip_chgr = {
 
 static const 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,