mirror of
https://github.com/revyos/thead-kernel.git
synced 2026-09-29 07:14:24 +02:00
lpi4a add wakeup gpio key and usb resume fix
Change-Id: I0479ed6cd676af7ad087968e1bb22f2b04e89337
This commit is contained in:
committed by
Han Gao/Revy/Rabenda
parent
a546653719
commit
1d7ed6a0c6
@@ -247,7 +247,7 @@
|
||||
regulator-max-microvolt = <1200000>;
|
||||
gpio = <&pcal6408ahk_d 2 1>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
|
||||
};
|
||||
|
||||
reg_usb_hub_vcc5v: regulator-hub-vcc5v-en {
|
||||
@@ -257,7 +257,7 @@
|
||||
regulator-max-microvolt = <5000000>;
|
||||
gpio = <&pcal6408ahk_d 3 1>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
|
||||
};
|
||||
|
||||
wcn_wifi: wireless-wlan {
|
||||
@@ -282,7 +282,7 @@
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-0 = <&pinctrl_volume>;
|
||||
pinctrl-0 = <&pinctrl_volume &pinctrl_sleep>;
|
||||
pinctrl-names = "default";
|
||||
key-volumedown {
|
||||
label = "Volume Down Key";
|
||||
@@ -296,6 +296,13 @@
|
||||
debounce-interval = <1>;
|
||||
gpios = <&gpio2_porta 25 0x1>;
|
||||
};
|
||||
key-sleep {
|
||||
label = "Sleep Wake Key";
|
||||
wakeup-source;
|
||||
linux,code = <KEY_SLEEP>;
|
||||
debounce-interval = <1>;
|
||||
gpios = <&ao_gpio_porta 2 0x1>;
|
||||
};
|
||||
};
|
||||
|
||||
aon: aon {
|
||||
@@ -382,7 +389,7 @@
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio1_porta 22 1>;
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -1182,6 +1189,11 @@
|
||||
pinctrl_audiopa30: audiopa30 {
|
||||
thead,pins = < FM_AUDIO_PA30 LIGHT_PIN_FUNC_0 0x000 >;
|
||||
};
|
||||
pinctrl_sleep: sleep_grp {
|
||||
thead,pins = <
|
||||
FM_CPU_JTG_TCLK 0x3 0x238
|
||||
>;
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
@@ -257,10 +257,23 @@ static int dwc3_thead_remove(struct platform_device *pdev)
|
||||
static int dwc3_thead_pm_suspend(struct device *dev)
|
||||
{
|
||||
struct dwc3_thead *thead = dev_get_drvdata(dev);
|
||||
|
||||
int ret;
|
||||
dwc3_thead_assert(thead);
|
||||
|
||||
clk_bulk_disable(thead->num_clocks, thead->clks);
|
||||
ret = regulator_disable(thead->vbus);
|
||||
if (ret) {
|
||||
dev_err(dev, "failed to disable regulator vbus %d\n", ret);
|
||||
}
|
||||
ret = regulator_disable(thead->hub1v2);
|
||||
if (ret) {
|
||||
dev_err(dev, "failed to disable regulator hub1v2 %d\n", ret);
|
||||
}
|
||||
ret = regulator_disable(thead->hub5v);
|
||||
|
||||
if (ret) {
|
||||
dev_err(dev, "failed to disable regulator hub1v2 %d\n", ret);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -270,6 +283,20 @@ static int dwc3_thead_pm_resume(struct device *dev)
|
||||
{
|
||||
struct dwc3_thead *thead = dev_get_drvdata(dev);
|
||||
int ret;
|
||||
dev_info(dev,"%s\n",__func__);
|
||||
ret = regulator_enable(thead->vbus);
|
||||
if (ret) {
|
||||
dev_err(dev, "failed to enable regulator vbus %d\n", ret);
|
||||
}
|
||||
ret = regulator_enable(thead->hub1v2);
|
||||
if (ret) {
|
||||
dev_err(dev, "failed to enable regulator hub1v2 %d\n", ret);
|
||||
}
|
||||
ret = regulator_enable(thead->hub5v);
|
||||
|
||||
if (ret) {
|
||||
dev_err(dev, "failed to enable regulator hub1v2 %d\n", ret);
|
||||
}
|
||||
|
||||
ret = clk_bulk_prepare_enable(thead->num_clocks, thead->clks);
|
||||
if (ret) {
|
||||
|
||||
Reference in New Issue
Block a user