lkml.org 
[lkml]   [2014]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 9/9] ACPI/EC: Add unit test support for EC driver hotplug.
    Date
    This patch adds facility to test future EC modification.
    All EC commits should enable TEST_HOTPLUG, and try a build/boot test.
    Since EC is currently a built-in module, this is the only mean for us to
    test the hotplug code.

    Signed-off-by: Lv Zheng <lv.zheng@intel.com>
    ---
    drivers/acpi/ec.c | 19 +++++++++++++++++++
    1 file changed, 19 insertions(+)

    diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
    index 92058a1..c5d0797 100644
    --- a/drivers/acpi/ec.c
    +++ b/drivers/acpi/ec.c
    @@ -31,6 +31,7 @@

    /* Uncomment next line to get verbose printout */
    /* #define DEBUG */
    +/* #define TEST_HOTPLUG */
    #define pr_fmt(fmt) "ACPI : EC: " fmt

    #include <linux/kernel.h>
    @@ -120,6 +121,9 @@ struct transaction {
    u8 flags;
    };

    +static u32 acpi_ec_gpe_handler(acpi_handle gpe_device,
    + u32 gpe_number, void *data);
    +
    struct acpi_ec *boot_ec, *first_ec;
    EXPORT_SYMBOL(first_ec);

    @@ -720,6 +724,21 @@ static void acpi_ec_gpe_query(void *ec_cxt)
    mutex_lock(&ec->mutex);
    acpi_ec_sync_query(ec, NULL);
    mutex_unlock(&ec->mutex);
    +
    +#ifdef TEST_HOTPLUG
    +
    + /* Unit testing for driver hotplugging */
    +
    + pr_info("Removing EC handlers...\n");
    + acpi_ec_stop(ec);
    + acpi_remove_gpe_handler(NULL, ec->gpe,
    + &acpi_ec_gpe_handler);
    + pr_info("Installing EC handlers...\n");
    + acpi_install_gpe_handler(NULL, ec->gpe,
    + ACPI_GPE_EDGE_TRIGGERED,
    + &acpi_ec_gpe_handler, ec);
    + acpi_ec_start(ec);
    +#endif
    }

    static int ec_check_sci(struct acpi_ec *ec, u8 state)
    --
    1.7.10


    \
     
     \ /
      Last update: 2014-06-18 05:41    [W:2.262 / U:0.264 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site