From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751878AbcFIU7f (ORCPT ); Thu, 9 Jun 2016 16:59:35 -0400 Received: from bear.ext.ti.com ([198.47.19.11]:34556 "EHLO bear.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750792AbcFIU7c (ORCPT ); Thu, 9 Jun 2016 16:59:32 -0400 Date: Thu, 9 Jun 2016 15:58:56 -0500 From: Bin Liu To: Pali =?iso-8859-1?Q?Roh=E1r?= CC: Tony Lindgren , joerg Reisenweber , Greg Kroah-Hartman , , , , Ivaylo Dimitrov , Sebastian Reichel , Aaro Koskinen , Pavel Machek , Nishanth Menon , Felipe Balbi Subject: Re: Nokia N900: musb is in wrong state after boot Message-ID: <20160609205856.GC2167@uda0271908> Mail-Followup-To: Bin Liu , Pali =?iso-8859-1?Q?Roh=E1r?= , Tony Lindgren , joerg Reisenweber , Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org, Ivaylo Dimitrov , Sebastian Reichel , Aaro Koskinen , Pavel Machek , Nishanth Menon , Felipe Balbi References: <201601091616.04193@pali> <3690314.8jDXSUDcRZ@saturn> <20160121192113.GM19432@atomide.com> <201601231357.32629@pali> <20160529103824.GM29844@pali> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20160529103824.GM29844@pali> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On Sun, May 29, 2016 at 12:38:24PM +0200, Pali Rohár wrote: > > Hello, attached patch for musb debugfs adds option to force both > > hostmode with speed. It is just example, I tested only compilation. > > > > Something like that will be needed for usb host mode on Nokia N900. > > > > -- > > Pali Rohár > > pali.rohar@gmail.com > > > From fd67b58e3538c0732750ecad915cde736da099dc Mon Sep 17 00:00:00 2001 > > From: =?UTF-8?q?Pali=20Roh=C3=A1r?= > > Date: Sat, 9 Jan 2016 16:57:59 +0100 > > Subject: [PATCH] musb: debugfs: Add support in testmode for forcing host mode > > together with speed > > > > --- > > drivers/usb/musb/musb_debugfs.c | 44 +++++++++++++++++++++++++-------------- > > 1 file changed, 28 insertions(+), 16 deletions(-) > > > > diff --git a/drivers/usb/musb/musb_debugfs.c b/drivers/usb/musb/musb_debugfs.c > > index 9b22d94..62c13a2 100644 > > --- a/drivers/usb/musb/musb_debugfs.c > > +++ b/drivers/usb/musb/musb_debugfs.c > > @@ -147,28 +147,34 @@ static int musb_test_mode_show(struct seq_file *s, void *unused) > > > > test = musb_readb(musb->mregs, MUSB_TESTMODE); > > > > - if (test & MUSB_TEST_FORCE_HOST) > > + if (test & (MUSB_TEST_FORCE_HOST | MUSB_TEST_FORCE_FS)) > > + seq_printf(s, "force host full-speed\n"); > > + > > + else if (test & (MUSB_TEST_FORCE_HOST | MUSB_TEST_FORCE_HS)) > > + seq_printf(s, "force host high-speed\n"); > > + > > + else if (test & MUSB_TEST_FORCE_HOST) > > seq_printf(s, "force host\n"); > > > > - if (test & MUSB_TEST_FIFO_ACCESS) > > + else if (test & MUSB_TEST_FIFO_ACCESS) > > seq_printf(s, "fifo access\n"); > > > > - if (test & MUSB_TEST_FORCE_FS) > > + else if (test & MUSB_TEST_FORCE_FS) > > seq_printf(s, "force full-speed\n"); > > > > - if (test & MUSB_TEST_FORCE_HS) > > + else if (test & MUSB_TEST_FORCE_HS) > > seq_printf(s, "force high-speed\n"); > > > > - if (test & MUSB_TEST_PACKET) > > + else if (test & MUSB_TEST_PACKET) > > seq_printf(s, "test packet\n"); > > > > - if (test & MUSB_TEST_K) > > + else if (test & MUSB_TEST_K) > > seq_printf(s, "test K\n"); > > > > - if (test & MUSB_TEST_J) > > + else if (test & MUSB_TEST_J) > > seq_printf(s, "test J\n"); > > > > - if (test & MUSB_TEST_SE0_NAK) > > + else if (test & MUSB_TEST_SE0_NAK) > > seq_printf(s, "test SE0 NAK\n"); > > > > return 0; > > @@ -206,30 +212,36 @@ static ssize_t musb_test_mode_write(struct file *file, > > if (copy_from_user(buf, ubuf, min_t(size_t, sizeof(buf) - 1, count))) > > return -EFAULT; > > > > - if (strstarts(buf, "force host")) > > + if (strstarts(buf, "force host full-speed")) > > + test = MUSB_TEST_FORCE_HOST | MUSB_TEST_FORCE_FS; > > + > > + else if (strstarts(buf, "force host high-speed")) > > + test = MUSB_TEST_FORCE_HOST | MUSB_TEST_FORCE_HS; > > + > > + else if (strstarts(buf, "force host")) > > test = MUSB_TEST_FORCE_HOST; > > > > - if (strstarts(buf, "fifo access")) > > + else if (strstarts(buf, "fifo access")) > > test = MUSB_TEST_FIFO_ACCESS; > > > > - if (strstarts(buf, "force full-speed")) > > + else if (strstarts(buf, "force full-speed")) > > test = MUSB_TEST_FORCE_FS; > > > > - if (strstarts(buf, "force high-speed")) > > + else if (strstarts(buf, "force high-speed")) > > test = MUSB_TEST_FORCE_HS; > > > > - if (strstarts(buf, "test packet")) { > > + else if (strstarts(buf, "test packet")) { > > test = MUSB_TEST_PACKET; > > musb_load_testpacket(musb); > > } > > > > - if (strstarts(buf, "test K")) > > + else if (strstarts(buf, "test K")) > > test = MUSB_TEST_K; > > > > - if (strstarts(buf, "test J")) > > + else if (strstarts(buf, "test J")) > > test = MUSB_TEST_J; > > > > - if (strstarts(buf, "test SE0 NAK")) > > + else if (strstarts(buf, "test SE0 NAK")) > > test = MUSB_TEST_SE0_NAK; > > > > musb_writeb(musb->mregs, MUSB_TESTMODE, test); > > -- > > 1.7.9.5 > > > > Tony, what do you think about that patch? Based on the musb ug, force_host bit is allowed to be set along with force_hs or force_fs bit. So please resend this patch with subject changed to the following, and I will take it. The current suject makes is sound like a new feature rather than a bugfix. "usb: musb: debugfs: allow forcing host mode together with speed in testmode" But I am not sure how this will fix n900 host mode problem, since testmode is not used in normal operation. Regards, -Bin.