« ET/IoT2017に出展します! | トップページ | ET2017 1日目 »

2017.11.14

U-BootがUSBに対応していた

U-BootがUSBに対応していたようです。

Trenz製のTE0720用にビルドしたU-Bootで、usb startコマンドとusb infoコマンドでUSBの情報が見えることを確認しました。

ただし、TE0720はボード上のCPLDがUSB PHYのリセットを行っているようで、FSBLにパッチを当ててI2CでCPLDと通信して、PHYのリセットを解除しなければならないようです。

時間がないので、とりあえず画像とログだけ記録します。

Ubootusb

起動時のログ

Last login: Thu Jan  1 00:00:15 UTC 1970 on tty1

 Device IDCODE ->        23727093
 Revision ->     2
 Device ->       7 (7z020)

SoM: TE0720-01-2E  F SC REV:02
MAC: 00 ** ** ** ** **


U-Boot 2017.01-00013-g3290b10-dirty (Nov 14 2017 - 23:06:05 +0900)

Model: Zynq Cosmo-Z Mini Development Board
Board: Xilinx Zynq
I2C:   ready
DRAM:  ECC disabled 1 GiB
MMC:   sdhci@e0100000: 0 (SD)
SF: Detected w25q256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB
*** Warning - bad CRC, using default environment

In:    serial@e0000000
Out:   serial@e0000000
Err:   serial@e0000000
Model: Zynq Cosmo-Z Mini Development Board
Board: Xilinx Zynq
Net:   ZYNQ GEM: e000b000, phyaddr 7, interface rgmii-id
eth0: ethernet@e000b000
reading uEnv.txt
115 bytes read in 37 ms (2.9 KiB/s)
Importing environment from SD ...
Hit any key to stop autoboot:  0
Zynq> usb start
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 3 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Zynq> usb info
1: Hub,  USB Revision 2.0
 - u-boot EHCI Host Controller
 - Class: Hub
 - PacketSize: 64  Configurations: 1
 - Vendor: 0x0000  Product 0x0000 Version 1.0
   Configuration: 1
   - Interfaces: 1 Self Powered 0mA
     Interface: 0
     - Alternate Setting 0, Endpoints: 1
     - Class Hub
     - Endpoint 1 In Interrupt MaxPacket 8 Interval 255ms

2: Hub,  USB Revision 2.0
 - Class: Hub
 - PacketSize: 64  Configurations: 1
 - Vendor: 0x0424  Product 0x9514 Version 2.0
   Configuration: 1
   - Interfaces: 1 Self Powered Remote Wakeup 2mA
     Interface: 0
     - Alternate Setting 0, Endpoints: 1
     - Class Hub
     - Endpoint 1 In Interrupt MaxPacket 1 Interval 12ms
     - Endpoint 1 In Interrupt MaxPacket 1 Interval 12ms

3: Vendor specific,  USB Revision 2.0
 - Class: Vendor specific
 - PacketSize: 64  Configurations: 1
 - Vendor: 0x0424  Product 0xec00 Version 2.0
   Configuration: 1
   - Interfaces: 1 Self Powered Remote Wakeup 2mA
     Interface: 0
     - Alternate Setting 0, Endpoints: 3
     - Class Vendor specific
     - Endpoint 1 In Bulk MaxPacket 512
     - Endpoint 2 Out Bulk MaxPacket 512
     - Endpoint 3 In Interrupt MaxPacket 16 Interval 4ms

Zynq>

なお、MITOUJTAGのバウンダリスキャンで見てみると、U-Bootでusb startとやったときにはMIO35番付近が動き出してUSBのPHYにアクセスしていたのですが、Linuxが起動し始めるとMIOが停止してしまいます。

Ubootusb2

まだ何かやらねばならないことがあるのでしょう。

|

« ET/IoT2017に出展します! | トップページ | ET2017 1日目 »

コメント

コメントを書く



(ウェブ上には掲載しません)




« ET/IoT2017に出展します! | トップページ | ET2017 1日目 »