How to configure USB OTG as power supply
Related: How to get more than 100mA from a USB port

Do you have a way to force USB hardware into host mode (not OTG)? I see some kernel code here (with register bit definitions here)

/*
* Wait for the musb to set as A device to enable the
* VBUS
*/
while (musb_readb(musb-&gt;mregs, MUSB_DEVCTL) &amp;
         MUSB_DEVCTL_BDEVICE) {

    mdelay(5);
    cpu_relax();

    if (time_after(jiffies, timeout)
          || loops-- &lt;= 0) {
        dev_err(musb-&gt;controller,
        "configured as A device timeout");
        break;
    }
}


This is just a guess, but if you can force the controller into host mode, it might clear the BDEVICE bit in DEVCTL. The OTG spec allows a minimum of 1.1 seconds and a maximum of 30 seconds for a B device to connect before the host is allowed to turn off. I don't think plain USB includes this behavior.

If that doesn't work, you'll probably have to go through enumeration. This will require a controller IC. FTDI's programmable USB converter chips will probably do the job.