On 2022-07-08 12:22 PM, Andy Shevchenko wrote:
On Thu, Jul 7, 2022 at 11:03 AM Cezary Rojewski
<cezary.rojewski@xxxxxxxxx> wrote:
Add strsplit_u32() and its __user variant to allow for splitting
specified string into array of u32 tokens.
And I believe we have more of this done in old code.
Since all callers use ',' as a delimiter, have you considered using
get_options()?
Thanks for your input, Andy.
When I'd written the very first version of this function many months
ago, get_options() looked as it does not fulfill our needs. It seems to
be true even today: caller needs to know the number of elements in an
array upfront. Also, kstrtox() takes into account '0x' and modifies the
base accordingly if that's the case. simple_strtoull() looks as not
capable of doing the same thing.
The goal is to be able to parse input such as:
0x1000003,0,0,0x1000004,0,0
into a sequence of 6 uints, filling the *tkns and *num_tkns for the caller.
Originally this functionality was added for the SOF sound driver. As
more users are on the horizon, relocate it so it becomes a common good.
Maybe it can be fixed just there.
avs-driver, which is also part of the ASoC framework has very similar
debug-interface. I believe there's no need to duplicate the functions -
move them to common code instead.
Regards,
Czarek