[{"id":1512,"web_url":"http://patchwork.ozlabs.org/comment/1512/","msgid":"<20080919162324.e354ed2f.akpm@linux-foundation.org>","date":"2008-09-19T23:23:24","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","submitter":{"id":107,"url":"http://patchwork.ozlabs.org/api/people/107/","name":"Andrew Morton","email":"akpm@linux-foundation.org"},"content":"On Thu, 18 Sep 2008 19:17:46 +0400\nAnton Vorontsov <avorontsov@ru.mvista.com> wrote:\n\n> This patch adds support for the FHCI USB controller, as found\n> in the Freescale MPC836x and MPC832x processors. It can support\n> Full or Low speed modes.\n> \n> Quite a lot the hardware is doing by itself (SOF generation, CRC\n> generation and checking), though scheduling and retransmission is on\n> software's shoulders.\n> \n> This controller does not integrate the root hub, so this driver also\n> fakes one-port hub. External hub is required to support more than\n> one device.\n>\n> ...\n>\n\nPlease, no.\n\n> new file mode 100644\n> index 0000000..23716fa\n> --- /dev/null\n> +++ b/drivers/usb/host/fhci-cq.c\n> @@ -0,0 +1,105 @@\n> +/*\n> + * Freescale QUICC Engine USB Host Controller Driver\n> + *\n> + * Copyright (c) Freescale Semicondutor, Inc. 2006.\n> + *               Shlomi Gridish <gridish@freescale.com>\n> + *               Jerry Huang <Chang-Ming.Huang@freescale.com>\n> + * Copyright (c) Logic Product Development, Inc. 2007\n> + *               Peter Barada <peterb@logicpd.com>\n> + * Copyright (c) MontaVista Software, Inc. 2008.\n> + *               Anton Vorontsov <avorontsov@ru.mvista.com>\n> + *\n> + * This program is free software; you can redistribute  it and/or modify it\n> + * under  the terms of  the GNU General  Public License as published by the\n> + * Free Software Foundation;  either version 2 of the  License, or (at your\n> + * option) any later version.\n> + */\n> +\n> +/* circular queue structure */\n\nYet another private ringbuffer implementation.  Sigh.\n\n> +struct cir_q {\n> +       int max;\t\t/* size of queue */\n> +       int max_in;\t/* max items in queue */\n> +       int first;\t/* index of first in queue */\n> +       int last;\t/* index after last in queue */\n> +       int read;\t/* current reading position */\n> +       void *table[1];\t/* fake size */\n> +};\n> +\n> +/* circular queue handle */\n> +static int cq_howmany(struct cir_q *cq)\n> +{\n> +\tint l = cq->last;\n> +\tint f = cq->first;\n> +\n> +\treturn l >= f ? l - f : l + cq->max - f;\n> +}\n> +\n> +static struct cir_q *cq_new(int size)\n> +{\n> +\tstruct cir_q *cq;\n> +\n> +\tcq = kzalloc((sizeof(*cq) + size * sizeof(void *)), GFP_KERNEL);\n> +\tif (cq) {\n> +\t\tcq->max = size;\n> +\t\tcq->first = 0;\n> +\t\tcq->last = 0;\n> +\t\tcq->read = 0;\n> +\t\tcq->max_in = 0;\n\nThe above four statements are unneeded.\n\n> +\t}\n> +\n> +\treturn cq;\n> +}\n>\n> ...\n>\n> +++ b/drivers/usb/host/fhci-hcd.c\n> @@ -0,0 +1,798 @@\n> +/*\n> + * Freescale QUICC Engine USB Host Controller Driver\n> + *\n> + * Copyright (c) Freescale Semicondutor, Inc. 2006.\n> + *               Shlomi Gridish <gridish@freescale.com>\n> + *               Jerry Huang <Chang-Ming.Huang@freescale.com>\n> + * Copyright (c) Logic Product Development, Inc. 2007\n> + *               Peter Barada <peterb@logicpd.com>\n> + * Copyright (c) MontaVista Software, Inc. 2008.\n> + *               Anton Vorontsov <avorontsov@ru.mvista.com>\n> + *\n> + * This program is free software; you can redistribute  it and/or modify it\n> + * under  the terms of  the GNU General  Public License as published by the\n> + * Free Software Foundation;  either version 2 of the  License, or (at your\n> + * option) any later version.\n> + */\n> +\n> +#if defined(CONFIG_FHCI_DEBUG) && !defined(DEBUG)\n> +#define DEBUG\n> +#endif\n> +\n> +#include <linux/module.h>\n> +#include <linux/kernel.h>\n> +#include <linux/delay.h>\n> +#include <linux/errno.h>\n> +#include <linux/list.h>\n> +#include <linux/interrupt.h>\n> +#include <linux/io.h>\n> +#include <linux/usb.h>\n> +#include <linux/of_platform.h>\n> +#include <linux/of_gpio.h>\n> +#include <asm/qe.h>\n> +#include <asm/fsl_gtm.h>\n> +#include \"../core/hcd.h\"\n> +#include \"fhci.h\"\n> +#include \"fhci-hub.c\"\n> +#include \"fhci-q.c\"\n> +#include \"fhci-dbg.c\"\n> +#include \"fhci-mem.c\"\n> +#include \"fhci-cq.c\"\n> +#include \"fhci-tds.c\"\n> +#include \"fhci-sched.c\"\n\nhack, gack, nack.\n\nWe know that USB likes to prevertedly #include C files all over the\nplace, but this doesn't mean that it's a sane, tasteful or desirable\nthing to do.\n\nI stopped looking there.  Guys - get a grip :(","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id DCB94DDFDC\n\tfor <patchwork-incoming@ozlabs.org>;\n\tSat, 20 Sep 2008 09:23:57 +1000 (EST)","from smtp1.linux-foundation.org (smtp1.linux-foundation.org\n\t[140.211.169.13])\n\t(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))\n\t(Client CN \"smtp.linux-foundation.org\",\n\tIssuer \"CA Cert Signing Authority\" (verified OK))\n\tby ozlabs.org (Postfix) with ESMTPS id 3F6BADDDD4\n\tfor <linuxppc-dev@ozlabs.org>; Sat, 20 Sep 2008 09:23:43 +1000 (EST)","from imap1.linux-foundation.org (imap1.linux-foundation.org\n\t[140.211.169.55])\n\tby smtp1.linux-foundation.org (8.14.2/8.13.5/Debian-3ubuntu1.1) with\n\tESMTP id m8JNNQ0e008612\n\t(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO);\n\tFri, 19 Sep 2008 16:23:27 -0700","from akpm.corp.google.com (localhost [127.0.0.1])\n\tby imap1.linux-foundation.org\n\t(8.13.5.20060308/8.13.5/Debian-3ubuntu1.1) with SMTP id\n\tm8JNNPgk011752; Fri, 19 Sep 2008 16:23:25 -0700"],"Date":"Fri, 19 Sep 2008 16:23:24 -0700","From":"Andrew Morton <akpm@linux-foundation.org>","To":"Anton Vorontsov <avorontsov@ru.mvista.com>","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","Message-Id":"<20080919162324.e354ed2f.akpm@linux-foundation.org>","In-Reply-To":"<20080918151746.GC31187@oksana.dev.rtsoft.ru>","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\n\t<20080918151746.GC31187@oksana.dev.rtsoft.ru>","X-Mailer":"Sylpheed version 2.2.4 (GTK+ 2.8.20; i486-pc-linux-gnu)","Mime-Version":"1.0","X-Spam-Status":"No, hits=-3.355 required=5 tests=AWL, BAYES_00,\n\tOSDL_HEADER_SUBJECT_BRACKETED","X-Spam-Checker-Version":"SpamAssassin 3.2.4-osdl_revision__1.47__","X-MIMEDefang-Filter":"lf$Revision: 1.188 $","X-Scanned-By":"MIMEDefang 2.63 on 140.211.169.13","Cc":"dbrownell@users.sourceforge.net, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tleoli@freescale.com, timur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":2598,"web_url":"http://patchwork.ozlabs.org/comment/2598/","msgid":"<20080923183129.GA19024@oksana.dev.rtsoft.ru>","date":"2008-09-23T18:31:29","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","submitter":{"id":45,"url":"http://patchwork.ozlabs.org/api/people/45/","name":"Anton Vorontsov","email":"avorontsov@ru.mvista.com"},"content":"On Fri, Sep 19, 2008 at 04:23:24PM -0700, Andrew Morton wrote:\n> On Thu, 18 Sep 2008 19:17:46 +0400\n> Anton Vorontsov <avorontsov@ru.mvista.com> wrote:\n> \n> > This patch adds support for the FHCI USB controller, as found\n> > in the Freescale MPC836x and MPC832x processors. It can support\n> > Full or Low speed modes.\n> > \n> > Quite a lot the hardware is doing by itself (SOF generation, CRC\n> > generation and checking), though scheduling and retransmission is on\n> > software's shoulders.\n> > \n> > This controller does not integrate the root hub, so this driver also\n> > fakes one-port hub. External hub is required to support more than\n> > one device.\n> >\n> > ...\n> >\n> \n> Please, no.\n\nWhat exactly 'no'? ;-)\n\n> > new file mode 100644\n> > index 0000000..23716fa\n> > --- /dev/null\n> > +++ b/drivers/usb/host/fhci-cq.c\n> > @@ -0,0 +1,105 @@\n> > +/*\n> > + * Freescale QUICC Engine USB Host Controller Driver\n> > + *\n> > + * Copyright (c) Freescale Semicondutor, Inc. 2006.\n> > + *               Shlomi Gridish <gridish@freescale.com>\n> > + *               Jerry Huang <Chang-Ming.Huang@freescale.com>\n> > + * Copyright (c) Logic Product Development, Inc. 2007\n> > + *               Peter Barada <peterb@logicpd.com>\n> > + * Copyright (c) MontaVista Software, Inc. 2008.\n> > + *               Anton Vorontsov <avorontsov@ru.mvista.com>\n> > + *\n> > + * This program is free software; you can redistribute  it and/or modify it\n> > + * under  the terms of  the GNU General  Public License as published by the\n> > + * Free Software Foundation;  either version 2 of the  License, or (at your\n> > + * option) any later version.\n> > + */\n> > +\n> > +/* circular queue structure */\n> \n> Yet another private ringbuffer implementation.  Sigh.\n\nHeh. I changed this to kfifo, though I don't quite like it,\nsince it feels heavy to hold mere pointers...\n\n[...]\n> > +++ b/drivers/usb/host/fhci-hcd.c\n> > @@ -0,0 +1,798 @@\n> > +/*\n> > + * Freescale QUICC Engine USB Host Controller Driver\n> > + *\n> > + * Copyright (c) Freescale Semicondutor, Inc. 2006.\n> > + *               Shlomi Gridish <gridish@freescale.com>\n> > + *               Jerry Huang <Chang-Ming.Huang@freescale.com>\n> > + * Copyright (c) Logic Product Development, Inc. 2007\n> > + *               Peter Barada <peterb@logicpd.com>\n> > + * Copyright (c) MontaVista Software, Inc. 2008.\n> > + *               Anton Vorontsov <avorontsov@ru.mvista.com>\n> > + *\n> > + * This program is free software; you can redistribute  it and/or modify it\n> > + * under  the terms of  the GNU General  Public License as published by the\n> > + * Free Software Foundation;  either version 2 of the  License, or (at your\n> > + * option) any later version.\n> > + */\n> > +\n> > +#if defined(CONFIG_FHCI_DEBUG) && !defined(DEBUG)\n> > +#define DEBUG\n> > +#endif\n> > +\n> > +#include <linux/module.h>\n> > +#include <linux/kernel.h>\n> > +#include <linux/delay.h>\n> > +#include <linux/errno.h>\n> > +#include <linux/list.h>\n> > +#include <linux/interrupt.h>\n> > +#include <linux/io.h>\n> > +#include <linux/usb.h>\n> > +#include <linux/of_platform.h>\n> > +#include <linux/of_gpio.h>\n> > +#include <asm/qe.h>\n> > +#include <asm/fsl_gtm.h>\n> > +#include \"../core/hcd.h\"\n> > +#include \"fhci.h\"\n> > +#include \"fhci-hub.c\"\n> > +#include \"fhci-q.c\"\n> > +#include \"fhci-dbg.c\"\n> > +#include \"fhci-mem.c\"\n> > +#include \"fhci-cq.c\"\n> > +#include \"fhci-tds.c\"\n> > +#include \"fhci-sched.c\"\n> \n> hack, gack, nack.\n> \n> We know that USB likes to prevertedly #include C files all over the\n> place, but this doesn't mean that it's a sane, tasteful or desirable\n> thing to do.\n\nHm. I fixed this, but for lengthy drivers, where we want split the\ndriver in multiple logical files, this sometimes makes sense (for\nexample, we don't need externed functions. plus gcc automatically\nmight inline some of them, etc).\n\n\nThanks!","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 1A316DE311\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 24 Sep 2008 04:31:51 +1000 (EST)","from buildserver.ru.mvista.com (unknown [85.21.88.6])\n\tby ozlabs.org (Postfix) with ESMTP id 7706BDDEF2\n\tfor <linuxppc-dev@ozlabs.org>; Wed, 24 Sep 2008 04:31:32 +1000 (EST)","from localhost (unknown [10.150.0.9])\n\tby buildserver.ru.mvista.com (Postfix) with ESMTP\n\tid C964E881A; Tue, 23 Sep 2008 23:31:29 +0500 (SAMST)"],"Date":"Tue, 23 Sep 2008 22:31:29 +0400","From":"Anton Vorontsov <avorontsov@ru.mvista.com>","To":"Andrew Morton <akpm@linux-foundation.org>","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","Message-ID":"<20080923183129.GA19024@oksana.dev.rtsoft.ru>","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\n\t<20080918151746.GC31187@oksana.dev.rtsoft.ru>\n\t<20080919162324.e354ed2f.akpm@linux-foundation.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20080919162324.e354ed2f.akpm@linux-foundation.org>","User-Agent":"Mutt/1.5.18 (2008-05-17)","Cc":"dbrownell@users.sourceforge.net, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tleoli@freescale.com, timur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","Reply-To":"avorontsov@ru.mvista.com","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":2665,"web_url":"http://patchwork.ozlabs.org/comment/2665/","msgid":"<48D96052.6090005@ru.mvista.com>","date":"2008-09-23T21:32:02","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\tHost\tController","submitter":{"id":238,"url":"http://patchwork.ozlabs.org/api/people/238/","name":"Sergei Shtylyov","email":"sshtylyov@ru.mvista.com"},"content":"Hello.\n\nAnton Vorontsov wrote:\n\n>>> This patch adds support for the FHCI USB controller, as found\n>>> in the Freescale MPC836x and MPC832x processors. It can support\n>>> Full or Low speed modes.\n>>>\n>>> Quite a lot the hardware is doing by itself (SOF generation, CRC\n>>> generation and checking), though scheduling and retransmission is on\n>>> software's shoulders.\n>>>\n>>> This controller does not integrate the root hub, so this driver also\n>>> fakes one-port hub. External hub is required to support more than\n>>> one device.\n>>>\n>>> ...\n>>>\n>>>       \n>> Please, no.\n>>     \n>\n> What exactly 'no'? ;-)\n>   \n\n   No one-port hubs I guess -- they are pointless. Though e.g. MUSB \ndriver creates one -- I guess to impersonate a transaction translating \nhigh-speed hub...\n\nWBR, Sergei","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 4085CDE0CC\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 24 Sep 2008 07:32:30 +1000 (EST)","from imap.sh.mvista.com (unknown [63.81.120.155])\n\tby ozlabs.org (Postfix) with ESMTP id D2CF8DDE00\n\tfor <linuxppc-dev@ozlabs.org>; Wed, 24 Sep 2008 07:32:14 +1000 (EST)","from [127.0.0.1] (unknown [10.150.0.9])\n\tby imap.sh.mvista.com (Postfix) with ESMTP\n\tid A69BE3ECA; Tue, 23 Sep 2008 14:32:08 -0700 (PDT)"],"Message-ID":"<48D96052.6090005@ru.mvista.com>","Date":"Wed, 24 Sep 2008 01:32:02 +0400","From":"Sergei Shtylyov <sshtylyov@ru.mvista.com>","User-Agent":"Thunderbird 2.0.0.16 (Windows/20080708)","MIME-Version":"1.0","To":"avorontsov@ru.mvista.com","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\tHost\tController","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\t<20080918151746.GC31187@oksana.dev.rtsoft.ru>\t<20080919162324.e354ed2f.akpm@linux-foundation.org>\n\t<20080923183129.GA19024@oksana.dev.rtsoft.ru>","In-Reply-To":"<20080923183129.GA19024@oksana.dev.rtsoft.ru>","Cc":"dbrownell@users.sourceforge.net, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tAndrew Morton <akpm@linux-foundation.org>, leoli@freescale.com,\n\ttimur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Transfer-Encoding":"7bit","Content-Type":"text/plain; charset=\"us-ascii\"; Format=\"flowed\"","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":2667,"web_url":"http://patchwork.ozlabs.org/comment/2667/","msgid":"<48D9612D.7060601@ru.mvista.com>","date":"2008-09-23T21:35:41","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\tHost\tController","submitter":{"id":238,"url":"http://patchwork.ozlabs.org/api/people/238/","name":"Sergei Shtylyov","email":"sshtylyov@ru.mvista.com"},"content":"Hello, I wrote:\n\n>>>> This patch adds support for the FHCI USB controller, as found\n>>>> in the Freescale MPC836x and MPC832x processors. It can support\n>>>> Full or Low speed modes.\n\n   Ah, it's not even high-speed?\n\n>>>> Quite a lot the hardware is doing by itself (SOF generation, CRC\n>>>> generation and checking), though scheduling and retransmission is on\n>>>> software's shoulders.\n\n   I imagine that must be worse than MUSB... :-/\n\n>>>> This controller does not integrate the root hub, so this driver also\n>>>> fakes one-port hub. External hub is required to support more than\n>>>> one device.\n>>>>\n>>>> ...\n>>>>\n>>>>       \n>>> Please, no.\n>>>     \n>>\n>> What exactly 'no'? ;-)\n>>   \n>\n>   No one-port hubs I guess -- they are pointless. Though e.g. MUSB \n> driver creates one -- I guess to impersonate a transaction translating \n> high-speed hub...\n>\n\n   ... then the root hub emulation is completely pointless.\n\nWBR, Sergei","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 33C49DE44A\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 24 Sep 2008 07:36:04 +1000 (EST)","from imap.sh.mvista.com (unknown [63.81.120.155])\n\tby ozlabs.org (Postfix) with ESMTP id 3A92CDDDF6\n\tfor <linuxppc-dev@ozlabs.org>; Wed, 24 Sep 2008 07:35:50 +1000 (EST)","from [127.0.0.1] (unknown [10.150.0.9])\n\tby imap.sh.mvista.com (Postfix) with ESMTP\n\tid BE4493ECE; Tue, 23 Sep 2008 14:35:46 -0700 (PDT)"],"Message-ID":"<48D9612D.7060601@ru.mvista.com>","Date":"Wed, 24 Sep 2008 01:35:41 +0400","From":"Sergei Shtylyov <sshtylyov@ru.mvista.com>","User-Agent":"Thunderbird 2.0.0.16 (Windows/20080708)","MIME-Version":"1.0","To":"avorontsov@ru.mvista.com","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\tHost\tController","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\t<20080918151746.GC31187@oksana.dev.rtsoft.ru>\t<20080919162324.e354ed2f.akpm@linux-foundation.org>\n\t<20080923183129.GA19024@oksana.dev.rtsoft.ru>\n\t<48D96052.6090005@ru.mvista.com>","In-Reply-To":"<48D96052.6090005@ru.mvista.com>","Cc":"dbrownell@users.sourceforge.net, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tAndrew Morton <akpm@linux-foundation.org>, leoli@freescale.com,\n\ttimur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Transfer-Encoding":"7bit","Content-Type":"text/plain; charset=\"us-ascii\"; Format=\"flowed\"","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":2697,"web_url":"http://patchwork.ozlabs.org/comment/2697/","msgid":"<20080923225730.GB13617@oksana.dev.rtsoft.ru>","date":"2008-09-23T22:57:30","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","submitter":{"id":45,"url":"http://patchwork.ozlabs.org/api/people/45/","name":"Anton Vorontsov","email":"avorontsov@ru.mvista.com"},"content":"On Wed, Sep 24, 2008 at 01:35:41AM +0400, Sergei Shtylyov wrote:\n[...]\n>>>>> This controller does not integrate the root hub, so this driver also\n>>>>> fakes one-port hub. External hub is required to support more than\n>>>>> one device.\n>>>>>\n>>>>> ...\n>>>>>\n>>>>>       \n>>>> Please, no.\n>>>>     \n>>>\n>>> What exactly 'no'? ;-)\n>>>   \n>>\n>>   No one-port hubs I guess -- they are pointless. Though e.g. MUSB  \n>> driver creates one -- I guess to impersonate a transaction translating  \n>> high-speed hub...\n>>\n>\n>   ... then the root hub emulation is completely pointless.\n\nIt isn't. We always should emulate the root hub. The root hub\nis part and parcel of any USB Host. Even the one-port one.","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 2380EDE136\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 24 Sep 2008 08:57:46 +1000 (EST)","from buildserver.ru.mvista.com (unknown [85.21.88.6])\n\tby ozlabs.org (Postfix) with ESMTP id 06A42DDF25\n\tfor <linuxppc-dev@ozlabs.org>; Wed, 24 Sep 2008 08:57:33 +1000 (EST)","from localhost (unknown [10.150.0.9])\n\tby buildserver.ru.mvista.com (Postfix) with ESMTP\n\tid 2B6CA882B; Wed, 24 Sep 2008 03:57:30 +0500 (SAMST)"],"Date":"Wed, 24 Sep 2008 02:57:30 +0400","From":"Anton Vorontsov <avorontsov@ru.mvista.com>","To":"Sergei Shtylyov <sshtylyov@ru.mvista.com>","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","Message-ID":"<20080923225730.GB13617@oksana.dev.rtsoft.ru>","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\n\t<20080918151746.GC31187@oksana.dev.rtsoft.ru>\n\t<20080919162324.e354ed2f.akpm@linux-foundation.org>\n\t<20080923183129.GA19024@oksana.dev.rtsoft.ru>\n\t<48D96052.6090005@ru.mvista.com> <48D9612D.7060601@ru.mvista.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<48D9612D.7060601@ru.mvista.com>","User-Agent":"Mutt/1.5.18 (2008-05-17)","Cc":"dbrownell@users.sourceforge.net, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tAndrew Morton <akpm@linux-foundation.org>, leoli@freescale.com,\n\ttimur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","Reply-To":"avorontsov@ru.mvista.com","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":2840,"web_url":"http://patchwork.ozlabs.org/comment/2840/","msgid":"<48DA1544.5010307@ru.mvista.com>","date":"2008-09-24T10:24:04","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\tHost\tController","submitter":{"id":238,"url":"http://patchwork.ozlabs.org/api/people/238/","name":"Sergei Shtylyov","email":"sshtylyov@ru.mvista.com"},"content":"Hello.\n\nAnton Vorontsov wrote:\n>>>>>> This controller does not integrate the root hub, so this driver also\n>>>>>> fakes one-port hub. External hub is required to support more than\n>>>>>> one device.\n>>>>>>\n>>>>>> ...\n>>>>>>\n>>>>>>       \n>>>>>>             \n>>>>> Please, no.\n>>>>>     \n>>>>>           \n>>>> What exactly 'no'? ;-)\n>>>>   \n>>>>         \n>>>   No one-port hubs I guess -- they are pointless. Though e.g. MUSB  \n>>> driver creates one -- I guess to impersonate a transaction translating  \n>>> high-speed hub...\n>>>\n>>>       \n>>   ... then the root hub emulation is completely pointless.\n>>     \n>\n> It isn't. We always should emulate the root hub. The root hub\n> is part and parcel of any USB Host. Even the one-port one.\n\n   Hm, maybe that's what USB core thinks (because UHCI/OHCI/EHCI all \nhave it) but e.g. MUSB doesn't have the root hub registers...\nI looked at the core and figured that USB core seems to use the root hub \ninterface for port PM, etc. and expects it to bee present, so it seems \nunavoidable indeed... :-/\n\nWBR, Sergei","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 0E744DDF9E\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 24 Sep 2008 20:24:31 +1000 (EST)","from imap.sh.mvista.com (unknown [63.81.120.155])\n\tby ozlabs.org (Postfix) with ESMTP id 7B547DDEE3\n\tfor <linuxppc-dev@ozlabs.org>; Wed, 24 Sep 2008 20:24:16 +1000 (EST)","from [127.0.0.1] (unknown [10.150.0.9])\n\tby imap.sh.mvista.com (Postfix) with ESMTP\n\tid 3219F3ED2; Wed, 24 Sep 2008 03:24:11 -0700 (PDT)"],"Message-ID":"<48DA1544.5010307@ru.mvista.com>","Date":"Wed, 24 Sep 2008 14:24:04 +0400","From":"Sergei Shtylyov <sshtylyov@ru.mvista.com>","User-Agent":"Thunderbird 2.0.0.16 (Windows/20080708)","MIME-Version":"1.0","To":"avorontsov@ru.mvista.com","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\tHost\tController","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\n\t<20080918151746.GC31187@oksana.dev.rtsoft.ru>\n\t<20080919162324.e354ed2f.akpm@linux-foundation.org>\n\t<20080923183129.GA19024@oksana.dev.rtsoft.ru>\n\t<48D96052.6090005@ru.mvista.com> <48D9612D.7060601@ru.mvista.com>\n\t<20080923225730.GB13617@oksana.dev.rtsoft.ru>","In-Reply-To":"<20080923225730.GB13617@oksana.dev.rtsoft.ru>","Cc":"dbrownell@users.sourceforge.net, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tAndrew Morton <akpm@linux-foundation.org>, leoli@freescale.com,\n\ttimur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Transfer-Encoding":"7bit","Content-Type":"text/plain; charset=\"us-ascii\"; Format=\"flowed\"","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":2846,"web_url":"http://patchwork.ozlabs.org/comment/2846/","msgid":"<48DA1B1A.8050507@ru.mvista.com>","date":"2008-09-24T10:48:58","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine\n\tUSB\tHost\tController","submitter":{"id":238,"url":"http://patchwork.ozlabs.org/api/people/238/","name":"Sergei Shtylyov","email":"sshtylyov@ru.mvista.com"},"content":"Hello, I wrote:\n\n>>>>>>> This controller does not integrate the root hub, so this driver \n>>>>>>> also\n>>>>>>> fakes one-port hub. External hub is required to support more than\n>>>>>>> one device.\n>>>>>>>\n>>>>>>> ...\n>>>>>>>\n>>>>>>>                   \n>>>>>> Please, no.\n>>>>>>               \n>>>>> What exactly 'no'? ;-)\n>>>>>           \n>>>>   No one-port hubs I guess -- they are pointless. Though e.g. MUSB  \n>>>> driver creates one -- I guess to impersonate a transaction \n>>>> translating  high-speed hub...\n>>>>\n>>>>       \n>>>   ... then the root hub emulation is completely pointless.\n>>>     \n>>\n>> It isn't. We always should emulate the root hub. The root hub\n>> is part and parcel of any USB Host. Even the one-port one.\n>\n>   Hm, maybe that's what USB core thinks (because UHCI/OHCI/EHCI all \n> have it) but e.g. MUSB doesn't have the root hub registers...\n\n   Oops, I stand corrected. Even USB 1.1 specifies that it must be a \npart the host...\n\nWBR, Sergei","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 7497FDE0C3\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 24 Sep 2008 20:49:23 +1000 (EST)","from imap.sh.mvista.com (unknown [63.81.120.155])\n\tby ozlabs.org (Postfix) with ESMTP id 6E2B7DDDFA\n\tfor <linuxppc-dev@ozlabs.org>; Wed, 24 Sep 2008 20:49:08 +1000 (EST)","from [127.0.0.1] (unknown [10.150.0.9])\n\tby imap.sh.mvista.com (Postfix) with ESMTP\n\tid C193B3ECD; Wed, 24 Sep 2008 03:49:04 -0700 (PDT)"],"Message-ID":"<48DA1B1A.8050507@ru.mvista.com>","Date":"Wed, 24 Sep 2008 14:48:58 +0400","From":"Sergei Shtylyov <sshtylyov@ru.mvista.com>","User-Agent":"Thunderbird 2.0.0.16 (Windows/20080708)","MIME-Version":"1.0","To":"avorontsov@ru.mvista.com","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine\n\tUSB\tHost\tController","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\t<20080918151746.GC31187@oksana.dev.rtsoft.ru>\t<20080919162324.e354ed2f.akpm@linux-foundation.org>\t<20080923183129.GA19024@oksana.dev.rtsoft.ru>\t<48D96052.6090005@ru.mvista.com>\n\t<48D9612D.7060601@ru.mvista.com>\t<20080923225730.GB13617@oksana.dev.rtsoft.ru>\n\t<48DA1544.5010307@ru.mvista.com>","In-Reply-To":"<48DA1544.5010307@ru.mvista.com>","Cc":"dbrownell@users.sourceforge.net, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tAndrew Morton <akpm@linux-foundation.org>, leoli@freescale.com,\n\ttimur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Transfer-Encoding":"7bit","Content-Type":"text/plain; charset=\"us-ascii\"; Format=\"flowed\"","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":3022,"web_url":"http://patchwork.ozlabs.org/comment/3022/","msgid":"<200809241159.04427.david-b@pacbell.net>","date":"2008-09-24T18:59:03","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\t=?iso-8859-1?q?Host=09Controller?=","submitter":{"id":334,"url":"http://patchwork.ozlabs.org/api/people/334/","name":"David Brownell","email":"david-b@pacbell.net"},"content":"On Wednesday 24 September 2008, Sergei Shtylyov wrote:\n> \n> >>   ... then the root hub emulation is completely pointless.\n> >>     \n> >\n> > It isn't. We always should emulate the root hub. The root hub\n> > is part and parcel of any USB Host. Even the one-port one.\n> \n>    Hm, maybe that's what USB core thinks (because UHCI/OHCI/EHCI all \n> have it) but e.g. MUSB doesn't have the root hub registers...\n\nOnly the OHCI registers have bit positions matching what the USB\nspec says for hub status bits.  Everything else, including musb_hdrc,\nhas the relevant status encoded in other bits.\n\n\n> I looked at the core and figured that USB core seems to use the root hub \n> interface for port PM, etc. and expects it to bee present, so it seems \n> unavoidable indeed... :-/\n\nOr more fundamentally:  for enumeration.  \"Unavoidable\" is correct.  ;)","headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id BC55DDE819\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 25 Sep 2008 04:59:26 +1000 (EST)","from smtp120.sbc.mail.sp1.yahoo.com (smtp120.sbc.mail.sp1.yahoo.com\n\t[69.147.64.93]) by ozlabs.org (Postfix) with SMTP id B2652DDF85\n\tfor <linuxppc-dev@ozlabs.org>; Thu, 25 Sep 2008 04:59:07 +1000 (EST)","(qmail 8989 invoked from network); 24 Sep 2008 18:59:06 -0000","from unknown (HELO pogo.local) (david-b@69.226.240.240 with plain)\n\tby smtp120.sbc.mail.sp1.yahoo.com with SMTP;\n\t24 Sep 2008 18:59:06 -0000"],"DomainKey-Signature":"a=rsa-sha1; q=dns; c=nofws; s=s1024; d=pacbell.net;\n\th=Received:X-YMail-OSG:X-Yahoo-Newman-Property:From:To:Subject:Date:User-Agent:Cc:References:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding:Content-Disposition:Message-Id;\n\tb=IW3wl+jDQ4VHiuwWnd9As30em6zOtn70/gfOOioxvh4pNYLFPRsZpkL/Y14TJ1LHFtCwfQ7YhQiUcvaGMpzZTK1cFLqbfO2Gcyn6VyZ0O67EuGbSidgNTFnT9qPThw804mhq/UmvHCb+QPadbw1+EfAuWb+4MhE232Q5dcqeSac=\n\t; ","X-YMail-OSG":"mG1n0t4VM1mqr3.ehoTAonQp_zLMtfVsORDm.iJGGtDyrVFr_48e_yZTy8o5L9d4XorzFGW7N6Gx4g4LGvuzxLjGCEolzOioykV4up0D56NuRk2a1y4cDlTldqQ7cA3HRgQ-","X-Yahoo-Newman-Property":"ymail-3","From":"David Brownell <david-b@pacbell.net>","To":"Sergei Shtylyov <sshtylyov@ru.mvista.com>","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB\n\t=?iso-8859-1?q?Host=09Controller?=","Date":"Wed, 24 Sep 2008 11:59:03 -0700","User-Agent":"KMail/1.9.9","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\n\t<20080923225730.GB13617@oksana.dev.rtsoft.ru>\n\t<48DA1544.5010307@ru.mvista.com>","In-Reply-To":"<48DA1544.5010307@ru.mvista.com>","MIME-Version":"1.0","Content-Disposition":"inline","Message-Id":"<200809241159.04427.david-b@pacbell.net>","Cc":"leoli@freescale.com, greg@kroah.com, linux-usb@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,\n\tAndrew Morton <akpm@linux-foundation.org>, timur@freescale.com","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","Content-Type":"text/plain; charset=\"iso-8859-1\"","Content-Transfer-Encoding":"quoted-printable","Sender":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org"}},{"id":3033,"web_url":"http://patchwork.ozlabs.org/comment/3033/","msgid":"<48DA9263.5060103@ru.mvista.com>","date":"2008-09-24T19:17:55","subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","submitter":{"id":238,"url":"http://patchwork.ozlabs.org/api/people/238/","name":"Sergei Shtylyov","email":"sshtylyov@ru.mvista.com"},"content":"Hello.\n\nDavid Brownell wrote:\n\n>>>>  ... then the root hub emulation is completely pointless.\n\n>>>It isn't. We always should emulate the root hub. The root hub\n>>>is part and parcel of any USB Host. Even the one-port one.\n\n>>   Hm, maybe that's what USB core thinks (because UHCI/OHCI/EHCI all \n>>have it) but e.g. MUSB doesn't have the root hub registers...\n\n> Only the OHCI registers have bit positions matching what the USB\n> spec says for hub status bits.\n\n    Oh, didn't know that.\n\n> Everything else, including musb_hdrc, has the relevant status encoded in other bits.\n\n    Yes, but I thought that if there are no multiple ports, having the hub is \njust pointless.\n\n>>I looked at the core and figured that USB core seems to use the root hub \n>>interface for port PM, etc. and expects it to bee present, so it seems \n>>unavoidable indeed... :-/\n\n> Or more fundamentally:  for enumeration.  \"Unavoidable\" is correct.  ;)\n\n    Not sure what you mean here but I guess having a root hub alows an uniform \nmodel of controlling the ports... anyway, USB specifies that it must be \npresent in the host.\n\nWBR, Sergei\n--\nTo unsubscribe from this list: send the line \"unsubscribe linux-kernel\" in\nthe body of a message to majordomo@vger.kernel.org\nMore majordomo info at  http://vger.kernel.org/majordomo-info.html\nPlease read the FAQ at  http://www.tux.org/lkml/","headers":{"Return-Path":"<linux-kernel-owner+linux-kernel=40ozlabs.org-S1754206AbYIXTRT@vger.kernel.org>","X-Original-To":"linux-kernel@ozlabs.org","Delivered-To":"linux-kernel@ozlabs.org","Received":["from vger.kernel.org (vger.kernel.org [209.132.176.167])\n\tby ozlabs.org (Postfix) with ESMTP id 97E4BDDE25\n\tfor <linux-kernel@ozlabs.org>; Thu, 25 Sep 2008 05:17:47 +1000 (EST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1754206AbYIXTRT (ORCPT <rfc822;linux-kernel@ozlabs.org>);\n\tWed, 24 Sep 2008 15:17:19 -0400","(majordomo@vger.kernel.org) by vger.kernel.org id S1752116AbYIXTQ7\n\t(ORCPT <rfc822;linux-kernel-outgoing>);\n\tWed, 24 Sep 2008 15:16:59 -0400","from h155.mvista.com ([63.81.120.155]:4899 \"EHLO\n\timap.sh.mvista.com\"\n\trhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP\n\tid S1752095AbYIXTQ6 (ORCPT <rfc822;linux-kernel@vger.kernel.org>);\n\tWed, 24 Sep 2008 15:16:58 -0400","from [192.168.1.234] (unknown [10.150.0.9])\n\tby imap.sh.mvista.com (Postfix) with ESMTP\n\tid E9E1F3ECC; Wed, 24 Sep 2008 12:16:55 -0700 (PDT)"],"Message-ID":"<48DA9263.5060103@ru.mvista.com>","Date":"Wed, 24 Sep 2008 23:17:55 +0400","From":"Sergei Shtylyov <sshtylyov@ru.mvista.com>","Organization":"MontaVista Software Inc.","User-Agent":"Mozilla/5.0 (X11; U; Linux i686; rv:1.7.2) Gecko/20040803","X-Accept-Language":"ru, en-us, en-gb","MIME-Version":"1.0","To":"David Brownell <david-b@pacbell.net>","Cc":"avorontsov@ru.mvista.com,\n\tAndrew Morton <akpm@linux-foundation.org>, greg@kroah.com,\n\tlinux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,\n\tlinuxppc-dev@ozlabs.org, leoli@freescale.com, timur@freescale.com","Subject":"Re: [PATCH 3/3] USB: driver for Freescale QUICC Engine USB Host\n\tController","References":"<20080918151659.GA20140@oksana.dev.rtsoft.ru>\n\t<20080923225730.GB13617@oksana.dev.rtsoft.ru>\n\t<48DA1544.5010307@ru.mvista.com>\n\t<200809241159.04427.david-b@pacbell.net>","In-Reply-To":"<200809241159.04427.david-b@pacbell.net>","Content-Type":"text/plain; charset=us-ascii; format=flowed","Content-Transfer-Encoding":"7bit","Sender":"linux-kernel-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<linux-kernel.vger.kernel.org>","X-Mailing-List":"linux-kernel@vger.kernel.org"}}]