On 01.12.2016 06:54, Baolin Wang wrote:
On 30 November 2016 at 22:09, Mathias Nyman
wrote:
On 30.11.2016 11:02, Baolin Wang wrote:
If the hardware never responds to the stop endpoint command, the
URBs will never be completed, and we might hang the USB
hi Mathias,
here's a much longer series of cleanups which I have been working on for
the past few days. Let me know what you think about it.
I did some light tests SKL and everything still works as before. I know
you have some reservations about my changes to trb_in_td() but IMHO, if
we can
This is a cleanup patch only, no functional changes. The idea is just to
make sure for loops look the same all over the driver.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-dbg.c | 20 ++--
drivers/usb/host/xhci-mem.c | 10 +-
Stop Endpoint command can come at any point and we
have no control of that. We should make sure to
handle COMP_STOP on SETUP phase as well, otherwise
urb->actual_lenght might be set to negative values
in some occasions such as below:
urb->length = 4;
build_control_transfer_td_for(urb, ep);
On Thu, 1 Dec 2016 csmanjuvi...@gmail.com wrote:
> From: Manjunath Goudar
>
> The ohci_hcd_s3c2410_drv_probe and ohci_hcd_s3c2410_drv_remove
> functions are removed as these are useless functions except calling
> usb_hcd_s3c2410_probe and usb_hcd_s3c2410_remove
This patch adds support for PIDs 0x1040, 0x1041 of Telit LE922A.
Since the interface positions are the same than the ones used
for other Telit compositions, previous defined blacklists are used.
Following verbose lsusb output of the two compositions:
Bus 003 Device 006: ID 1bc7:1040 Telit
This patch adds support for PIDs 0x1040, 0x1041 of Telit LE922A.
Since the interface positions are the same than the ones used
for other Telit compositions, previous defined blacklists are used.
Signed-off-by: Daniele Palmas
---
drivers/usb/serial/option.c | 6 ++
1 file
this will be used in several places to convert a single TRB into
No-Op. No functional changes in this patch.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 30 ++
1 file changed, 18 insertions(+), 12 deletions(-)
diff
trb_in_td() has the task of checking whether a given TRB belongs to a
given TD. Currently implementation is far too complex and used wrongly
in some places.
Let's simplify the implementation to the point that we can assume it to
be working always, this means we can remove xhci_test_trb_in_td()
no functional changes. Simple cleanup to make sure variables are ordered
in a 'reverse christmas tree' fashion. While at that, also remove an
obsolete comment which doesn't apply anymore.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 12
This way we can remove checks for valid ring from call sites of
xhci_unmap_td_bounce_buffer()
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/host/xhci-ring.c
Instead of fixing actual_length and setting status to 0, let's make sure
the error is propagated and we print a big scary stack trace so errors
are reported and we have a chance of fixing them.
While at that, also remove unnecessary initialization of urb variable.
Signed-off-by: Felipe Balbi
instead of open coding how to convert a TRB to no-op, let's use our
newly introduced helper.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 12 ++--
1 file changed, 2 insertions(+), 10 deletions(-)
diff --git a/drivers/usb/host/xhci-ring.c
By extracting xhci_td_cleanup() from finish_td(), code before clearer
and easier to follow.
There are no functional changes with this patch. It's merely a cleanup.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 92
By just replacing xhci_warn() with xhci_dbg() we can get rid of the
extra argument.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-mem.c | 5 ++---
drivers/usb/host/xhci-ring.c | 10 --
drivers/usb/host/xhci.h | 2 +-
3 files changed, 7
handle_tx_event() is not releasing xhci->lock nor reacquiring it, remove
the bogus annotation.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/usb/host/xhci-ring.c
xhci_unmap_td_bounce_buffer() already checks for a valid td->bounce_seg
and bails out early if that's invalid. There's no need to check for this
twice.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 9 +++--
1 file changed, 3 insertions(+), 6
On 12/01/2016 02:35 PM, Sven Geggus wrote:
> Hello,
>
> I'm trying to setup a custom mouse-like device on a pi zero.
>
> As I have never been using the USB gadget stack before, the following
> problem might likely be a configuration failure on my side as well as a
> driver issue.
>
> Using
On Mon, 28 Nov 2016 23:20:13 +0100
Rafal Milecki wrote:
> Hi Ralph,
>
> On 11/21/2016 09:40 AM, Ralph Sennhauser wrote:
> > I tried your new usbport trigger in Linux 4.9 with little luck as
> > can be seen in the following output of the serial console.
>
> I'm really happy
On Thu, Dec 01, 2016 at 12:18:49PM +0100, Johan Hovold wrote:
> Hi Greg,
>
> Here are my updates for 4.10. Details below.
>
> Thanks,
> Johan
>
>
> The following changes since commit 07d9a380680d1c0eb51ef87ff2eab5c994949e69:
>
> Linux 4.9-rc2 (2016-10-23 17:10:14 -0700)
>
> are available
Commit bfe9b9d2df66 ("cdc_ether: Improve ZTE MF823/831/910 handling")
introduced a work-around in usbnet_cdc_status() for devices that exported
cdc carrier on twice on connect. Before the commit, this behavior caused
the link state to be incorrect. It was assumed that all CDC Ethernet
devices
On Thu, 1 Dec 2016 csmanjuvi...@gmail.com wrote:
> From: Manjunath Goudar
>
> The ohci_hcd_pxa27x_drv_probe function is not doing anything other
> than calling usb_hcd_pxa27x_probe function so ohci_hcd_pxa27x_drv_probe
> function is useless that is why removed
the _save() version of list iterators are supposed to be used when
list_entry is going to be removed from the list while iterating. Since
xhci_handle_stopped_cmd_ring() is not removing anything from the list,
just converting commands into No-Op TRBs, we don't need to use the safe
version.
Hello,
I'm trying to setup a custom mouse-like device on a pi zero.
As I have never been using the USB gadget stack before, the following
problem might likely be a configuration failure on my side as well as a
driver issue.
Using the documentation from kernel source
Cleanup only. This patch is a mechaninal rename to make sure our macros
for TRB completion codes match what the specification uses to refer to
such errors. The idea behind this is that it makes it far easier to grep
the specification and match it with implementation.
Signed-off-by: Felipe Balbi
COMP_SUCCESS should only be asserted on a *true* sucessful transfer. Any
other cases are bogus and we should aim to catch them. One easy way to
get bug reports is to trigger a WARN_ONCE() on such cases.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c |
process_ctrl_td() is too complex and difficult to read. We can clean it
up a lot and maintain same functionality as before. Note that while
cleaning up, one comment was introduced to explain the special case - it
wasn't clear before from code.
Much of the changes are related to removal of
If we get an interrupt while we don't have an allocated event_ring, that
means we're enabling IRQs far too early. Instead of just printing an
error message, let's make sure to add a scary-looking Stack Trace so
people report these things and we fix them.
Eventually, when we're happy that this
When calling xhci_dbg_regs() we actually _do_ want to know XHCI's
version. This might help figure out why certain problems only happen
in some cases.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-dbg.c | 2 --
1 file changed, 2 deletions(-)
diff --git
Instead of always defaulting to a 256-entry array,
we can dynamically allocate devs based on what HW
tells us it supports.
Note that we can't, yet, purge MAX_HC_SLOTS
completely because of struct
xhci_device_context_array reliance on it.
Signed-off-by: Felipe Balbi
Similar to previous patch on process_ctrl_td(), we can also clean up
process_bulk_intr_td() and turn it into an easier to read and maintain
function.
This patch shuffles code around, defines each variable in one line,
removes unnecessary debugging messages and an unnecessary goto
statement.
Replace list_entry() with list_first_entry() and list_for_each() with
list_for_each_entry(). This makes the code slightly more readable.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 12 +---
1 file changed, 5 insertions(+), 7 deletions(-)
Now that finish_td() is the only place calling
xhci_requires_manual_halt_cleanup() we can remove that function and use
that to cleanup finish_td() by converting it into a switch statement
using trb_comp_code.
Signed-off-by: Felipe Balbi
---
Many other bits in USBSTS register are "clear-by-writing-1". Let's make
sure that we clear *only* STS_EINT and not any of the other bits as they
might be needed later.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 3 +--
1 file changed, 1
Instead of having several return points, let's use a local variable and
a single place to return. This makes the code slightly easier to read.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ring.c | 31 ---
1 file changed, 16
it does no good, let's remove it.
Signed-off-by: Felipe Balbi
---
drivers/usb/host/xhci-ext-caps.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/host/xhci-ext-caps.h b/drivers/usb/host/xhci-ext-caps.h
index
ep_list inside gadget structure doesn't contain ep0.
It is stored separately in ep0 field.
This causes an urb hang if gadget driver decides to
delay setup handling. On host side this is visible as
timeout error when setting configuration.
This bug can be reproduced using for example any gadget
On 12/01/2016 03:28 PM, Ralph Sennhauser wrote:
Below the oops with your debug patch applied.
(...)
root@wrt1900acs:/# cd sys/class/leds/pca963x\:shelby\:white\:usb2/
root@wrt1900acs:/sys/devices/platform/soc/soc:internal-regs/f1011000.i2c/i2c-0/0-0068/leds/pca963x:shelby:white:usb2#
echo
Current implementation of init_vudc_hw() adds ep0 to ep_list
and then after looping through all endpoints removes it from
that list.
As this may be misleading let's refactor this function
and avoid adding and removing ep0 to eplist and place it
immediately in correct place.
Signed-off-by:
Hi,
On 12/01/2016 06:26 PM, Sergei Shtylyov wrote:
> Hello!
>
> On 12/01/2016 07:20 PM, Krzysztof Opasiak wrote:
>
>> ep_list inside gadget structure doesn't contain ep0.
>> It is stored separately in ep0 field.
>>
>> This causes an urb hang if gadget driver decides to
>> delay setup handling.
On Thu, Dec 01, 2016 at 10:42:59PM +0530, Amit Kushwaha wrote:
> This patch fixes checkpatch.pl warning:
> braces {} are not necessary for single statement blocks
>
> Signed-off-by: Amit Kushwaha
{sigh}
Why are you now not using your samsung email address?
Please
ep_list inside gadget structure doesn't contain ep0.
It is stored separately in ep0 field.
This causes an urb hang if gadget driver decides to
delay setup handling. On host side this is visible as
timeout error when setting configuration.
This bug can be reproduced using for example any gadget
This patch fixes checkpatch.pl warning:
braces {} are not necessary for single statement blocks
Signed-off-by: Amit Kushwaha
---
drivers/usb/host/xhci.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/host/xhci.c
Hello!
On 12/01/2016 07:20 PM, Krzysztof Opasiak wrote:
ep_list inside gadget structure doesn't contain ep0.
It is stored separately in ep0 field.
This causes an urb hang if gadget driver decides to
delay setup handling. On host side this is visible as
timeout error when setting
Hi,
On 11/22/2016 07:48 AM, Nobuo Iwata wrote:
> Implementation of new connect operation. This is linked as a part of
> usbip commnad. With this patch, usbip command has following operations.
>
> bind
> unbind
> list (local/remote)
> attach
> detach
> port
> connect ... this patch
In
Hi,
On 11/22/2016 07:48 AM, Nobuo Iwata wrote:
> Modification to export and un-export response in
> tools/usb/usbip/src/usbip_network.h. It just changes return code type
> from int to uint32_t as same as other responses.
>
> Signed-off-by: Nobuo Iwata
> ---
>
On 11/24/2016 06:59 AM, fx IWATA NOBUO wrote:
> Hello,
>
>> This doesn't look like a simple change to rename and reuse an unused
>> function. This patch does lot more and is changing the user interface.
>> Looks like instead of taking an integer value for device lookup, you
>> are changing it
From: "ASIX_Allan [Office]"
Date: Wed, 30 Nov 2016 16:29:08 +0800
> The change fixes AX88772_suspend() USB vendor commands failure issues.
>
> Signed-off-by: Allan Chou
> Tested-by: Allan Chou
> Tested-by: Jon Hunter
On Thu, Dec 1, 2016 at 12:23 AM, Kishon Vijay Abraham I wrote:
> Hi,
>
> On Wednesday 23 November 2016 09:16 AM, John Stultz wrote:
>> This wires extconn support to hikey's phy driver, and
>> connects it to the usb UDC layer via a usb_phy structure.
>>
>> Not sure if this is the
On 11/22/2016 07:48 AM, Nobuo Iwata wrote:
(...)
> +
> +static int send_unexport_device(int sockfd, struct usbip_usb_device *udev)
> +{
> + int rc;
> + struct op_unexport_request request;
> + struct op_unexport_reply reply;
> + uint16_t code = OP_REP_UNEXPORT;
> +
> +
Hi,
> Hi,
>
> Good catch but I have a few comments to commit message:
>
> On 12/01/2016 12:24 AM, Felix Hädicke wrote:
>> This fixes a regression which was introduced by commit f1bddbb, by
>> reverting a small fragment of commit 855ed04.
>>
> Not exactly. The regression has been introduced by
On Tue, Nov 22, 2016 at 4:53 AM, Peter Chen wrote:
> On Tue, Nov 22, 2016 at 03:23:12AM +0100, Rafael J. Wysocki wrote:
>> > @@ -0,0 +1,237 @@
>> > +/*
>> > + * core.c power sequence core file
>> > + *
>> > + * Copyright (C) 2016 Freescale Semiconductor, Inc.
>> > + *
On 11/23/2016 10:30 AM, Greg KH wrote:
> On Tue, Nov 22, 2016 at 03:48:09PM +0900, Nobuo Iwata wrote:
>> Dear all,
>>
>> This series of patches adds exporting device operation to USB/IP.
>
> I would _love_ it if some of the people who are listed as MAINTAINERS of
> this code could actually
On a system with a defective USB device connected to an USB hub,
an endless sequence of port connect events was observed. The sequence
of events as observed is as follows:
- Port reports connected event (port status=USB_PORT_STAT_CONNECTION).
- Event handler debounces port and resets it by
Hi,
On 11/22/2016 07:48 AM, Nobuo Iwata wrote:
(...)
>
> -static int do_accept(int listenfd)
> +static int do_accept(int listenfd, char *host, char *port)
> {
> int connfd;
> struct sockaddr_storage ss;
> socklen_t len = sizeof(ss);
> - char host[NI_MAXHOST],
On 2 December 2016 at 09:17, Lu Baolu wrote:
> Hi,
>
> On 12/01/2016 04:03 PM, Baolin Wang wrote:
>> On 1 December 2016 at 15:44, Lu Baolu wrote:
>>> Hi,
>>>
>>> On 12/01/2016 03:35 PM, Baolin Wang wrote:
On 1 December 2016 at 14:35, Lu
On 2 December 2016 at 10:29, Lu Baolu wrote:
> handle_cmd_completion() frees a command structure which might
> be still referenced by xhci->current_cmd. This might cause
> problem when xhci->current_cmd is accessed after that.
>
> A real-life case could be like this. The
On 1 December 2016 at 21:28, Mathias Nyman
wrote:
> On 01.12.2016 06:54, Baolin Wang wrote:
>>
>> On 30 November 2016 at 22:09, Mathias Nyman
>> wrote:
>>>
>>> On 30.11.2016 11:02, Baolin Wang wrote:
If the hardware
handle_cmd_completion() frees a command structure which might
be still referenced by xhci->current_cmd. This might cause
problem when xhci->current_cmd is accessed after that.
A real-life case could be like this. The host takes a very long
time to respond to a command, and the command timer is
On 11/23/2016 10:01 PM, fx IWATA NOBUO wrote:
> Hello,
>
Looks like you removed the text. Let's go back to the goals.
Can we use server and client terminology which is we use in
instead of App and Dev. It makes lot easier to understand.
https://www.kernel.org/doc/readme/tools-usb-usbip-README
Hi,
On 12/01/2016 04:03 PM, Baolin Wang wrote:
> On 1 December 2016 at 15:44, Lu Baolu wrote:
>> Hi,
>>
>> On 12/01/2016 03:35 PM, Baolin Wang wrote:
>>> On 1 December 2016 at 14:35, Lu Baolu wrote:
Hi,
On 12/01/2016 02:04 PM,
Hi Felipe,
On 2016년 11월 30일 19:36, Felipe Balbi wrote:
>
> Hi,
>
> Chanwoo Choi writes:
>> This patch uses the resource-managed extcon API for
>> extcon_register_notifier()
>> and replaces the deprecated extcon API as following:
>> - extcon_get_cable_state_() ->
Hello,
> In my humble opinion connect is not a best name for this operation.
Yes. I think connect is not perfect.
> it not only starts the connection to a remote server but also> exports
> a device. I think that a name like export or attach_to_remote would be
> more suitable. (...)
I think one
> > + memset(, 0, sizeof(request));
> > + memset(, 0, sizeof(reply));
>
> As in previous patch, you don't need to 0 the reply.
I will remove the memset.
> sizeof(request.udev)?
I will modify.
> > + /* check the reply */
> > + if (reply.returncode) {
> > + err("recv error
On 1 December 2016 at 15:44, Lu Baolu wrote:
> Hi,
>
> On 12/01/2016 03:35 PM, Baolin Wang wrote:
>> On 1 December 2016 at 14:35, Lu Baolu wrote:
>>> Hi,
>>>
>>> On 12/01/2016 02:04 PM, Baolin Wang wrote:
Hi Baolu,
On 1 December
Hi,
On Wednesday 23 November 2016 09:16 AM, John Stultz wrote:
> This wires extconn support to hikey's phy driver, and
> connects it to the usb UDC layer via a usb_phy structure.
>
> Not sure if this is the right way to connect phy -> UDC,
> but I'm lacking a clear example.
>
> Cc: Wei Xu
Hi,
John Youn writes:
> On 11/30/2016 4:47 AM, Felipe Balbi wrote:
>>
>> Hi,
>>
>> Raviteja Garimella writes:
>>> Hi Balbi,
>>>
>>> On Wed, Nov 30, 2016 at 4:10 PM, Felipe Balbi wrote:
Hi,
dwc2_hsotg_ep_enable can be called from interrupt context, so all
allocations should be done with GFP_ATOMIC flags. This fixes following
issue on ARM architecture:
[] (unwind_backtrace) from [] (show_stack+0x10/0x14)
[] (show_stack) from [] (dump_stack+0x74/0x94)
[] (dump_stack) from []
Hi Greg,
Here are my updates for 4.10. Details below.
Thanks,
Johan
The following changes since commit 07d9a380680d1c0eb51ef87ff2eab5c994949e69:
Linux 4.9-rc2 (2016-10-23 17:10:14 -0700)
are available in the git repository at:
Le 01/12/2016 à 11:26, Alexandre Belloni a écrit :
> Use devm_kasprintf instead of simple kasprintf to free the allocated memory
> when needed.
>
> Suggested-by: Peter Rosin
> Signed-off-by: Alexandre Belloni
Acked-by: Nicolas Ferre
Use devm_kasprintf instead of simple kasprintf to free the allocated memory
when needed.
Suggested-by: Peter Rosin
Signed-off-by: Alexandre Belloni
---
drivers/usb/gadget/udc/atmel_usba_udc.c | 3 ++-
1 file changed, 2 insertions(+), 1
On 01.12.2016 12:17, Alexander Stein wrote:
This allows someone to grep for the complete warning message as in;
xhci-hcd xhci-hcd.0.auto: USB core suspending device not in U0/U1/U2.
Signed-off-by: Alexander Stein
---
Thanks, added to queue for 4.11
Hi,
Good catch but I have a few comments to commit message:
On 12/01/2016 12:24 AM, Felix Hädicke wrote:
> This fixes a regression which was introduced by commit f1bddbb, by
> reverting a small fragment of commit 855ed04.
>
Not exactly. The regression has been introduced by commit 855ed04
Thanks a lot Andrzej!
I've applied the patch, but I undid the reformatting of the nvmet
code to keep the patch as simple as possible.
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at
This allows someone to grep for the complete warning message as in;
xhci-hcd xhci-hcd.0.auto: USB core suspending device not in U0/U1/U2.
Signed-off-by: Alexander Stein
---
drivers/usb/host/xhci-hub.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
From: Jassi Brar
Typo in commit 76e0da34c7cec5a7d introduced a bug that prevents
creation of streaming_{interval,maxpacket,maxburst} nodes for
invalid 'aname' node.
Signed-off-by: Jassi Brar
---
drivers/usb/gadget/function/uvc_configfs.c
On Thu, Dec 01, 2016 at 10:57:24PM +0100, Rafael J. Wysocki wrote:
> On Tue, Nov 22, 2016 at 4:53 AM, Peter Chen wrote:
> > On Tue, Nov 22, 2016 at 03:23:12AM +0100, Rafael J. Wysocki wrote:
> >> > @@ -0,0 +1,237 @@
> >> > +/*
> >> > + * core.c power sequence core file
On Fri, Dec 02, 2016 at 11:52:02AM +0530, Jassi Brar wrote:
> From: Jassi Brar
>
> Typo in commit 76e0da34c7cec5a7d introduced a bug that prevents
> creation of streaming_{interval,maxpacket,maxburst} nodes for
> invalid 'aname' node.
>
> Signed-off-by: Jassi Brar
On Wed, Nov 30, 2016 at 02:57:33PM +0900, Chanwoo Choi wrote:
> This patch uses the resource-managed extcon API for extcon_register_notifier()
> and replaces the deprecated extcon API as following:
> - extcon_get_cable_state_() -> extcon_get_state()
>
> Signed-off-by: Chanwoo Choi
Hi,
On 12/02/2016 12:18 PM, Baolin Wang wrote:
> On 2 December 2016 at 10:29, Lu Baolu wrote:
>> handle_cmd_completion() frees a command structure which might
>> be still referenced by xhci->current_cmd. This might cause
>> problem when xhci->current_cmd is accessed
On 2 December 2016 at 12:40, Lu Baolu wrote:
> Hi,
>
> On 12/02/2016 12:18 PM, Baolin Wang wrote:
>> On 2 December 2016 at 10:29, Lu Baolu wrote:
>>> handle_cmd_completion() frees a command structure which might
>>> be still referenced by
Hello,
> + if (!error)
> + reply.returncode = 0;
> + else
> + reply.returncode = -1;
>
> It looks a little bit ugly to me that we change the value to be unsigned
> and then assign a signed number to it. In addition your compiler is going
> to complain if
Hello,
> In my humble opinion the code itself is good. The problem is commit
> message. Current commit massage has nothing to do with patch content
> and should be totally changed.
>
> Please elaborate that this function is unused, write that using
> indexes on a list is generally not a good
83 matches
Mail list logo