lkml.org 
[lkml]   [2012]   [Sep]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC PATCH 8/17] input: RMI4 F09 Built-In Self Test
    On 08/27/2012 03:07 PM, Linus Walleij wrote:
    [snip]
    >> >+static struct device_attribute attrs[] = {
    >> >+ __ATTR(status, RMI_RW_ATTR,
    >> >+ rmi_f09_status_show, rmi_f09_status_store),
    >> >+ __ATTR(limitRegisterCount, RMI_RO_ATTR,
    >> >+ rmi_f09_limit_register_count_show, rmi_store_error),
    >> >+ __ATTR(hostTestEnable, RMI_RW_ATTR,
    >> >+ rmi_f09_host_test_enable_show, rmi_f09_host_test_enable_store),
    >> >+ __ATTR(internalLimits, RMI_RO_ATTR,
    >> >+ rmi_f09_internal_limits_show, rmi_store_error),
    >> >+ __ATTR(resultRegisterCount, RMI_RO_ATTR,
    >> >+ rmi_f09_result_register_count_show, rmi_store_error),
    >> >+ __ATTR(overall_bist_result, RMI_RO_ATTR,
    >> >+ rmi_f09_overall_bist_result_show, rmi_store_error),
    >> >+ __ATTR(test_number_control, RMI_RW_ATTR,
    >> >+ rmi_f09_test_number_control_show,
    >> >+ rmi_f09_test_number_control_store),
    >> >+ __ATTR(test_result1, RMI_RO_ATTR,
    >> >+ rmi_f09_test_result1_show, rmi_store_error),
    >> >+ __ATTR(test_result2, RMI_RO_ATTR,
    >> >+ rmi_f09_test_result2_show, rmi_store_error),
    >> >+ __ATTR(run_bist, RMI_RW_ATTR,
    >> >+ rmi_f09_run_bist_show, rmi_f09_run_bist_store),
    >> >+ __ATTR(f09_control_test1, RMI_RW_ATTR,
    >> >+ rmi_f09_control_test1_show, rmi_f09_control_test1_store),
    >> >+ __ATTR(f09_control_test2, RMI_RW_ATTR,
    >> >+ rmi_f09_control_test2_show, rmi_f09_control_test2_store),
    >> >+};
    > If this is*only* for tests, then for sure this should be in debugfs?

    F09 is used in the final product (for example, a phone or tablet) both
    on the production line and to diagnose failures in returned products.
    We can't be certain that the phone/tablet/whatever manufacturer will
    include debugfs in their production kernel, and if they don't they
    almost certainly won't want to install a different kernel on the
    production line to run a test, so we provided a sysfs interface to this.

    >
    >> >+static int rmi_f09_alloc_memory(struct rmi_function_container *fc)
    > (...)
    >> >+static void rmi_f09_free_memory(struct rmi_function_container *fc)
    > Why do you need separate functions for these two?
    >
    > If they are only used from one place (which I suspect) then just
    > put the code at that site.

    Some of the other modules have fairly large and complicated
    alloc_memory() and free_memory() implementations, so we adopted this as
    a general convention in all the RMI function implementations. But as
    you suggested elsewhere, using devm_kzalloc could tidy things up a lot,
    in which case the functions could be merged back into their callers.

    [snip]


    \
     
     \ /
      Last update: 2012-09-05 03:02    [W:4.459 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site