diff options
author | 陈金泉 <jear.chen@rock-chips.com> | 2014-03-10 11:10:43 +0800 |
---|---|---|
committer | 陈金泉 <jear.chen@rock-chips.com> | 2014-03-10 11:10:43 +0800 |
commit | 8ae6fcba5c80f2c384c0300bbca90856f997f912 (patch) | |
tree | 03439e6695fe34a7e28b2412fb5f67679605c2c3 /drivers/mfd/rk616-core.c | |
parent | b4a4ee458f5b72fb07e83825fa0c8d067b3e4074 (diff) |
Audio: delete codec_set_spk, update rk616 codec driver
Diffstat (limited to 'drivers/mfd/rk616-core.c')
-rwxr-xr-x | drivers/mfd/rk616-core.c | 52 |
1 files changed, 47 insertions, 5 deletions
diff --git a/drivers/mfd/rk616-core.c b/drivers/mfd/rk616-core.c index b659432013a9..23efc531e740 100755 --- a/drivers/mfd/rk616-core.c +++ b/drivers/mfd/rk616-core.c @@ -475,6 +475,53 @@ static int rk616_core_resume(struct device* dev) return 0; } +/* +dts: + +/include/ "rk616.dtsi" +&rk616 { + rk616,scl_rate = <100000>; + rk616,lcd0_func = <1>; + rk616,lcd1_func = <1>; + rk616,lvds_ch_nr = <1>; + rk616,hdmi_irq_gpio = <&gpio2 GPIO_D6 1>; + + rk616-codec { + spk-ctl-gpio = <&gpio2 GPIO_D7 GPIO_ACTIVE_HIGH>; + hp-ctl-gpio = <&gpio2 GPIO_D7 GPIO_ACTIVE_HIGH>; + //rcv-ctl-gpio = <&gpio2 GPIO_D7 GPIO_ACTIVE_HIGH>; + //mic-sel-gpio = <&gpio2 GPIO_D7 GPIO_ACTIVE_HIGH>; + + //delay for MOSFET or SPK power amplifier chip(ms) + spk-amplifier-delay = <150>; + hp-mosfet-delay = <50>; + + //hp-mic-capture-from-linein; //If hpmic is connected to linein, set this. + //hp-mic-capture-from-mic2in; //If hpmic is connected to mic2, set this. + //virtual-hp-gnd; //If hp gnd is not connected to gnd(0V), set this. + + //volume setting: 0 ~ 31, -18dB ~ 28.5dB, Step: 1.5dB + skp-volume = <24>; + hp-volume = <24>; + capture-volume = <24>; + }; + + power_ctr: rk616_power_ctr { + rk616_pwren: rk616_pwren { + rockchip,power_type = <GPIO>; + gpios = <&gpio0 GPIO_A3 GPIO_ACTIVE_HIGH>; + rockchip,delay = <0>; + }; + + rk616_rst: rk616_rst { + rockchip,power_type = <GPIO>; + gpios = <&gpio3 GPIO_B2 GPIO_ACTIVE_HIGH>; + rockchip,delay = <10>; + }; + + }; +}; +*/ #ifdef CONFIG_OF static struct rk616_platform_data *rk616_parse_dt(struct mfd_rk616 *rk616) { @@ -509,11 +556,6 @@ static struct rk616_platform_data *rk616_parse_dt(struct mfd_rk616 *rk616) if (!gpio_is_valid(gpio)) printk("invalid hdmi_irq_gpio: %d\n",gpio); pdata->hdmi_irq = gpio; - - gpio = of_get_named_gpio(rk616_np,"rk616,spk_ctl_gpio", 0); - if (!gpio_is_valid(gpio)) - printk("invalid spk_ctl_gpio: %d\n",gpio); - pdata->spk_ctl_gpio = gpio; //TODO Daisen >>pwr gpio wait to add return pdata; |