[coreboot-gerrit] Patch merged into coreboot/master: 1c81128 pnp: Add some default functions to enter/exit config state

gerrit at coreboot.org gerrit at coreboot.org
Wed Jul 3 16:13:12 CEST 2013


the following patch was just integrated into master:
commit 1c81128dcd3a723f75d554b0a8d87101d7dd3663
Author: Nico Huber <nico.h at gmx.de>
Date:   Sat Jun 15 20:33:44 2013 +0200

    pnp: Add some default functions to enter/exit config state
    
    Implement some common default functions to enter and exit the
    configuration state. Also provide default pnp_mode_ops for common
    enter()/exit() function pairs.
    
    The following cocci ensures their use:
        @ mode_match @
        identifier enter, exit, ops;
        @@
         struct pnp_mode_ops ops = {
                 .enter_conf_mode  = enter,
                 .exit_conf_mode   = exit,
         };
    
        @ enter_match_8787 @
        identifier mode_match.enter, dev;
        @@
         enter(...)
         {
                 outb(0x87, dev->path.pnp.port);
                 outb(0x87, dev->path.pnp.port);
         }
    
        @ depends on enter_match_8787 @
        identifier mode_match.enter, mode_match.ops;
        @@
         struct pnp_mode_ops ops = {
        -        .enter_conf_mode  = enter,
        +        .enter_conf_mode  = pnp_enter_conf_mode_8787,
         };
    
        @ enter_match_55 @
        identifier mode_match.enter, dev;
        @@
         enter(...)
         {
                 outb(0x55, dev->path.pnp.port);
         }
    
        @ depends on enter_match_55 @
        identifier mode_match.enter, mode_match.ops;
        @@
         struct pnp_mode_ops ops = {
        -        .enter_conf_mode  = enter,
        +        .enter_conf_mode  = pnp_enter_conf_mode_55,
         };
    
        @ depends on enter_match_8787 || enter_match_55 @
        identifier mode_match.enter;
        @@
        -enter(...) {...}
    
        @ exit_match_aa @
        identifier mode_match.exit, dev;
        @@
         exit(...)
         {
                 outb(0xaa, dev->path.pnp.port);
         }
    
        @ depends on exit_match_aa @
        identifier mode_match.exit, mode_match.ops;
        @@
         struct pnp_mode_ops ops = {
        -        .exit_conf_mode   = exit,
        +        .exit_conf_mode   = pnp_exit_conf_mode_aa,
         };
    
        @ depends on exit_match_aa @
        identifier mode_match.exit;
        @@
        -exit(...) {...}
    
        @ depends on enter_match_8787 || enter_match_55 || exit_match_aa @
        @@
         #include <device/pnp.h>
        +#include <superio/conf_mode.h>
    
        @ mode_match_55_aa @
        identifier ops;
        @@
         struct pnp_mode_ops ops = {
                 .enter_conf_mode  = pnp_enter_conf_mode_55,
                 .exit_conf_mode   = pnp_exit_conf_mode_aa,
         };
    
        @@
        identifier mode_match_55_aa.ops;
        @@
        -struct pnp_mode_ops ops = {...};
    
        @@
        identifier mode_match_55_aa.ops, devops;
        @@
         struct device_operations devops = {
        -        .ops_pnp_mode     = &ops,
        +        .ops_pnp_mode     = &pnp_conf_mode_55_aa,
         };
    
        @ mode_match_8787_aa @
        identifier ops;
        @@
         struct pnp_mode_ops ops = {
                 .enter_conf_mode  = pnp_enter_conf_mode_8787,
                 .exit_conf_mode   = pnp_exit_conf_mode_aa,
         };
    
        @@
        identifier mode_match_8787_aa.ops;
        @@
        -struct pnp_mode_ops ops = {...};
    
        @@
        identifier mode_match_8787_aa.ops, devops;
        @@
         struct device_operations devops = {
        -        .ops_pnp_mode     = &ops,
        +        .ops_pnp_mode     = &pnp_conf_mode_8787_aa,
         };
    
    Change-Id: I1480336b54523cc95210d99cf31c1a0b3a14b464
    Signed-off-by: Nico Huber <nico.h at gmx.de>
    Reviewed-on: http://review.coreboot.org/3484
    Tested-by: build bot (Jenkins)
    Reviewed-by: Paul Menzel <paulepanter at users.sourceforge.net>
    Reviewed-by: Kyösti Mälkki <kyosti.malkki at gmail.com>


See http://review.coreboot.org/3484 for details.

-gerrit



More information about the coreboot-gerrit mailing list