summaryrefslogtreecommitdiff
path: root/drivers/mfd/rk616-core.c
diff options
context:
space:
mode:
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
commit8ae6fcba5c80f2c384c0300bbca90856f997f912 (patch)
tree03439e6695fe34a7e28b2412fb5f67679605c2c3 /drivers/mfd/rk616-core.c
parentb4a4ee458f5b72fb07e83825fa0c8d067b3e4074 (diff)
Audio: delete codec_set_spk, update rk616 codec driver
Diffstat (limited to 'drivers/mfd/rk616-core.c')
-rwxr-xr-xdrivers/mfd/rk616-core.c52
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;