• Hans de Goede's avatar
    power: supply: axp288_charger: Use one notifier_block per extcon cable · 577b1f06
    Hans de Goede authored
    Prior to this commit the code was using 1 notifier_block for all
    types of charger cable, this is incorrect as the notifier_block
    becomes part of a linked-list and now the same notifier_block
    is part of 3 linked lists.
    
    This commit fixes this by using a separate nb per extcon cable.
    
    Note this happened to work fine sofar because axp288_charger was the only
    listener, so when added to each of the 3 notifier chains, the next pointer
    in the nb would be set to 0, so we've 3 heads pointing to the same nb,
    with its next pointing to NULL. But as soon as we mix in a second extcon
    consumer things will go boom.
    Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
    Signed-off-by: default avatarSebastian Reichel <sre@kernel.org>
    577b1f06
axp288_charger.c 23.8 KB