bluetooth: Fix kernel warning about usage of reset gpio

Introduced by package version: T713XXU2BQCO

During a bluetooth power reset, the gpiolib warns about using
the bt_reset_gpio without explicitly requesting it beforehand.

Fixes: "Import latest Samsung release"

[20955.983640]  [1:  stack_manager: 4935] ------------[ cut here ]------------
[20955.983704]  [1:  stack_manager: 4935] WARNING: at ../../../../../../kernel/samsung/msm8976/drivers/gpio/gpiolib.c:162 gpio_ensure_requested+0x58/0x80()
[20955.983791]  [1:  stack_manager: 4935] autorequest GPIO-899
[20955.983838]  [1:  stack_manager: 4935] CPU: 1 PID: 4935 Comm: stack_manager Tainted: G        W    3.10.108-g43a2eba3d169-04027-g931f0aab3e42 #1
[20955.983919]  [1:  stack_manager: 4935] Call trace:
[20955.983958]  [1:  stack_manager: 4935]  dump_backtrace+0x0/0xc0
[20955.984003]  [1:  stack_manager: 4935]  show_stack+0x14/0x1c
[20955.984048]  [1:  stack_manager: 4935]  dump_stack+0x20/0x28
[20955.984093]  [1:  stack_manager: 4935]  warn_slowpath_common+0x74/0x9c
[20955.984140]  [1:  stack_manager: 4935]  warn_slowpath_fmt+0x50/0x58
[20955.984185]  [1:  stack_manager: 4935]  gpio_ensure_requested+0x58/0x80
[20955.984231]  [1:  stack_manager: 4935]  gpiod_direction_output+0xb4/0x2a0
[20955.984285]  [1:  stack_manager: 4935]  gpio_direction_output+0x18/0x20
[20955.984335]  [1:  stack_manager: 4935]  bt_configure_gpios+0x58/0xb8
[20955.984380]  [1:  stack_manager: 4935]  bluetooth_power+0x15c/0x204
[20955.984424]  [1:  stack_manager: 4935]  bluetooth_toggle_radio+0x3c/0x4c
[20955.984472]  [1:  stack_manager: 4935]  rfkill_set_block+0x90/0x11c
[20955.984517]  [1:  stack_manager: 4935]  rfkill_state_store+0x84/0xa0
[20955.984563]  [1:  stack_manager: 4935]  dev_attr_store+0x20/0x28
[20955.984607]  [1:  stack_manager: 4935]  sysfs_write_file+0x10c/0x154
[20955.984650]  [1:  stack_manager: 4935]  vfs_write+0xd0/0x170
[20955.984689]  [1:  stack_manager: 4935]  SyS_write+0x48/0x74
[20955.984728]  [1:  stack_manager: 4935] ---[ end trace 5b8933bb00337928 ]---
This commit is contained in:
syphyr 2019-03-31 20:22:19 +02:00
parent 19ff1d8fd1
commit ba8ed9f494
1 changed files with 7 additions and 13 deletions

View File

@ -157,6 +157,13 @@ static int bt_configure_gpios(int on)
BT_PWR_DBG("%s bt_gpio= %d on: %d", __func__, bt_reset_gpio, on);
if (on) {
rc = gpio_request(bt_reset_gpio, "bt_sys_rst_n");
if (rc) {
BT_PWR_ERR("unable to request gpio %d (%d)\n",
bt_reset_gpio, rc);
return rc;
}
rc = gpio_direction_output(bt_reset_gpio, 0);
if (rc) {
BT_PWR_ERR("Unable to set direction\n");
@ -402,19 +409,6 @@ static int bt_power_populate_dt_pinfo(struct platform_device *pdev)
return bt_power_pdata->bt_gpio_sys_rst;
}
rc = gpio_request(bt_power_pdata->bt_gpio_sys_rst, "bt_sys_rst_n");
if (rc) {
BT_PWR_ERR("unable to request gpio %d (%d)\n",
bt_power_pdata->bt_gpio_sys_rst, rc);
return rc;
}
rc = gpio_direction_output(bt_power_pdata->bt_gpio_sys_rst, 0);
if (rc) {
BT_PWR_ERR("Unable to set direction\n");
return rc;
}
rc = bt_dt_parse_vreg_info(&pdev->dev,
&bt_power_pdata->bt_vdd_io,
"qca,bt-vdd-io");