• Julia Lawall's avatar
    drivers/gpio/gpio-tegra.c: use devm_request_and_ioremap · aedd4fdf
    Julia Lawall authored
    Reimplement a call to devm_request_mem_region followed by a call to ioremap
    or ioremap_nocache by a call to devm_request_and_ioremap.
    
    The semantic patch that makes this transformation is as follows:
    (http://coccinelle.lip6.fr/)
    
    // <smpl>
    @nm@
    expression myname;
    identifier i;
    @@
    
    struct platform_driver i = { .driver = { .name = myname } };
    
    @@
    expression dev,res,size;
    expression nm.myname;
    @@
    
    -if (!devm_request_mem_region(dev, res->start, size,
    -                              \(res->name\|dev_name(dev)\|myname\))) {
    -   ...
    -   return ...;
    -}
    ... when != res->start
    (
    -devm_ioremap(dev,res->start,size)
    +devm_request_and_ioremap(dev,res)
    |
    -devm_ioremap_nocache(dev,res->start,size)
    +devm_request_and_ioremap(dev,res)
    )
    ... when any
        when != res->start
    // </smpl>
    Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
    Signed-off-by: default avatarGrant Likely <grant.likely@secretlab.ca>
    aedd4fdf
gpio-tegra.c 11.5 KB