Message ID | 20250403-s2mpg10-v3-15-b542b3505e68@linaro.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Samsung S2MPG10 PMIC MFD-based drivers | expand |
Patch is fine, but the subject line should be more assertive. Also, there is seldom any need for sub-sentences in ()'s in them. IOW, drop the "(it seems)" part. > The commit bf231e5febcf ("mfd: sec-core: Add support for the Samsung > s2dos05") adding s2dos05 support didn't add anything related to IRQ > support, so I assume this works without IRQs. > > Rather than printing a warning message in sec_irq_init() due to the > missing IRQ number, or returning an error due to a missing irq chip > regmap, just return early explicitly. > > This will become particularly important once errors from sec_irq_init() > aren't ignored anymore in an upcoming patch and helps the reader of > this code while reasoning about what the intention might be here. > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Signed-off-by: André Draszik <andre.draszik@linaro.org> > --- > drivers/mfd/sec-irq.c | 14 ++++++++------ > 1 file changed, 8 insertions(+), 6 deletions(-) > > diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c > index 9f0173c48b0c8186a2cdc1d2179db081ef2e09c4..79a3b33441fa5ab48b4b233eb8d89b4c20c142ed 100644 > --- a/drivers/mfd/sec-irq.c > +++ b/drivers/mfd/sec-irq.c > @@ -452,16 +452,12 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) > int type = sec_pmic->device_type; > const struct regmap_irq_chip *sec_irq_chip; > > - if (!sec_pmic->irq) { > - dev_warn(sec_pmic->dev, > - "No interrupt specified, no interrupts\n"); > - return 0; > - } > - > switch (type) { > case S5M8767X: > sec_irq_chip = &s5m8767_irq_chip; > break; > + case S2DOS05: > + return 0; > case S2MPA01: > sec_irq_chip = &s2mps14_irq_chip; > break; > @@ -492,6 +488,12 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) > sec_pmic->device_type); > } > > + if (!sec_pmic->irq) { > + dev_warn(sec_pmic->dev, > + "No interrupt specified, no interrupts\n"); > + return 0; > + } > + > ret = devm_regmap_add_irq_chip(sec_pmic->dev, sec_pmic->regmap_pmic, > sec_pmic->irq, IRQF_ONESHOT, > 0, sec_irq_chip, &sec_pmic->irq_data); > > -- > 2.49.0.472.ge94155a9ec-goog >
diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c index 9f0173c48b0c8186a2cdc1d2179db081ef2e09c4..79a3b33441fa5ab48b4b233eb8d89b4c20c142ed 100644 --- a/drivers/mfd/sec-irq.c +++ b/drivers/mfd/sec-irq.c @@ -452,16 +452,12 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) int type = sec_pmic->device_type; const struct regmap_irq_chip *sec_irq_chip; - if (!sec_pmic->irq) { - dev_warn(sec_pmic->dev, - "No interrupt specified, no interrupts\n"); - return 0; - } - switch (type) { case S5M8767X: sec_irq_chip = &s5m8767_irq_chip; break; + case S2DOS05: + return 0; case S2MPA01: sec_irq_chip = &s2mps14_irq_chip; break; @@ -492,6 +488,12 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic) sec_pmic->device_type); } + if (!sec_pmic->irq) { + dev_warn(sec_pmic->dev, + "No interrupt specified, no interrupts\n"); + return 0; + } + ret = devm_regmap_add_irq_chip(sec_pmic->dev, sec_pmic->regmap_pmic, sec_pmic->irq, IRQF_ONESHOT, 0, sec_irq_chip, &sec_pmic->irq_data);