Chanwoo Choi wrote: > > Mark Brown wrote: > > On Wed, Jul 28, 2010 at 12:04:44PM +0900, Chanwoo Choi wrote: > > > >> +static struct regulator_consumer_supply wm8994_fixed_voltage0_supplies[] = > { > >> + { > >> + .dev_name = "5-001a", > >> + .supply = "DBVDD", > >> + }, { > >> + .dev_name = "5-001a", > >> + .supply = "AVDD2", > >> + }, { > >> + .dev_name = "5-001a", > >> + .supply = "CPVDD", > >> + }, > >> + > >> +}; > >> + > >> +static struct regulator_consumer_supply wm8994_fixed_voltage1_supplies[] = > { > > > > All these fixed voltage regulators seem a bit suspicous for a mobile > > phone - I'd have expected that the supplies would all be being provided > > by your PMIC except for things taken directly from the battery supply > > (like the speakers tend to be, for example)? There's no problem with > > the code itself, it just looks a bit odd. > > > > All these consumer supply of WM8994 codec connected the below > regulator(VCC_1.8V) on > a circuit diagram. "VCC_1.8V" regualtor is always enabled, because it is used to > many devices. > Then I haven't connected all these consumer supply of WM8994 codec to > "VCC_1.8V" regulator. > I will modify that the consumer supply would be provided by PMIC. > > static struct regulator_init_data aquila_buck3_data = { > .constraints = { > .name = "VCC_1.8V", > .min_uV = 1800000, > .max_uV = 1800000, > .apply_uV = 1, > .state_mem = { > .enabled = 1, > }, > }, > }; > > >> +static struct i2c_board_info i2c_gpio5_devs[] __initdata = { > >> + { > >> + /* CS/ADDR = low 0x34 (FYI: high = 0x36) */ > >> + I2C_BOARD_INFO("wm8994", 0x34 >> 1), > >> + .platform_data = &wm8994_platform_data, > >> + }, > >> +}; > > > > Probably clearer for generic Linux use to specify the address as 0x1a > > directly. > > Ok, I will do. > > > > >> +static void __init aquila_sound_init(void) > >> +{ > >> + unsigned int gpio; > >> + > >> + /* CODEC_XTAL_EN */ > >> + gpio = S5PV210_GPH3(2); /* XEINT_26 */ > >> + gpio_request(gpio, "CODEC_XTAL_EN"); > >> + s3c_gpio_cfgpin(gpio, S3C_GPIO_OUTPUT); > >> + s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE); > >> + gpio_direction_output(gpio, 1); > > > > Might be as well to provide some or all this stuff in your audio machine > > driver? > > The Aquila board have a oscillator which provide main clock to > WM8994 audio codec. The oscillator provide 24MHz clock to WM8994 audio codec > (MCLK1 pin). I set gpio setting of "CODEC_XTAL_EN" to enable a oscillator. > > > > >> + /* MICBIAS_EN */ > >> + gpio = S5PV210_GPJ4(2); /* XMSMRN */ > >> + gpio_request(gpio, "MICBIAS_EN"); > >> + s3c_gpio_cfgpin(gpio, S3C_GPIO_OUTPUT); > >> + gpio_direction_output(gpio, 1); > > > > This in particular would benefit from keeping the request of the GPIO > > joined up with the driver that uses it. > > Ok, I will move this code to machine driver(sound/soc/s3c24xxx/aquila_wm8994.c). > > >> + /* ADC_EN */ > >> + gpio = S5PV210_GPJ3(2); > >> + gpio_request(gpio, "ADC_EN"); > >> + s3c_gpio_cfgpin(gpio, S3C_GPIO_OUTPUT); > >> + gpio_direction_output(gpio, 1); > > > > I'm not sure what this does? > > > > I explained below description about "ADC_EN" : > "ADC_EN : This gpio enable the ADC device which is used to detect > the kind of jack. (SND_JACK_HEADPHONE/HEADSET/MECHANICAL/AVOUT) > According to the kind of jack, an electric current is changed. > (Only used on Aquila board) " > > When inserting the jack to Aquila board, I used ADC driver so that, detecting > the kind of jack(SND_JACK_HEADPHONE/HEADSET/MECHANICAL/AVOUT). > > I will separately make the another function to initialize ADC driver. > > Thank you for your comment. > Chanwoo Choi > Hi, How was going on? Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@xxxxxxxxxxx>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html