public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Michal Nazarewicz <m.nazarewicz@samsung.com>
To: linux-usb@vger.kernel.org
Cc: David Brownell <dbrownell@users.sourceforge.net>,
	Kyungmin Park <kyungmin.park@samsung.com>,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	linux-kernel@vger.kernel.org
Subject: [PATCH/RFC 0/2] The Experimental Composite Gadget
Date: Thu, 01 Jul 2010 11:17:41 +0200	[thread overview]
Message-ID: <cover.1277972135.git.mina86@mina86.com> (raw)

Hello,

The following two patches add an “Experimental Composite Gadget”
which is “Multifunction Composite Gadget” with FunctionFS and an
“Install Mode”.


An “Install Mode” is a mode where just after the device is connected
it reports as a mass storage device (single configuration, single
interface) with first logical unit being an removable CD-ROM.

The idea is that the logical unit provides a disk image with drivers
for the main device.  This way no additional data storage is needed
to make the device operational with hosts (i.e. no CD-ROM with
drivers needed).

When an eject is issued on the first logical unit the device switches
to a normal mode with all the other functionalities.  When device is
disconnected and connected again it switches back to the install
mode.


The switching is done by calling usb_composite_unregister() followed
by usb_composite_register().  The same approach is used in the
FunctionFS Gadget included in the kernel.

This is the main point I'd like to discuss.  What would be the best
way of switching device's configuration?

The best would be if it were possible to “reregister” the usb
composite device which would once again call the bind function.

Does that make sense?  Should I go and implement such a call to the
composite device?

-- 
Best regards,                                        _     _
| Humble Liege of Serenely Enlightened Majesty of  o' \,=./ `o
| Computer Science,  Michał "mina86" Nazarewicz       (o o)
+----[mina86*mina86.com]---[mina86*jabber.org]----ooO--(_)--Ooo--

             reply	other threads:[~2010-07-01  9:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-01  9:17 Michal Nazarewicz [this message]
2010-07-01  9:17 ` [PATCH/RFC 1/2] USB: gadget: f_mass_storage: split fsg_common_init() into two phases Michal Nazarewicz
2010-07-01  9:17   ` [PATCH/RFC 2/2] USB: gadget: g_experimantal: Experimental Composite Gadget Michal Nazarewicz

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=cover.1277972135.git.mina86@mina86.com \
    --to=m.nazarewicz@samsung.com \
    --cc=dbrownell@users.sourceforge.net \
    --cc=kyungmin.park@samsung.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    /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