• Laxman Dewangan's avatar
    mfd: palmas: Initialise client->of_node for dummy created client · c4fbec3c
    Laxman Dewangan authored
    Palmas device have three different i2c addresses. The device creates
    the two new dummy i2c clients for accessing the register by using
    primary client adapter. This new dummy i2c client have their of_node
    as NULL.
    The dummy i2c client is used for registering interrupt and on this,
    it creates irq domain handle. This created irq domain handle has
    their of_node as NULL.
    Now when any child of this device is registered through the DT as
             palmas: tps65913@58 {
             	#interrupt-cells = <2>;
                    palmas_rtc {
                           compatible = "ti,palmas-rtc";
                           interrupt-parent = <&palmas>;
                           interrupts = <8 0>;
    And child driver (palam-rtc in this case) get their irq number as
    	irq = platform_get_irq(pdev, 0);
    The returned irq number is error in this case. The reason is that
    the created irq_domain handle for the palmas interrupt does not have
    valid node and so matching of node fails with palmas node.
    Hence initialising the newly dummy created client->of_node with the
    primary clients of_node so that irq_domain handle have proper of_node
    for matching.
    Signed-off-by: default avatarLaxman Dewangan <ldewangan@nvidia.com>
    Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
palmas.c 13.6 KB