From: Marek Vasut <marex@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] usb: new board-specific USB init interface
Date: Tue, 27 Aug 2013 21:50:37 +0200 [thread overview]
Message-ID: <201308272150.37201.marex@denx.de> (raw)
In-Reply-To: <521B30EE.4090907@samsung.com>
Dear Mateusz Zalega,
> On 08/22/13 21:37, Marek Vasut wrote:
> > Dear Mateusz Zalega,
> >
> >>>>> The EHCI supports multi-bus thing (passing the controller *), will
> >>>>> this be viable to pass in this case too, so the busses can be inited
> >>>>> selectively in host/gadget functions?
> >>>>
> >>>> Hello, Marek.
> >>>> I need more context. Could you show me the part of code in which you'd
> >>>> like to pass/use additional arguments?
> >>>
> >>> Please grep the 'controller' pointer that is passed to various
> >>> functions at least in the EHCI case. It would be nice to pass that to
> >>> the init functions too, no?
> >>
> >> It may be possible, but note that board_usb_init() is not used solely by
> >> EHCI code (please grep or cscope function calls). In order to do that,
> >> we would need to devise some generic interface.
> >>
> >> Is it worth the time? Are there targets that would benefit from this
> >> change?
> >
> > In case you want to separatelly init one port for USB peripheral mode and
> > one for Host mode, yes.
>
> We could add another argument: "int controller_index" (or maybe "const
> char* controller_id"), which would correspond to node names or aliases
> defined in devicetree source files (ie. see: tegra30.dtsi).
Device tree is completely ortogonal to this. See how "int usb_lowlevel_init(int
index, void **controller)" is declared. Pass something similar, index at least.
Also pass the mode in which the controller should operate.
> List of
> available controllers would be accesible via ie. "usb list" command.
> Implementations of board_usb_init() would lookup applicable hardware in
> gd_t.
DT is not present on all platforms, so you _MUST_ handle the non-DT case too.
> We would need to find a way to differentiate between these controllers
> in cases when it would be expected from u-boot to automatically
> initialize devices it needs. It looks easy in case of ehci-tegra.c.
>
> Devicetree-agnostic boards would have their own "usb list"
> implementation, and those of them that can't initialize their
> controllers selectively would be left the way they are with just one
> additional, unused board_usb_init() argument.
Best regards,
Marek Vasut
next prev parent reply other threads:[~2013-08-27 19:50 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-06 10:50 [U-Boot] [RFC 00/10] New board-specific USB initialization interface Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 01/10] " Mateusz Zalega
2013-08-07 16:23 ` Stephen Warren
2013-08-11 18:04 ` Marek Vasut
2013-08-12 9:33 ` Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 02/10] nvidia, tegra: new USB hardware init interface Mateusz Zalega
2013-08-07 16:26 ` Stephen Warren
2013-08-06 10:50 ` [U-Boot] [RFC 03/10] Voipac PXA270: " Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 04/10] Trizeps IV: " Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 05/10] Colibri PXA270: " Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 06/10] icpdas lp8x4x: " Mateusz Zalega
2013-08-11 18:07 ` Marek Vasut
2013-08-06 10:50 ` [U-Boot] [RFC 07/10] esd pmc440: " Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 08/10] esd apc405: " Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 09/10] balloon3: " Mateusz Zalega
2013-08-06 10:50 ` [U-Boot] [RFC 10/10] canyonlands: " Mateusz Zalega
2013-08-06 11:40 ` [U-Boot] [RFC 00/10] New board-specific USB initialization interface Wolfgang Denk
2013-08-07 15:57 ` Mateusz Zalega
2013-08-07 16:59 ` Mateusz Zalega
2013-08-07 17:01 ` Wolfgang Denk
2013-08-20 13:35 ` [U-Boot] [PATCH] usb: new board-specific USB init interface Mateusz Zalega
2013-08-21 3:33 ` Marek Vasut
2013-08-21 10:22 ` Mateusz Zalega
2013-08-21 13:08 ` Marek Vasut
2013-08-22 10:32 ` Mateusz Zalega
2013-08-22 19:37 ` Marek Vasut
2013-08-26 10:41 ` Mateusz Zalega
2013-08-27 19:50 ` Marek Vasut [this message]
2013-08-21 8:33 ` [U-Boot] [PATCH v2] " Mateusz Zalega
2013-08-27 15:51 ` Mateusz Zalega
2013-09-03 10:41 ` [U-Boot] [PATCH v3] " Mateusz Zalega
2013-09-05 15:50 ` Marek Vasut
2013-09-05 17:37 ` Mateusz Zalega
2013-09-05 17:51 ` Marek Vasut
2013-09-06 11:22 ` Mateusz Zalega
2013-09-06 11:24 ` Marek Vasut
2013-09-06 11:36 ` Mateusz Zalega
2013-09-06 11:40 ` Marek Vasut
2013-09-06 12:17 ` Mateusz Zalega
2013-09-15 14:21 ` Marek Vasut
2013-09-16 8:27 ` Mateusz Zalega
2013-09-10 15:10 ` [U-Boot] [PATCH v4] " Mateusz Zalega
2013-09-15 16:44 ` Marek Vasut
2013-09-16 9:10 ` Mateusz Zalega
2013-09-16 14:24 ` Marek Vasut
2013-09-17 16:11 ` Igor Grinberg
2013-09-18 10:58 ` Mateusz Zalega
2013-09-19 13:34 ` Marek Vasut
2013-09-19 13:40 ` Marek Vasut
2013-09-19 14:34 ` Marek Vasut
2013-09-24 11:54 ` Minkyu Kang
2013-09-24 13:15 ` Marek Vasut
2013-09-25 11:01 ` Mateusz Zalega
2013-09-26 1:50 ` Marek Vasut
2013-09-26 10:04 ` Mateusz Zalega
2013-10-02 19:11 ` [U-Boot] [PATCH v5] " Mateusz Zalega
2013-10-03 15:16 ` Marek Vasut
2013-10-04 17:22 ` [U-Boot] [PATCH v6] " Mateusz Zalega
2013-10-05 0:48 ` Troy Kisky
2013-10-07 10:32 ` Mateusz Zalega
2013-10-08 0:09 ` Troy Kisky
2013-10-08 10:31 ` Marek Vasut
2013-10-06 13:55 ` Marek Vasut
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=201308272150.37201.marex@denx.de \
--to=marex@denx.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