From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Marek Vasut <marex@denx.de>
Cc: u-boot@lists.denx.de, Kevin Hilman <khilman@baylibre.com>,
Lukasz Majewski <lukma@denx.de>, Simon Glass <sjg@chromium.org>
Subject: Re: [PATCH v2 1/4] cmd: bind: Add unbind command with driver filter
Date: Sun, 23 Jul 2023 19:49:55 +0200 [thread overview]
Message-ID: <20230723194955.7338144c@xps-13> (raw)
In-Reply-To: <20230717112137.9139-1-marex@denx.de>
Hi Marek,
marex@denx.de wrote on Mon, 17 Jul 2023 13:21:34 +0200:
> Extend the driver core to perform lookup by both OF node and driver
> bound to the node. Use this to look up specific device instances to
> unbind from nodes in the unbind command. One example where this is
> needed is USB peripheral controller, which may have multiple gadget
> drivers bound to it. The unbind command has to select that specific
> gadget driver instance to unbind from the controller, not unbind the
> controller driver itself from the controller.
>
> USB ethernet gadget usage looks as follows with this change. Notice
> the extra 'usb_ether' addition in the 'unbind' command at the end.
> "
> bind /soc/usb-otg@49000000 usb_ether
I don't really get why this is needed? Yes, having proper bind and
unbind methods and having them called internally is relevant, but when
you have a single OTG controller, why is this needed? It basically
breaks the CLI, making bisects more painful and all updates just fail.
> setenv ethact usb_ether
> setenv loadaddr 0xc2000000
> setenv ipaddr 10.0.0.2
> setenv serverip 10.0.0.1
> setenv netmask 255.255.255.0
> tftpboot 0xc2000000 10.0.0.1:test.file
> unbind /soc/usb-otg@49000000 usb_ether
> "
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> ---
> Cc: Kevin Hilman <khilman@baylibre.com>
> Cc: Lukasz Majewski <lukma@denx.de>
> Cc: Marek Vasut <marex@denx.de>
> Cc: Simon Glass <sjg@chromium.org>
I've tested the whole series, unfortunately is does not work on
AM335x/BBBW:
* Any recovery attempted using the network will now fail in
the SPL, where, AFAIK, there is no way to manually bind:
U-Boot SPL 2023.07-00806-gac80e6de9cf (Jul 23 2023 - 19:45:51 +0200)
Trying to boot from USB eth
Could not get PHY for eth_cpsw: addr 0
eth0: eth_cpswusing musb-hdrc, OUT ep1out IN ep1in STATUS ep2in
MAC de:ad:be:ef:00:01
HOST MAC de:ad:be:ef:00:00
RNDIS ready
, eth1: usb_ether
* The bind command was not available on my default configuration,
making it even difficult for people unaware that this command is
now required to fix their common commands.
* Any command that expects the usb_ether driver will now fail badly
even after the bind call:
=> bind /ocp/usb@47400000/usb@47401000 usb_ether
=> fastboot usb 0
couldn't find an available UDC
g_dnl_register: failed!, error: -19
exit not allowed from main input shell.
=> tftp 0x81000000 zImage
dev_get_priv: null device
data abort
pc : [<9ffa04ba>] lr : [<9ff86d5f>]
reloc pc : [<8083b4ba>] lr : [<80821d5f>]
sp : 9df2f920 ip : 00000000 fp : 00000003
r10: 9df4cf48 r9 : 9df44ea0 r8 : 9ffec33c
r7 : 00004a53 r6 : 00000000 r5 : 00000bb8 r4 : 9df4d3c0
r3 : 9ff97653 r2 : fff1102c r1 : 00000000 r0 : 00000000
Flags: nzcv IRQs off FIQs on Mode SVC_32 (T)
Code: 9ffd b508 f7e6 fc4b (6801) 2000
Resetting CPU ...
Is there anything I missed?
Thanks,
Miquèl
next prev parent reply other threads:[~2023-07-23 17:50 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-17 11:21 [PATCH v2 1/4] cmd: bind: Add unbind command with driver filter Marek Vasut
2023-07-17 11:21 ` [PATCH v2 2/4] usb: gadget: ether: Inline functions used once Marek Vasut
2023-07-19 19:54 ` Tom Rini
2023-07-17 11:21 ` [PATCH v2 3/4] usb: gadget: ether: Move probe function above driver structure Marek Vasut
2023-07-19 19:54 ` Tom Rini
2023-07-17 11:21 ` [PATCH v2 4/4] usb: gadget: ether: Handle gadget driver registration in probe and remove Marek Vasut
2023-07-19 1:08 ` [PATCH v2 1/4] cmd: bind: Add unbind command with driver filter Simon Glass
2023-07-19 14:23 ` Marek Vasut
2023-07-19 19:11 ` Simon Glass
2023-07-19 19:53 ` Tom Rini
2023-07-23 17:49 ` Miquel Raynal [this message]
2023-07-23 21:45 ` Marek Vasut
2023-07-28 13:23 ` Miquel Raynal
2023-07-29 15:02 ` Marek Vasut
2023-07-24 18:13 ` Tom Rini
2023-07-28 12:55 ` Miquel Raynal
2023-07-28 14:00 ` Tom Rini
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=20230723194955.7338144c@xps-13 \
--to=miquel.raynal@bootlin.com \
--cc=khilman@baylibre.com \
--cc=lukma@denx.de \
--cc=marex@denx.de \
--cc=sjg@chromium.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.