On 2022-07-08 12:22 PM, Andy Shevchenko wrote:
On Thu, Jul 7, 2022 at 11:03 AM Cezary Rojewski cezary.rojewski@intel.com 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