• Julia Lawall's avatar
    ASoC: ux500_msp_i2s: better use devm functions and fix error return code · b18e93a4
    Julia Lawall authored
    Remove unnecessary calls to devm_kfree and replace iounmap by devm_iounmap
    (and use resource_size for the third argument).  These changes make it
    possible to remove the error-handling code at the end of
    ux500_msp_i2s_init_msp, and all of the gotos become direct returns.
    
    In the case of the second call to devm_kzalloc, the return variable ret was
    not initialized.  Here it is changed to a direct return of -ENOMEM.
    
    A simplified version of the semantic match that finds the second problem is as
    follows: (http://coccinelle.lip6.fr/)
    
    // <smpl>
    (
    if@p1 (\(ret < 0\|ret != 0\))
     { ... return ret; }
    |
    ret@p1 = 0
    )
    ... when != ret = e1
        when != &ret
    *if(...)
    {
      ... when != ret = e2
          when forall
     return ret;
    }
    
    // </smpl>
    Signed-off-by: default avatarJulia Lawall <Julia.Lawall@lip6.fr>
    Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
    b18e93a4
ux500_msp_i2s.c 19.7 KB