Re: [PATCH] mfd: max77686: fix support for devices without irq specified

From: Javier Martinez Canillas
Date: Fri Aug 08 2014 - 06:10:13 EST


Hello,

On 08/08/2014 10:58 AM, Javier Martinez Canillas wrote:
>
>>
>> Not sufficient. You have to also fix RTC driver (OOPS from Trats2
>> attached). Also consider adding checks for (max77686->irq) to the
>> suspend and resume.
>>
>
> Right, the max77686 RTC driver assumes that an IRQ domain will be created on the
> mfd driver so a virtual IRQ can be mapped for the RTC alarm1 IRQ. This
> assumptions comes from the fact that the "interrupt" property is required
> according to the DT binding doc.
>

Although for Trats2 I see that arch/arm/boot/dts/exynos4412-trats2.dts defines
an interrupt, so I wonder why regmap_irq_get_virq() is giving an oops there:

max77686_pmic@09 {
compatible = "maxim,max77686";
interrupt-parent = <&gpx0>;
interrupts = <7 0>;
reg = <0x09>;
#clock-cells = <1>;
...


> So the max77686 RTC wakealarm was not working for these boards before?
>
> Just to be sure that I understand the issue: these boards don't really have an
> IRQ connected to the PMIC, is not that this information is just missing in the
> Device Tree, right?
>

By looking at Odroid's 3.8 based vendor tree I see that an IRQ for the max77686
PMIC is defined [0] using platform data:

static struct max77686_platform_data exynos4_max77686_info = {
.irq_gpio = EXYNOS4_GPX3(2),
.ono = EXYNOS4_GPX1(2),
.num_regulators = ARRAY_SIZE(max77686_regulators),
.regulators = max77686_regulators,
...

So maybe this information is missing in
arch/arm/boot/dts/exynos4412-odroid-common.dtsi?

Best regards,
Javier

[0]:
https://github.com/hardkernel/linux/blob/odroid-3.8.y/arch/arm/mach-exynos/pmic-77686.h#L927

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/