Hi, On Sun, Aug 30, 2020 at 4:05 AM Cheng-yi Chiang <cychiang@xxxxxxxxxxxx> wrote: > > > @@ -294,6 +294,7 @@ static struct i2c_driver rt5682_i2c_driver = { > > .name = "rt5682", > > .of_match_table = rt5682_of_match, > > .acpi_match_table = rt5682_acpi_match, > > + .probe_type = PROBE_PREFER_ASYNCHRONOUS, > > > One thing I am wondering is that there has not been any usage in codec > driver for this. > I think every codec driver can use this, and take the benefit of a > possible faster boot time ? One possibility is that they are all enabled as modules instead of builtin to the kernel so nobody ever thought to do it. Modules are always probed asynchronously, so this flag is basically a no-op there (and, in fact, for anything that can be built as a module we have even more certainty that async probe is safe). In the case of the Chrome OS 5.4 tree it's possible this driver should be moved to a module. However, even if we do that my patch is still fine and would be helpful if anyone has a reason to build this driver in. Similar patches could likely be made to other codecs and would similarly speed up boots in cases where codecs were builtin. -Doug