Hi Krzysztof, Sorry again for the confusion. I believe Zhangchao is still new to the upstream process, and we’ll work together to improve this. Since this series has become a bit hard to follow, would you agree that it might be better for us to restart with a clean patch that addresses the review comments? A clean version would make it easier for reviewers to focus on the current issues without being distracted by earlier mistakes. Hi Zhangchao, Please note that both btusb.c (with DT and ACPI) and btmtksdio.c (with DT) already support reset_gpio. Our goal should be to benefit from these existing mechanisms while ensuring that this patch does not introduce any regressions. If the current mechanisms do not fully meet your requirements, it’s important to clearly explain why, so we can adapt the existing framework rather than creating a separate one. And please remember to carefully respect and respond to reviewer feedback, reviewers volunteer their time and experience to help us keep the subsystem clean and consistent. It’s a valuable opportunity for us to learn and to ensure smoother integration. Sean On Fri, Sep 5, 2025 at 3:44 AM Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote: > > On 05/09/2025 10:40, Zhangchao Zhang wrote: > > Makes the platform Bluetooth to be reset by hardware pin, > > it provides two methods to do it for mediatek controller, > > and it has been tested locally many times and can reset normally. > > > > When an exception occurs, resetting Bluetooth by hardware pin > > is more stable than resetting Bluetooth by software. > > If the corresponding pin is not found in dts, > > bluetooth can also be reset successfully. > > > > Co-developed: Hao Qin <hao.qin@xxxxxxxxxxxx> > > Co-developed: Chris Lu <chris.lu@xxxxxxxxxxxx> > > Co-developed: Jiande Lu <jiande.lu@xxxxxxxxxxxx> > > Signed-off-by: Zhangchao Zhang <ot_zhangchao.zhang@xxxxxxxxxxxx> > > --- > > drivers/bluetooth/btmtk.c | 32 ++++++++++++++++++++++++++++++++ > > 1 file changed, 32 insertions(+) > > > > diff --git a/drivers/bluetooth/btmtk.c b/drivers/bluetooth/btmtk.c > > index 4390fd571dbd..29d6a93f255d 100644 > > --- a/drivers/bluetooth/btmtk.c > > +++ b/drivers/bluetooth/btmtk.c > > @@ -6,6 +6,8 @@ > > #include <linux/firmware.h> > > #include <linux/usb.h> > > #include <linux/iopoll.h> > > +#include <linux/gpio/consumer.h> > > +#include <linux/of.h> > > #include <linux/unaligned.h> > > > > #include <net/bluetooth/bluetooth.h> > > @@ -359,11 +361,41 @@ int btmtk_set_bdaddr(struct hci_dev *hdev, const bdaddr_t *bdaddr) > > } > > EXPORT_SYMBOL_GPL(btmtk_set_bdaddr); > > > > +static int btmtk_hw_gpio_reset(struct hci_dev *hdev, struct btmtk_data *reset_work) > > +{ > > + struct gpio_desc *reset_gpio; > > + > > + /* Find device node*/ > > + hdev->dev.of_node = of_find_compatible_node(NULL, NULL, "mediatek,mt7925-bluetooth"); > > Nothing improved. > > You just keep ignoring comments. > > NAK > > Best regards, > Krzysztof >