On 2013-10-18 10:36, Koen Kooi wrote:
Op 18 okt. 2013, om 09:27 heeft Ulf Samuelsson <angstrom-...@emagii.com> het 
volgende geschreven:

I have built the cloud9-gnome-image configured for "beaglebone"
using the master branch of Angstrom and loaded it on a Beaglebone Black.
The Beaglebone Black has a 5V/2A power supply.

The USB hotplugging seems to not work.
Know bug, pester TI to fix it.
When I remove something from the beaglebone USB host connector I get:

musb_stage0_irq 790: unhandled DISCONNECT transition (a_idle)


What I can see from the code, is that there is only one way to enter OTG_STATE_A_IDLE-

    - if you get an interrupt and the MUSB_INTR_SESSREQ flag is set
      Then this mode is set:
        musb->xceiv->state = OTG_STATE_A_IDLE;

       AFAIK, I.E, it is now an idle OTG peripheral (not a host)

Havent looked through everything yet, but I am yet to find a place where
you exit this state.

If the driver is in this state, then basically every event gets ignored.
In musb_core.c there is no place where

    switch(musb->xceiv->state)
    has a
    case  OTG_STATE_A_IDLE: ...

There is a  CONFIG_USB_GADGET_MUSB_HDRC which is clear,
If this means that the HDRC can work in OTG mode switching between host and device, and the CONFIG item is unchecked, then you should never be in a peripheral state, right?

The symptom occur when the driver handles a disconnect interrupt.

It falls through to the default, and you get the error

    if ((int_usb & MUSB_INTR_DISCONNECT) && !musb->ignore_disconnect) {
        DEV_DBG(musb->controller, "DISCONNECT (%s) as %s, devctl %02x\n",
                otg_state_string(musb->xceiv->state),
                MUSB_MODE(musb), devctl);
        handled = IRQ_HANDLED;

        switch (musb->xceiv->state) {
        case OTG_STATE_A_HOST:
        case OTG_STATE_A_SUSPEND:
            usb_hcd_resume_root_hub(musb_to_hcd(musb));
            musb_root_disconnect(musb);
            if (musb->a_wait_bcon != 0)
                musb_platform_try_idle(musb, jiffies
                    + msecs_to_jiffies(musb->a_wait_bcon));
            break;
        case OTG_STATE_B_HOST:
            /* REVISIT this behaves for "real disconnect"
             * cases; make sure the other transitions from
             * from B_HOST act right too.  The B_HOST code
             * in hnp_stop() is currently not used...
             */
            musb_root_disconnect(musb);
            musb_to_hcd(musb)->self.is_b_host = 0;
            musb->xceiv->state = OTG_STATE_B_PERIPHERAL;
            MUSB_DEV_MODE(musb);
            musb_g_disconnect(musb);
            break;
        case OTG_STATE_A_PERIPHERAL:
            musb_hnp_stop(musb);
            musb_root_disconnect(musb);
            /* FALLTHROUGH */
        case OTG_STATE_B_WAIT_ACON:
            /* FALLTHROUGH */
        case OTG_STATE_B_PERIPHERAL:
        case OTG_STATE_B_IDLE:
            musb_g_disconnect(musb);
            break;
        default:
            WARNING("(%s) unhandled DISCONNECT transition\n",
                otg_state_string(musb->xceiv->state));
            break;
        }
    }




If I boot without a USB-serial converter and plug it in afterwards, I do not 
get a new tty.
If I boot with the USB-serial converter inserted, I get /dev/ttyUSB0.
If I then remove the USB-serial converter /dev/ttyUSB0 remains.

Using the default defconfig in meta-beagleboard which seems to enable 
everything USB related.

Anyone seen this?
Is it correct to use the "beaglebone", or is "beagleboard" better?
Which is the most stable branch for the Beaglebone Black?
Whatever the setup-scripts use as default is the most stable and feature rich 
config. The machine for beaglebone white and black is 'beaglebone'.

regards,

Koen
_______________________________________________
Angstrom-distro-devel mailing list
Angstrom-distro-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel


_______________________________________________
Angstrom-distro-devel mailing list
Angstrom-distro-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel

Reply via email to