diff mbox

[U-Boot,v2] axs10x: add support of generic ECHI USB 2.0 controller

Message ID 1448906005-28161-1-git-send-email-abrodkin@synopsys.com
State Accepted, archived
Delegated to: Alexey Brodkin
Headers show

Commit Message

Alexey Brodkin Nov. 30, 2015, 5:53 p.m. UTC
This commit adds support of USB 2.0 storage media on AXS10x boards.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Simon Glass <sjg@chromium.org>
---

Changes compared to v1:
 * Explicitly enable CONFIG_USB_EHCI_GENERIC

 arch/arc/dts/axs10x.dts  | 6 ++++++
 configs/axs101_defconfig | 6 ++++++
 configs/axs103_defconfig | 6 ++++++
 3 files changed, 18 insertions(+)

Comments

Marek Vasut Nov. 30, 2015, 6:06 p.m. UTC | #1
On Monday, November 30, 2015 at 06:53:25 PM, Alexey Brodkin wrote:
> This commit adds support of USB 2.0 storage media on AXS10x boards.
> 
> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> Cc: Marek Vasut <marex@denx.de>
> Cc: Simon Glass <sjg@chromium.org>
> ---

Ad subject -- It's EHCI, not ECHI ;-)

[...]

> diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
> index 52d5e2f..a541d9d 100644
> --- a/configs/axs101_defconfig
> +++ b/configs/axs101_defconfig
> @@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="axs10x"
>  CONFIG_SYS_PROMPT="AXS# "
>  # CONFIG_CMD_IMLS is not set
>  # CONFIG_CMD_FLASH is not set
> +CONFIG_CMD_USB=y
>  # CONFIG_CMD_SETEXPR is not set
>  CONFIG_CMD_DHCP=y
>  CONFIG_CMD_PING=y
> @@ -19,4 +20,9 @@ CONFIG_CLK=y
>  CONFIG_DM_ETH=y
>  CONFIG_ETH_DESIGNWARE=y
>  CONFIG_SYS_NS16550=y
> +CONFIG_USB=y
> +CONFIG_DM_USB=y
> +CONFIG_USB_EHCI_HCD=y

You don't need EHCI_HCD in defconfig in case EHCI_GENERIC depends on it I think.

> +CONFIG_USB_EHCI_GENERIC=y
> +CONFIG_USB_STORAGE=y
>  CONFIG_USE_PRIVATE_LIBGCC=y
> diff --git a/configs/axs103_defconfig b/configs/axs103_defconfig
> index a7f3c38..3c65c83 100644
> --- a/configs/axs103_defconfig
> +++ b/configs/axs103_defconfig
> @@ -7,6 +7,7 @@ CONFIG_DEFAULT_DEVICE_TREE="axs10x"
>  CONFIG_SYS_PROMPT="AXS# "
>  # CONFIG_CMD_IMLS is not set
>  # CONFIG_CMD_FLASH is not set
> +CONFIG_CMD_USB=y
>  # CONFIG_CMD_SETEXPR is not set
>  CONFIG_CMD_DHCP=y
>  CONFIG_CMD_PING=y
> @@ -18,4 +19,9 @@ CONFIG_CLK=y
>  CONFIG_DM_ETH=y
>  CONFIG_ETH_DESIGNWARE=y
>  CONFIG_SYS_NS16550=y
> +CONFIG_USB=y
> +CONFIG_DM_USB=y
> +CONFIG_USB_EHCI_HCD=y

DTTO

> +CONFIG_USB_EHCI_GENERIC=y
> +CONFIG_USB_STORAGE=y
>  CONFIG_USE_PRIVATE_LIBGCC=y
Alexey Brodkin Dec. 1, 2015, 7:08 p.m. UTC | #2
Hi Marek,

On Mon, 2015-11-30 at 19:06 +0100, Marek Vasut wrote:
> On Monday, November 30, 2015 at 06:53:25 PM, Alexey Brodkin wrote:
> > This commit adds support of USB 2.0 storage media on AXS10x boards.
> > 
> > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > Cc: Marek Vasut <marex@denx.de>
> > Cc: Simon Glass <sjg@chromium.org>
> > ---
> 
> Ad subject -- It's EHCI, not ECHI ;-)

Good catch!

> 
> > diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
> > index 52d5e2f..a541d9d 100644
> > --- a/configs/axs101_defconfig
> > +++ b/configs/axs101_defconfig
> > @@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="axs10x"
> >  CONFIG_SYS_PROMPT="AXS# "
> >  # CONFIG_CMD_IMLS is not set
> >  # CONFIG_CMD_FLASH is not set
> > +CONFIG_CMD_USB=y
> >  # CONFIG_CMD_SETEXPR is not set
> >  CONFIG_CMD_DHCP=y
> >  CONFIG_CMD_PING=y
> > @@ -19,4 +20,9 @@ CONFIG_CLK=y
> >  CONFIG_DM_ETH=y
> >  CONFIG_ETH_DESIGNWARE=y
> >  CONFIG_SYS_NS16550=y
> > +CONFIG_USB=y
> > +CONFIG_DM_USB=y
> > +CONFIG_USB_EHCI_HCD=y
> 
> You don't need EHCI_HCD in defconfig in case EHCI_GENERIC depends on it I think.

Yeah but remember in drivers/usb/host it's not a dependency but conditional branch.
That's why "savedefconfig" (but not me really) put EHCI_HCD here.

-Alexey
Marek Vasut Dec. 1, 2015, 7:23 p.m. UTC | #3
On Tuesday, December 01, 2015 at 08:08:10 PM, Alexey Brodkin wrote:
> Hi Marek,

Hi!

> On Mon, 2015-11-30 at 19:06 +0100, Marek Vasut wrote:
> > On Monday, November 30, 2015 at 06:53:25 PM, Alexey Brodkin wrote:
> > > This commit adds support of USB 2.0 storage media on AXS10x boards.
> > > 
> > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > > Cc: Marek Vasut <marex@denx.de>
> > > Cc: Simon Glass <sjg@chromium.org>
> > > ---
> > 
> > Ad subject -- It's EHCI, not ECHI ;-)
> 
> Good catch!
> 
> > > diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
> > > index 52d5e2f..a541d9d 100644
> > > --- a/configs/axs101_defconfig
> > > +++ b/configs/axs101_defconfig
> > > @@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="axs10x"
> > > 
> > >  CONFIG_SYS_PROMPT="AXS# "
> > >  # CONFIG_CMD_IMLS is not set
> > >  # CONFIG_CMD_FLASH is not set
> > > 
> > > +CONFIG_CMD_USB=y
> > > 
> > >  # CONFIG_CMD_SETEXPR is not set
> > >  CONFIG_CMD_DHCP=y
> > >  CONFIG_CMD_PING=y
> > > 
> > > @@ -19,4 +20,9 @@ CONFIG_CLK=y
> > > 
> > >  CONFIG_DM_ETH=y
> > >  CONFIG_ETH_DESIGNWARE=y
> > >  CONFIG_SYS_NS16550=y
> > > 
> > > +CONFIG_USB=y
> > > +CONFIG_DM_USB=y
> > > +CONFIG_USB_EHCI_HCD=y
> > 
> > You don't need EHCI_HCD in defconfig in case EHCI_GENERIC depends on it I
> > think.
> 
> Yeah but remember in drivers/usb/host it's not a dependency but conditional
> branch. That's why "savedefconfig" (but not me really) put EHCI_HCD here.

Right, got it.

Best regards,
Marek Vasut
Alexey Brodkin Dec. 8, 2015, 2:34 p.m. UTC | #4
Hi Alexey,

On Tue, 2015-12-01 at 20:23 +0100, Marek Vasut wrote:
> On Tuesday, December 01, 2015 at 08:08:10 PM, Alexey Brodkin wrote:
> > Hi Marek,
> 
> Hi!
> 
> > On Mon, 2015-11-30 at 19:06 +0100, Marek Vasut wrote:
> > > On Monday, November 30, 2015 at 06:53:25 PM, Alexey Brodkin wrote:
> > > > This commit adds support of USB 2.0 storage media on AXS10x boards.
> > > > 
> > > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > > > Cc: Marek Vasut <marex@denx.de>
> > > > Cc: Simon Glass <sjg@chromium.org>
> > > > ---
> > > 
> > > Ad subject -- It's EHCI, not ECHI ;-)
> > 
> > Good catch!
> > 
> > > > diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
> > > > index 52d5e2f..a541d9d 100644
> > > > --- a/configs/axs101_defconfig
> > > > +++ b/configs/axs101_defconfig
> > > > @@ -8,6 +8,7 @@ CONFIG_DEFAULT_DEVICE_TREE="axs10x"
> > > > 
> > > >  CONFIG_SYS_PROMPT="AXS# "
> > > >  # CONFIG_CMD_IMLS is not set
> > > >  # CONFIG_CMD_FLASH is not set
> > > > 
> > > > +CONFIG_CMD_USB=y
> > > > 
> > > >  # CONFIG_CMD_SETEXPR is not set
> > > >  CONFIG_CMD_DHCP=y
> > > >  CONFIG_CMD_PING=y
> > > > 
> > > > @@ -19,4 +20,9 @@ CONFIG_CLK=y
> > > > 
> > > >  CONFIG_DM_ETH=y
> > > >  CONFIG_ETH_DESIGNWARE=y
> > > >  CONFIG_SYS_NS16550=y
> > > > 
> > > > +CONFIG_USB=y
> > > > +CONFIG_DM_USB=y
> > > > +CONFIG_USB_EHCI_HCD=y
> > > 
> > > You don't need EHCI_HCD in defconfig in case EHCI_GENERIC depends on it I
> > > think.
> > 
> > Yeah but remember in drivers/usb/host it's not a dependency but conditional
> > branch. That's why "savedefconfig" (but not me really) put EHCI_HCD here.
> 
> Right, got it.

Applied to U-Boot-ARC, thanks!

-Alexey
diff mbox

Patch

diff --git a/arch/arc/dts/axs10x.dts b/arch/arc/dts/axs10x.dts
index 8fe1837..80e6d6b 100644
--- a/arch/arc/dts/axs10x.dts
+++ b/arch/arc/dts/axs10x.dts
@@ -42,4 +42,10 @@ 
 		clock-names = "stmmaceth";
 		max-speed = <100>;
 	};
+
+	ehci@0xe0040000 {
+		compatible = "generic-ehci";
+		reg = < 0xe0040000 0x100 >;
+		interrupts = < 8 >;
+	};
 };
diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
index 52d5e2f..a541d9d 100644
--- a/configs/axs101_defconfig
+++ b/configs/axs101_defconfig
@@ -8,6 +8,7 @@  CONFIG_DEFAULT_DEVICE_TREE="axs10x"
 CONFIG_SYS_PROMPT="AXS# "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
+CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
@@ -19,4 +20,9 @@  CONFIG_CLK=y
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
+CONFIG_USB=y
+CONFIG_DM_USB=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_GENERIC=y
+CONFIG_USB_STORAGE=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/axs103_defconfig b/configs/axs103_defconfig
index a7f3c38..3c65c83 100644
--- a/configs/axs103_defconfig
+++ b/configs/axs103_defconfig
@@ -7,6 +7,7 @@  CONFIG_DEFAULT_DEVICE_TREE="axs10x"
 CONFIG_SYS_PROMPT="AXS# "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
+CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
@@ -18,4 +19,9 @@  CONFIG_CLK=y
 CONFIG_DM_ETH=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_SYS_NS16550=y
+CONFIG_USB=y
+CONFIG_DM_USB=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_GENERIC=y
+CONFIG_USB_STORAGE=y
 CONFIG_USE_PRIVATE_LIBGCC=y