> -----Original Message----- > From: Mark Brown [mailto:broonie@xxxxxxxxxx] > Sent: Friday, October 30, 2015 9:20 AM > To: Bard Liao > Cc: John Lin; Oder Chiou; alsa-devel@xxxxxxxxxxxxxxxx; Flove; Jack Yu > Subject: Re: Different reg_default for rt5650 codec > > On Thu, Oct 29, 2015 at 11:17:26AM +0000, Bard Liao wrote: > > > Something like > > case RT5650_DEVICE_ID: > > + rt5645->regmap-> reg_defaults = rt5650_reg; > > + rt5645->regmap-> num_reg_defaults = ARRAY_SIZE(rt5650_reg) > > rt5645->codec_type = CODEC_TYPE_RT5650; > > break; > > > > Is that ok? > > No, that's not OK - the config needs to be constant and... > > > Or should I use different regmap_config? There is one question if I use > > different regmap_config. We will know which codec it is by > regmap_read. > > So, regmap is init before we know which codec it is. Assume > rt5645_regmap > > is used and what should I do once rt5650 is detected? > > ...you definitely can't change it after you registered the CODEC, regmap > will ignore that. What should be happening here is that the devices > should be being registered using different identifiers so that before we > try to create the regmap we know what device is being used. > > If there are buggy BIOSs out there that don't do that what I'd recommend > doing is creating a temporary regmap with no defaults or anything, just > the basic I/O. Use that to read the identification registers from the > device and then create a second regmap with the actual configuration for > the device. Thanks Mark. I will follow your suggestion to create a temporary regmap to get the codec ID. > > ------Please consider the environment before printing this e-mail. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel