Commit e7406042 authored by Ryan Chen's avatar Ryan Chen Committed by Marc Zyngier
Browse files

irqchip/aspeed-scu-ic: Correctly initialise status and enable registers



The status and enable registers are never initialised with sensible
default values. Fix those.

Signed-off-by: default avatarRyan Chen <ryan_chen@aspeedtech.com>
[maz: commit message]
Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230130085430.635583-1-ryan_chen@aspeedtech.com
parent 5dc4c995
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -17,8 +17,9 @@

#define ASPEED_SCU_IC_REG		0x018
#define ASPEED_SCU_IC_SHIFT		0
#define ASPEED_SCU_IC_ENABLE		GENMASK(6, ASPEED_SCU_IC_SHIFT)
#define ASPEED_SCU_IC_ENABLE		GENMASK(15, ASPEED_SCU_IC_SHIFT)
#define ASPEED_SCU_IC_NUM_IRQS		7
#define ASPEED_SCU_IC_STATUS		GENMASK(28, 16)
#define ASPEED_SCU_IC_STATUS_SHIFT	16

#define ASPEED_AST2600_SCU_IC0_REG	0x560
@@ -155,6 +156,8 @@ static int aspeed_scu_ic_of_init_common(struct aspeed_scu_ic *scu_ic,
		rc = PTR_ERR(scu_ic->scu);
		goto err;
	}
	regmap_write_bits(scu_ic->scu, scu_ic->reg, ASPEED_SCU_IC_STATUS, ASPEED_SCU_IC_STATUS);
	regmap_write_bits(scu_ic->scu, scu_ic->reg, ASPEED_SCU_IC_ENABLE, 0);

	irq = irq_of_parse_and_map(node, 0);
	if (!irq) {