[meta-ti] musb_hdrc driver and "Qualcomm, Inc. Gobi Wireless Modem"

Leo Meza leo.e.meza at gmail.com
Tue Sep 18 09:52:13 PDT 2018


Denys (or anyone),

Can you recommend a Distory (Poky?) and target (core-image-sato?) that I
can use to make this a more reproducible issue? I suppose that might be
more desirable than using my custom distro. I'm not sure witch Poky
distro/target would be best suitable for getting my USB modem to work.

Thanks again,
Leo

On Fri, Sep 14, 2018 at 10:34 AM Leo Meza <leo.e.meza at gmail.com> wrote:

> SystemD
>
> mydistro.conf
> ----------------------------
> DISTRO = "mydistro"
> DISTRO_NAME = "My Distro (Linux Distro for me)"
> DISTRO_VERSION = "0.0.1"
> DISTRO_CODENAME = "plzwork"
>
> MAINTAINER = "me <me at aol.com>"
>
> DISTRO_FEATURES = " \
>     ext2 \
>     largefile \
>     systemd \
>     ${DISTRO_FEATURES_LIBC} \
> "
> VIRTUAL-RUNTIME_dev_manager = "udev"
> VIRTUAL-RUNTIME_init_manager = "systemd"
> VIRTUAL-RUNTIME_initscripts = "systemd-compat-units"
> DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"
>
> mylayer.conf (almost identical to am335x-evm.conf)
> ----------------------------
> require conf/machine/include/ti33x.inc
> ...
> MACHINE_FEATURES_remove += " alsa vfat"
> ...
> MACHINE_EXTRA_RDEPENDS = "kernel-modules"
>
>
> Again, when I power up this is what prints to the terminal:
>
> -------------------------------------------------------------------------------
> U-Boot SPL 2018.01-......
> ...
> Starting kernel...
> <lots of messages>
> ...
> My Distro (Linux Distro for me) 0.0.1 target ttyS0
>
> target login: [   11.597569] usbcore: registered new interface driver usbfs
> [   11.597619] usbcore: registered new interface driver hub
> [   11.625583] usbcore: registered new device driver usb
> [   11.761603] am335x-phy-driver 47401b00.usb-phy: 47401b00.usb-phy supply
> vcc not found, using dummy regulator
> [   11.813980] pruss 4a300000.pruss: creating PRU cores and other child
> platform devices
> [   11.868211] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
> [   11.916108] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus
> number 1
> [   11.973481] hub 1-0:1.0: USB hub found
> [   11.989178] remoteproc remoteproc1: 4a334000.pru is available
> [   12.005276] hub 1-0:1.0: 1 port detected
> [   12.040483] pru-rproc 4a334000.pru: PRU rproc node
> /ocp/pruss_soc_bus at 4a326004/pruss at 0/pru at 34000 probed successfully
> [   12.071947] remoteproc remoteproc2: 4a338000.pru is available
> [   12.077818] pru-rproc 4a338000.pru: PRU rproc node
> /ocp/pruss_soc_bus at 4a326004/pruss at 0/pru at 38000 probed successfully
> [   12.440276] usb 1-1: new high-speed USB device number 2 using musb-hdrc
>
> It hangs right here until I press enter. Seems like this is where the
> usbcore should be registering the cdc_wdm and qmi_wwan drivers.
>
> Thanks again,
> Leo
>
>
> On Thu, Sep 13, 2018 at 6:17 PM Denys Dmytriyenko <denys at ti.com> wrote:
>
>> On Thu, Sep 13, 2018 at 01:05:17PM -0700, Leo Meza wrote:
>> > I'm trying to get my target to recognize a USB-connected 4G LTE modem on
>> > powerup....
>> >
>> > My target is a beaglebone black (AM335x) using meta-ti "rocko" branch
>> and
>>
>> What's your distro and specifically, what init system and device
>> management?
>> I.e. SysVinit, udev, systemd, etc.
>>
>> --
>> Denys
>>
>>
>> > I've added a kernel config fragment with the following:
>> > CONFIG_USB_NET_QMI_WWAN=m
>> >
>> > My distro.conf file removes the usbgadget and usbhost features:
>> > MACHINE_FEATURES_remove += " alsa usbgadget usbhost vfat"
>> >
>> > So far, when I power up the target, it looks as though the musb-hdrc
>> driver
>> > is attaching to the USB Modem:
>> > [   15.467735] usbcore: registered new interface driver usbfs
>> > [   15.475891] am335x-phy-driver 47401300.usb-phy: 47401300.usb-phy
>> supply
>> > vcc not found, using dummy regulator
>> > [   15.483431] am335x-phy-driver 47401b00.usb-phy: 47401b00.usb-phy
>> supply
>> > vcc not found, using dummy regulator
>> > [   15.625497] pruss 4a300000.pruss: creating PRU cores and other child
>> > platform devices
>> > [   15.639846] usbcore: registered new interface driver hub
>> > [   15.718440] usbcore: registered new device driver usb
>> > [   15.831900] remoteproc remoteproc1: 4a334000.pru is available
>> > [   15.837767] pru-rproc 4a334000.pru: PRU rproc node
>> > /ocp/pruss_soc_bus at 4a326004/pruss at 0/pru at 34000 probed successfully
>> > [   15.867980] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
>> > [   15.868016] musb-hdrc musb-hdrc.1: new USB bus registered, assigned
>> bus
>> > number 1
>> > [   15.883041] hub 1-0:1.0: USB hub found
>> > [   15.883105] hub 1-0:1.0: 1 port detected
>> > [   15.961998] remoteproc remoteproc2: 4a338000.pru is available
>> > [   15.967859] pru-rproc 4a338000.pru: PRU rproc node
>> > /ocp/pruss_soc_bus at 4a326004/pruss at 0/pru at 38000 probed successfully
>> > [   16.320431] usb 1-1: new high-speed USB device number 2 using
>> musb-hdrc
>> > [   53.040523] random: crng init done
>> > [   53.044007] random: 7 urandom warning(s) missed due to ratelimiting
>> >
>> > When I use "lsusb" I see this, and I'm unable to use the modem:
>> > Bus 001 Device 002: ID 05c6:9008 Qualcomm, Inc. Gobi Wireless Modem (QDL
>> > mode)
>> >
>> > LSMOD shows this:
>> > root at target:~# lsmod
>> > Module                  Size  Used by
>> > pru_rproc              20480  0
>> > musb_dsps              20480  0
>> > pruss_intc             16384  1 pru_rproc
>> > musb_hdrc              98304  1 musb_dsps
>> > udc_core               28672  1 musb_hdrc
>> > pruss                  16384  1 pru_rproc
>> > phy_am335x             16384  2
>> > usbcore               204800  1 musb_hdrc
>> > phy_generic            16384  1 phy_am335x
>> > usb_common             16384  5
>> > phy_am335x,udc_core,musb_hdrc,musb_dsps,usbcore
>> > phy_am335x_control     16384  1 phy_am335x
>> > pm33xx                 16384  0
>> > snd_soc_simple_card    16384  0
>> > snd_soc_simple_card_utils    16384  1 snd_soc_simple_card
>> > wkup_m3_rproc          16384  1
>> > wkup_m3_ipc            16384  1 pm33xx
>> > remoteproc             40960  3 pru_rproc,wkup_m3_rproc,wkup_m3_ipc
>> > omap_aes_driver        24576  0
>> > crypto_engine          16384  1 omap_aes_driver
>> > omap_crypto            16384  1 omap_aes_driver
>> > omap_sham              28672  0
>> > ti_emif_sram           16384  1 pm33xx
>> > pruss_soc_bus          16384  0
>> > rtc_omap               20480  2
>> > musb_am335x            16384  0
>> > omap_wdt               16384  0
>> > at24                   16384  0
>> > sch_fq_codel           20480  1
>> >
>> > However, if I don't plug in the device until AFTER the system boots and
>> I
>> > login, then I see the cdc_wdm driver is gets registered and the cdc-wdm0
>> > device is created:
>> >
>> > root at target:~# [   60.630559] usb 1-1: new high-speed USB device
>> number 2
>> > using musb-hdrc
>> > [   60.993246] usbcore: registered new interface driver cdc_wdm
>> > [   61.013436] qmi_wwan 1-1:1.2: cdc-wdm0: USB WDM device
>> > [   61.038279] qmi_wwan 1-1:1.2 wwan0: register 'qmi_wwan' at
>> > usb-musb-hdrc.1-1, WWAN/QMI device, be:ce:e7:34:15:d8
>> > [   61.059967] usbcore: registered new interface driver qmi_wwan
>> >
>> > LSUSB shows me this, and I'm able to use the modem:
>> >
>> > root at target:~# lsusb
>> > Bus 001 Device 002: ID 1bc7:1040 Telit Wireless Solutions
>> >
>> > LSMOD shows this:
>> >
>> > root at target:~# lsmod
>> > Module                  Size  Used by
>> > qmi_wwan               28672  0
>> > cdc_wdm                20480  1 qmi_wwan
>> > usbnet                 32768  1 qmi_wwan
>> > pru_rproc              20480  0
>> > pruss_intc             16384  1 pru_rproc
>> > pruss                  16384  1 pru_rproc
>> > musb_dsps              20480  0
>> > musb_hdrc              98304  1 musb_dsps
>> > udc_core               28672  1 musb_hdrc
>> > usbcore               204800  4 usbnet,qmi_wwan,cdc_wdm,musb_hdrc
>> > phy_am335x             1[   78.790878] random: crng init done
>> > [   78.799335] random: 7 urandom warning(s) missed due to ratelimiting
>> > 6384  2
>> > phy_generic            16384  1 phy_am335x
>> > usb_common             16384  5
>> > phy_am335x,udc_core,musb_hdrc,musb_dsps,usbcore
>> > phy_am335x_control     16384  1 phy_am335x
>> > pm33xx                 16384  0
>> > snd_soc_simple_card    16384  0
>> > snd_soc_simple_card_utils    16384  1 snd_soc_simple_card
>> > wkup_m3_ipc            16384  1 pm33xx
>> > wkup_m3_rproc          16384  1
>> > remoteproc             40960  3 pru_rproc,wkup_m3_rproc,wkup_m3_ipc
>> > omap_aes_driver        24576  0
>> > crypto_engine          16384  1 omap_aes_driver
>> > omap_crypto            16384  1 omap_aes_driver
>> > omap_sham              28672  0
>> > pruss_soc_bus          16384  0
>> > ti_emif_sram           16384  1 pm33xx
>> > rtc_omap               20480  2
>> > at24                   16384  0
>> > omap_wdt               16384  0
>> > musb_am335x            16384  0
>> > sch_fq_codel           20480  1
>> >
>> > And pointers on how I can get the drivers (cdc_wdm, qmi_wwan, etc)
>> setup so
>> > the USB modem is recognized at powerup instead of having to plug in the
>> > device after powerup would be greatly appreciated.
>> >
>> > Thanks in advance!
>> > -Leo
>>
>> > --
>> > _______________________________________________
>> > meta-ti mailing list
>> > meta-ti at yoctoproject.org
>> > https://lists.yoctoproject.org/listinfo/meta-ti
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-ti/attachments/20180918/ced18717/attachment-0001.html>


More information about the meta-ti mailing list