lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <655A8E36-F89F-4A4D-80A0-5223EBB638CE@holtmann.org>
Date:   Thu, 25 Nov 2021 19:46:37 +0100
From:   Marcel Holtmann <marcel@...tmann.org>
To:     saluvala <saluvala@...eaurora.org>
Cc:     Johan Hedberg <johan.hedberg@...il.com>, mka@...omium.org,
        linux-kernel@...r.kernel.org, linux-bluetooth@...r.kernel.org,
        hemantg@...eaurora.org, linux-arm-msm@...r.kernel.org,
        bgodavar@...eaurora.org, rjliao@...eaurora.org,
        hbandi@...eaurora.org, abhishekpandit@...omium.org,
        mcchou@...omium.org
Subject: Re: [RFC PATCH v1] Bluetooth: hci_qca: Add new hci_uart proto
 callback to power off voltage sources

Hi,

> This change adds a new hci_uart proto callback entry i.e., power off.
> This poweroff Callback is exposed to the drivers and called during BT OFF
> immediately after port close. This will ensure that Voltages sources are
> powered off after sending all the data before port close. Previously as
> part of hdev shutdown callback, voltages sources are powered off. But we
> have seen cases where post shutdown sequence completion some packets which
> are already queued are sent to UART. As controller is powered off, UART
> can’t send the data out or it is sending partial data due RTS line high.
> 
> Signed-off-by: saluvala <saluvala@...eaurora.org>

this really has to stop. Read the documentation on how to submit patches and start configuring your .gitconfig correct so that you include you clear text name etc.

> ---
> drivers/bluetooth/hci_qca.c    | 26 +++++++++++++++++++-------
> drivers/bluetooth/hci_serdev.c |  3 +++
> drivers/bluetooth/hci_uart.h   |  1 +
> 3 files changed, 23 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c
> index dd768a8..e1dee75 100644
> --- a/drivers/bluetooth/hci_qca.c
> +++ b/drivers/bluetooth/hci_qca.c
> @@ -231,6 +231,7 @@ static int qca_regulator_enable(struct qca_serdev *qcadev);
> static void qca_regulator_disable(struct qca_serdev *qcadev);
> static void qca_power_shutdown(struct hci_uart *hu);
> static int qca_power_off(struct hci_dev *hdev);
> +static int qca_power_off_reg(struct hci_uart *hu);
> static void qca_controller_memdump(struct work_struct *work);
> 
> static enum qca_btsoc_type qca_soc_type(struct hci_uart *hu)
> @@ -554,7 +555,6 @@ static void qca_controller_memdump_timeout(struct work_struct *work)
> 	mutex_unlock(&qca->hci_memdump_lock);
> }
> 
> -
> /* Initialize protocol */
> static int qca_open(struct hci_uart *hu)
> {
> @@ -1815,6 +1815,7 @@ static const struct hci_uart_proto qca_proto = {
> 	.flush		= qca_flush,
> 	.setup		= qca_setup,
> 	.recv		= qca_recv,
> +	.poweroff	= qca_power_off_reg,
> 	.enqueue	= qca_enqueue,
> 	.dequeue	= qca_dequeue,
> };

I am not extending this. Write a clean serdev only driver for this hardware.

Regards

Marcel

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ