On Thu, Apr 01, 2021 at 12:19:11PM +0530, Vinod Koul wrote: > On 25-03-21, 17:40, Thierry Reding wrote: > > From: JC Kuo <jckuo@xxxxxxxxxx> > > > > This commit implements Tegra186/Tegra194 XUSB PADCTL/AO wake and > > sleepwalk operations. > > > > Signed-off-by: JC Kuo <jckuo@xxxxxxxxxx> > > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> > > --- > > drivers/phy/tegra/xusb-tegra186.c | 558 +++++++++++++++++++++++++++++- > > 1 file changed, 557 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/phy/tegra/xusb-tegra186.c b/drivers/phy/tegra/xusb-tegra186.c > > index 5d64f69b39a9..6378bf722745 100644 > > --- a/drivers/phy/tegra/xusb-tegra186.c > > +++ b/drivers/phy/tegra/xusb-tegra186.c > > @@ -1,6 +1,6 @@ > > // SPDX-License-Identifier: GPL-2.0 > > /* > > - * Copyright (c) 2016-2019, NVIDIA CORPORATION. All rights reserved. > > + * Copyright (c) 2016-2020, NVIDIA CORPORATION. All rights reserved. > > */ > > > > #include <linux/delay.h> > > @@ -113,6 +113,117 @@ > > #define ID_OVERRIDE_FLOATING ID_OVERRIDE(8) > > #define ID_OVERRIDE_GROUNDED ID_OVERRIDE(0) > > > > +/* XUSB AO registers */ > > +#define XUSB_AO_USB_DEBOUNCE_DEL (0x4) > > +#define UHSIC_LINE_DEB_CNT(x) (((x) & 0xf) << 4) > > +#define UTMIP_LINE_DEB_CNT(x) ((x) & 0xf) > > + > > +#define XUSB_AO_UTMIP_TRIGGERS(x) (0x40 + (x) * 4) > > +#define CLR_WALK_PTR (1 << 0) > > +#define CAP_CFG (1 << 1) > > +#define CLR_WAKE_ALARM (1 << 3) > > + > > +#define XUSB_AO_UHSIC_TRIGGERS(x) (0x60 + (x) * 4) > > +#define HSIC_CLR_WALK_PTR (1 << 0) > > +#define HSIC_CLR_WAKE_ALARM (1 << 3) > > +#define HSIC_CAP_CFG (1 << 4) > > + > > +#define XUSB_AO_UTMIP_SAVED_STATE(x) (0x70 + (x) * 4) > > +#define SPEED(x) ((x) & 0x3) > > +#define UTMI_HS SPEED(0) > > +#define UTMI_FS SPEED(1) > > +#define UTMI_LS SPEED(2) > > +#define UTMI_RST SPEED(3) > > + > > +#define XUSB_AO_UHSIC_SAVED_STATE(x) (0x90 + (x) * 4) > > +#define MODE(x) ((x) & 0x1) > > +#define MODE_HS MODE(0) > > +#define MODE_RST MODE(1) > > + > > +#define XUSB_AO_UTMIP_SLEEPWALK_CFG(x) (0xd0 + (x) * 4) > > +#define XUSB_AO_UHSIC_SLEEPWALK_CFG(x) (0xf0 + (x) * 4) > > +#define FAKE_USBOP_VAL (1 << 0) > > +#define FAKE_USBON_VAL (1 << 1) > > +#define FAKE_USBOP_EN (1 << 2) > > +#define FAKE_USBON_EN (1 << 3) > > +#define FAKE_STROBE_VAL (1 << 0) > > +#define FAKE_DATA_VAL (1 << 1) > > +#define FAKE_STROBE_EN (1 << 2) > > +#define FAKE_DATA_EN (1 << 3) > > +#define WAKE_WALK_EN (1 << 14) > > +#define MASTER_ENABLE (1 << 15) > > +#define LINEVAL_WALK_EN (1 << 16) > > BIT() or GENMASK() please > > > +static inline void ao_writel(struct tegra186_xusb_padctl *priv, u32 value, unsigned int offset) > > +{ > > + dev_dbg(priv->base.dev, "ao %08x < %08x\n", offset, value); > > Too many debug prints in this patch as well... > > With the nits fixed: > > Acked-By: Vinod Koul <vkoul@xxxxxxxxxx> Done, thanks. Thierry
Attachment:
signature.asc
Description: PGP signature