> My intention was to make the API a bit more defensive. While the current > implementation only has one failure path, spacemit_i2s_init_dai() may > grow additional error paths in the future. Initializing *dp to NULL > ensures it is left in a well-defined state on any failure. > > It would also avoid leaving dai uninitialized if a future caller > accidentally skipped checking the return value before using it. I still do not think this initialization is necessary. Currently, spacemit_i2s_init_dai() has exactly one failure path: devm_kmemdup() fails and the function returns -ENOMEM. The sole caller checks that return value and exits immediately. A caller that continued after ignoring the error would itself be incorrect and should not be accommodated. The helper is also static and has only this one caller, so there is no current API contract that requires the output to be initialized on failure. I suggest dropping this patch. - Troy