From: Heiko Stuebner <heiko@sntech.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 1/4] usb: rockchip-phy: implement USB2.0 phy control for Synopsys
Date: Wed, 06 Jul 2016 15:42:19 +0200 [thread overview]
Message-ID: <2545470.JAxZyfFHfp@phil> (raw)
In-Reply-To: <8717355.TP40WfXJG8@phil>
Am Mittwoch, 6. Juli 2016, 14:48:57 schrieb Heiko Stuebner:
> Am Mittwoch, 6. Juli 2016, 18:20:04 schrieb Ziyuan Xu:
> > Hi heiko,
> >
> > On 2016?07?06? 17:34, Ziyuan Xu wrote:
> > > From: Xu Ziyuan <xzy.xu@rock-chips.com>
> > >
> > > So far, Rockchip SoCs have two kinds of USB2.0 phy, like Synopsys and
> > > Innosilicon. This patch applys dwc2 usb driver framework to implement
> > > phy_init and phy_off for Synopsys phy on Rockchip platform.
> > >
> > > Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
> > >
> > > ---
> > >
> > > Changes in v3:
> > > - Make UOC_CON registers to be unfixed which should be got from DT
> > >
> > > Changes in v2:
> > > - Rename rk3288_usb_phy.c to rockchip_usb_syno_phy.c
> > > - Rework the behaviour in otg_phy_init() and otg_phy_off()
> > >
> > > drivers/usb/phy/Makefile | 1 +
> > > drivers/usb/phy/rockchip_usb_syno_phy.c | 47
> > > +++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+)
> > > create mode 100644 drivers/usb/phy/rockchip_usb_syno_phy.c
> > >
> > > diff --git a/drivers/usb/phy/Makefile b/drivers/usb/phy/Makefile
> > > index 93d147e..8002a18 100644
> > > --- a/drivers/usb/phy/Makefile
> > > +++ b/drivers/usb/phy/Makefile
> > > @@ -7,3 +7,4 @@
> > >
> > > obj-$(CONFIG_TWL4030_USB) += twl4030.o
> > > obj-$(CONFIG_OMAP_USB_PHY) += omap_usb_phy.o
> > >
> > > +obj-$(CONFIG_ROCKCHIP_USB_SYNO_PHY) += rockchip_usb_syno_phy.o
> > > diff --git a/drivers/usb/phy/rockchip_usb_syno_phy.c
> > > b/drivers/usb/phy/rockchip_usb_syno_phy.c new file mode 100644
> > > index 0000000..ab049e1
> > > --- /dev/null
> > > +++ b/drivers/usb/phy/rockchip_usb_syno_phy.c
> > > @@ -0,0 +1,47 @@
> > > +/*
> > > + * Copyright 2016 Rockchip Electronics Co., Ltd
> > > + *
> > > + * SPDX-License-Identifier: GPL-2.0+
> > > + */
> > > +
> > > +#include <common.h>
> > > +#include <asm/io.h>
> > > +
> > > +#include "../gadget/dwc2_udc_otg_priv.h"
> > > +
> > > +#define UOC_CON(x) ((x) * 0x4)
> >
> > As you know, dwc2 usb driver didn't apply devicetree model. It's hard to
> > implement a compatible driver for Rockchip SoCs which use a same udc.
>
> Yeah, it is pretty strange that the dwc2 host part in uboot uses the
> devicetree while the gadget part does not - but I maybe someone else can
> answer this, as my contact with uboot was limited until now.
> The dwc2 host driver works just fine on my rk3036 kylin board.
>
> > For example,
> > SOFT_CTRL bit is UOC_CON2[2] on RK3288
> > I can't assure it's also UOC_CON[2] on other socs.
> > Do you have any good ideas?
>
> Operating under the current constraints, I guess you could simply do
> something similar to what socfpga does in its board file.
>
> Aka get the usb controller node, read the phy phandle and get the phy
> compatible string from the dts. The usbphys each have per-soc compatible
> values "rockchip,rk3288-usbphy" etc, so you can determine the needed bits
> over that.
forgot to add, with this same mechanism you could also resolve the fifo
length from the devicetree into the platdata struct instead of hard-coding
it with an ARCH_ROCKCHIP define.
Heiko
next prev parent reply other threads:[~2016-07-06 13:42 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-06 9:34 [U-Boot] [PATCH v3 0/4] rockchip: rk3288: add fastboot support Ziyuan Xu
2016-07-06 9:34 ` [U-Boot] [PATCH v3 1/4] usb: rockchip-phy: implement USB2.0 phy control for Synopsys Ziyuan Xu
2016-07-06 10:20 ` Ziyuan Xu
2016-07-06 12:48 ` Heiko Stuebner
2016-07-06 13:42 ` Heiko Stuebner [this message]
2016-07-07 1:58 ` Ziyuan Xu
2016-07-07 20:33 ` Heiko Stuebner
2016-07-08 0:40 ` Ziyuan Xu
2016-07-06 9:34 ` [U-Boot] [PATCH v3 2/4] usb: dwc2-otg: re-define fifo-size for Rockchip SoCs Ziyuan Xu
2016-07-06 9:34 ` [U-Boot] [PATCH v3 3/4] rockchip: rk3288: add fastboot support Ziyuan Xu
2016-07-06 9:34 ` [U-Boot] [PATCH v3 4/4] usb: dwc2: invalidate dcache before starting DMA Ziyuan Xu
2016-07-12 12:59 ` Simon Glass
2016-07-13 1:06 ` Ziyuan Xu
2016-07-14 15:00 ` Simon Glass
2016-07-14 15:43 ` Ziyuan Xu
2016-07-15 3:20 ` Simon Glass
2016-07-15 3:56 ` Simon Glass
2016-07-11 23:54 ` [U-Boot] [PATCH v3 0/4] rockchip: rk3288: add fastboot support Simon Glass
2016-07-12 0:32 ` Ziyuan Xu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2545470.JAxZyfFHfp@phil \
--to=heiko@sntech.de \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox