Re: [PATCH v2 2/6] platform/x86: dell-smo8800: Move instantiation of lis3lv02d i2c_client from i2c-i801 to dell-smo8800

Steven Rostedt
2024-01-07T16:19:34Z

On Sun, 7 Jan 2024 11:09:17 -0500
Steven Rostedt <rostedt@goodmis.org> wrote:

> for (i = 0; i < hist_data->attrs->n_actions; i++) {
> str = hist_data->attrs->action_str[i];
>
> if ((len = str_has_prefix(str, "onmatch("))) {
> char *action_str = str + len;
>
> data = onmatch_parse(tr, action_str);
> if (IS_ERR(data)) {
> ret = PTR_ERR(data);
> break;
> }
> } else if ((len = str_has_prefix(str, "onmax("))) {
> char *action_str = str + len;
>
> data = track_data_parse(hist_data, action_str,
> HANDLER_ONMAX);
> if (IS_ERR(data)) {
> ret = PTR_ERR(data);
> break;
> }
> } else if ((len = str_has_prefix(str, "onchange("))) {
> char *action_str = str + len;
>
> data = track_data_parse(hist_data, action_str,
> HANDLER_ONCHANGE);
> if (IS_ERR(data)) {
> ret = PTR_ERR(data);
> break;
> }

And this could possibly be consolidated to:

for (i = 0; i < hist_data->attrs->n_actions; i++) {
char *action_str;
enum handler_id hid;

ret = -EINVAL;

str = hist_data->attrs->action_str[i];

if ((len = str_has_prefix(str, "onmatch(")))
hid = HANDLER_ONMATCH;
else if ((len = str_has_prefix(str, "onmax(")))
hid = HANDLER_ONMAX;
else if ((len = str_has_prefix(str, "onchange(")))
hid = HANDLER_ONCHANGE;
else
break;

action_str = str + len;

switch (hid) {
case HANDLER_ONMATCH:
data = onmatch_parse(tr, action_str);
break;
default:
data = track_data_parse(hist_data, action_str, hid);
}

if (IS_ERR(data)) {
ret = PTR_ERR(data);
break;
}

hist_data->actions[hist_data->n_actions++] = data;
ret = 0;
}

I think I'll go make that change!

-- Steve