• Christophe JAILLET's avatar
    ASoC: wcd9335: Fix a double irq free in the remove function · 7a6a723e
    Christophe JAILLET authored
    There is no point in calling 'free_irq()' explicitly for
    'WCD9335_IRQ_SLIMBUS' in the remove function.
    
    The irqs are requested in 'wcd9335_setup_irqs()' using a resource managed
    function (i.e. 'devm_request_threaded_irq()').
    'wcd9335_setup_irqs()' requests all what is defined in the 'wcd9335_irqs'
    structure.
    This structure has only one entry for 'WCD9335_IRQ_SLIMBUS'.
    
    So 'devm_request...irq()' + explicit 'free_irq()' would lead to a double
    free.
    
    Remove the unneeded 'free_irq()' from the remove function.
    
    Fixes: 20aedafd ("ASoC: wcd9335: add support to wcd9335 codec")
    Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
    Message-Id: <0614d63bc00edd7e81dd367504128f3d84f72efa.1629091028.git.christophe.jaillet@wanadoo.fr>
    Signed-off-by: default avatarMark Brown <broonie@kernel.org>
    7a6a723e
wcd9335.c 157 KB