svn commit: r323641 - head/sys/arm/allwinner (BananapiM3 [an A83T] and USB: BPI-M3 historically had usb nodes listed in ofwdump -a)

Mark Millard markmi at dsl-only.net
Sun Sep 17 18:50:54 UTC 2017


> Author: manu
> Date: Sat Sep 16 15:58:20 2017
> New Revision: 323641
> URL: 
> https://svnweb.freebsd.org/changeset/base/323641
> 
> 
> Log:
>   Allwinner usb phy: Rework resource allocation
>   
> . . .
>   
>   While here remove A83T code as upstream and FreeBSD dts don't have
>   nodes for USB.
>   
> . . .
>   
>   EHCI is still buggy on Pine64 (hang the board) so do not enable it for now.
>   
>   Tested On:	Bananapi (A20), BananapiM2 (A31S), OrangePi One (H3) Pine64 (A64)

I have a BPI-M3 (A83T based) that has not been updated
since head -r317015M. It has the root file system on a
USB SSD for how I normally boot it. The ubldr and
ubldr.bin go back to 2016-Oct-24 or before (file
system date).

sysutils/u-boot-sinovoip-bpi-m3/files/ has not
been updated since then. Nor has the distinfo
or pkg-descr files. The Makefile has had only
one change since then:

Revision 430454 - (view) (download) (annotate) - [select for diffs] 
Modified Tue Jan 3 11:01:05 2017 UTC (8 months, 1 week ago) by mat 
File length: 1369 byte(s) 
Diff to previous 419007
Cleanup BROKEN/IGNORE for 10.3-

Sponsored by:	Absolight



The BPI-M3 has usb nodes show in ofwdump. . .

# uname -apKU
FreeBSD bpim3 12.0-CURRENT FreeBSD 12.0-CURRENT  r317015M  arm armv6 1200028 1200028

ofwdump -a shows usb nodes:

Node 0x38: 
. . .
  Node 0x19e0: soc
   . . .
    Node 0x1e80: pinctrl at 01c20800
      . . .
      Node 0x21f0: usb0_vbus_pin at 0
      Node 0x2270: usb1_vbus_pin at 0
      Node 0x22f4: usb2_vbus_pin at 0
      . . .
    Node 0x32ec: phy at 01c19400
    Node 0x3458: usb at 01c1a000
    Node 0x3550: usb at 01c1b000
. . .
  Node 0x39fc: usb0-vbus
  Node 0x3ae8: usb1-vbus
  Node 0x3bdc: usb2-vbus

More fully (followed by usb specific
ofwdump -p listings):

# ofwdump -a
Node 0x38: 
  Node 0xcc: chosen
  Node 0x108: aliases
  Node 0x13c: memory
  Node 0x174: cpus
    Node 0x1a0: cpu at 0
    Node 0x248: cpu at 1
    Node 0x294: cpu at 2
    Node 0x2e0: cpu at 3
    Node 0x32c: cpu at 100
    Node 0x3d4: cpu at 101
    Node 0x420: cpu at 102
    Node 0x46c: cpu at 103
  Node 0x4bc: timer
  Node 0x524: clocks
    Node 0x55c: osc24M_clk
    Node 0x5dc: osc16M_clk
    Node 0x65c: osc16Md512_clk
    Node 0x70c: clk at 01c20028
    Node 0x7b8: pll6d2_clk
    Node 0x860: clk at 01c20054
    Node 0x918: apb1_clk at 01c20054
    Node 0x9c8: clk at 01c20058
    Node 0xa80: clk at 01c2005c
    Node 0xb2c: clk at 01c20060
    Node 0xe18: clk at 01c20088
    Node 0xedc: clk at 01c2008c
    Node 0xfa0: clk at 01c20090
    Node 0x1064: clk at 01f01400
    Node 0x111c: ahb0_clk
    Node 0x11c4: clk at 01f0140c
    Node 0x1270: clk at 01f01428
    Node 0x1384: clk at 01c20000
    Node 0x1438: clk at 01c20004
    Node 0x14ec: c0clk at 01c20050
    Node 0x159c: c1clk at 01c20050
    Node 0x164c: clk at 01c20044
    Node 0x16fc: clk at 01c200cc
    Node 0x180c: clk at 1
    Node 0x188c: clk at 2
    Node 0x190c: clk at 01c00030
  Node 0x19e0: soc
    Node 0x1a2c: mmc at 01c0f000
    Node 0x1bcc: mmc at 01c10000
    Node 0x1d00: mmc at 01c11000
    Node 0x1e80: pinctrl at 01c20800
      Node 0x1f74: mmc0 at 0
      Node 0x1ffc: mmc0_cd_pin at 0
      Node 0x2078: uart0 at 0
      Node 0x20f0: uart0 at 1
      Node 0x216c: ahci_pwr_pin at 0
      Node 0x21f0: usb0_vbus_pin at 0
      Node 0x2270: usb1_vbus_pin at 0
      Node 0x22f4: usb2_vbus_pin at 0
      Node 0x2374: mmc2_8bit
      Node 0x241c: emac_rgmii at 0
      Node 0x24e0: i2c0 at 0
      Node 0x2558: i2c1 at 0
      Node 0x25d0: i2c2 at 0
    Node 0x264c: reset at 01c202c0
    Node 0x26d4: reset at 01c202d0
    Node 0x275c: reset at 01c202d8
    Node 0x27e4: timer at 01c20c00
    Node 0x286c: watchdog at 01c20ca0
    Node 0x28e8: serial at 01c28000
    Node 0x29ec: interrupt-controller at 01c81000
    Node 0x2ac8: reset at 01f014b0
    Node 0x2b50: pinctrl at 01f02c00
      Node 0x2c40: r_rsb
    Node 0x2cbc: i2c at 01f03400
      Node 0x2dd0: pmic at 3a3
        Node 0x2e6c: regulators
          Node 0x2e7c: dcdc2
          Node 0x2ec0: dcdc3
    Node 0x2f10: interrupt-controller at 01f00c0c
    Node 0x2fc8: i2c at 01c2ac00
    Node 0x30d4: i2c at 01c2b000
    Node 0x31e0: i2c at 01c2b400
    Node 0x32ec: phy at 01c19400
    Node 0x3458: usb at 01c1a000
    Node 0x3550: usb at 01c1b000
    Node 0x3648: ethernet at 01c30000
      Node 0x37b4: ethernet-phy at 1
    Node 0x3800: eeprom at 01c14000
    Node 0x3874: rtp at 01f04000
  Node 0x3910: ahci-5v
  Node 0x39fc: usb0-vbus
  Node 0x3ae8: usb1-vbus
  Node 0x3bdc: usb2-vbus
  Node 0x3cd4: vcc3v0
  Node 0x3d54: vcc3v3
  Node 0x3dd4: vcc5v0
  Node 0x3e54: pmu
  Node 0x3ed0: leds
    Node 0x3ef4: green_led
    Node 0x3f34: blue_led
  Node 0x3f78: __symbols__

# ofwdump -p /soc/pinctrl at 01c20800/usb0_vbus_pin at 0
Node 0x21f0: usb0_vbus_pin at 0
  allwinner,pins:
    50 42 39 00 
    'PB9'
  allwinner,function:
    67 70 69 6f 5f 6f 75 74 00 
    'gpio_out'
  allwinner,drive:
    00 00 00 00 
  allwinner,pull:
    00 00 00 00 
  linux,phandle:
    00 00 00 32 
  phandle:
    00 00 00 32 

# ofwdump -p /soc/pinctrl at 01c20800/usb1_vbus_pin at 0
Node 0x2270: usb1_vbus_pin at 0
  allwinner,pins:
    50 44 32 34 00 
    'PD24'
  allwinner,function:
    67 70 69 6f 5f 6f 75 74 00 
    'gpio_out'
  allwinner,drive:
    00 00 00 00 
  allwinner,pull:
    00 00 00 00 
  linux,phandle:
    00 00 00 33 
  phandle:
    00 00 00 33 

# ofwdump -p /soc/pinctrl at 01c20800/usb2_vbus_pin at 0
Node 0x22f4: usb2_vbus_pin at 0
  allwinner,pins:
    50 48 33 00 
    'PH3'
  allwinner,function:
    67 70 69 6f 5f 6f 75 74 00 
    'gpio_out'
  allwinner,drive:
    00 00 00 00 
  allwinner,pull:
    00 00 00 00 
  linux,phandle:
    00 00 00 34 
  phandle:
    00 00 00 34 

# ofwdump -p /soc/phy at 01c19400
Node 0x32ec: phy at 01c19400
  compatible:
    61 6c 6c 77 69 6e 6e 65 72 2c 73 75 6e 38 69 2d 61 38 33 74 
    2d 75 73 62 2d 70 68 79 00 
    'allwinner,sun8i-a83t-usb-phy'
  reg:
    01 c1 94 00 00 00 00 2c 01 c1 a8 00 00 00 00 04 01 c1 b8 00 
    00 00 00 04 
  clocks:
    00 00 00 2b 00 00 00 08 00 00 00 2b 00 00 00 09 00 00 00 2b 
    00 00 00 0a 00 00 00 2b 00 00 00 0b 
  clock-names:
    75 73 62 30 5f 70 68 79 00 75 73 62 31 5f 70 68 79 00 68 73 
    69 63 5f 70 6c 6c 00 68 73 69 63 5f 31 32 6d 00 
  resets:
    00 00 00 2b 00 00 00 00 00 00 00 2b 00 00 00 01 00 00 00 2b 
    00 00 00 02 
  reset-names:
    75 73 62 30 5f 72 65 73 65 74 00 75 73 62 31 5f 72 65 73 65 
    74 00 75 73 62 32 5f 72 65 73 65 74 00 
  status:
    6f 6b 61 79 00 
    'okay'
  #phy-cells:
    00 00 00 01 
  usb1_vbus-supply:
    00 00 00 2c 
  linux,phandle:
    00 00 00 2d 
  phandle:
    00 00 00 2d 

# ofwdump -p /soc/usb at 01c1a000
Node 0x3458: usb at 01c1a000
  compatible:
    61 6c 6c 77 69 6e 6e 65 72 2c 73 75 6e 38 69 2d 61 38 33 74 
    2d 65 68 63 69 00 67 65 6e 65 72 69 63 2d 65 68 63 69 00 
  reg:
    01 c1 a0 00 00 00 01 00 
  interrupts:
    00 00 00 00 00 00 00 48 00 00 00 04 
  clocks:
    00 00 00 17 00 00 00 1a 
  resets:
    00 00 00 19 00 00 00 1a 
  phys:
    00 00 00 2d 00 00 00 01 
  phy-names:
    75 73 62 00 
    'usb'
  status:
    6f 6b 61 79 00 
    'okay'
  linux,phandle:
    00 00 00 41 
  phandle:
    00 00 00 41 

# ofwdump -p /soc/usb at 01c1b000
Node 0x3550: usb at 01c1b000
  compatible:
    61 6c 6c 77 69 6e 6e 65 72 2c 73 75 6e 38 69 2d 61 38 33 74 
    2d 65 68 63 69 00 67 65 6e 65 72 69 63 2d 65 68 63 69 00 
  reg:
    01 c1 b0 00 00 00 01 00 
  interrupts:
    00 00 00 00 00 00 00 4a 00 00 00 04 
  clocks:
    00 00 00 17 00 00 00 1b 
  resets:
    00 00 00 19 00 00 00 1b 
  phys:
    00 00 00 2d 00 00 00 02 
  phy-names:
    75 73 62 00 
    'usb'
  status:
    6f 6b 61 79 00 
    'okay'
  linux,phandle:
    00 00 00 42 
  phandle:
    00 00 00 42 

# ofwdump -p /usb0-vbus
Node 0x39fc: usb0-vbus
  compatible:
    72 65 67 75 6c 61 74 6f 72 2d 66 69 78 65 64 00 
    'regulator-fixed'
  pinctrl-names:
    64 65 66 61 75 6c 74 00 
    'default'
  pinctrl-0:
    00 00 00 32 
  regulator-name:
    75 73 62 30 2d 76 62 75 73 00 
    'usb0-vbus'
  regulator-min-microvolt:
    00 4c 4b 40 
  regulator-max-microvolt:
    00 4c 4b 40 
  enable-active-high:
  gpio:
    00 00 00 1d 00 00 00 01 00 00 00 09 00 00 00 00 
  status:
    64 69 73 61 62 6c 65 64 00 
    'disabled'
  linux,phandle:
    00 00 00 47 
  phandle:
    00 00 00 47 

# ofwdump -p /usb1-vbus
Node 0x3ae8: usb1-vbus
  compatible:
    72 65 67 75 6c 61 74 6f 72 2d 66 69 78 65 64 00 
    'regulator-fixed'
  pinctrl-names:
    64 65 66 61 75 6c 74 00 
    'default'
  pinctrl-0:
    00 00 00 33 
  regulator-name:
    75 73 62 31 2d 76 62 75 73 00 
    'usb1-vbus'
  regulator-min-microvolt:
    00 4c 4b 40 
  regulator-max-microvolt:
    00 4c 4b 40 
  regulator-boot-on:
  enable-active-high:
  gpio:
    00 00 00 1d 00 00 00 03 00 00 00 18 00 00 00 00 
  status:
    6f 6b 61 79 00 
    'okay'
  linux,phandle:
    00 00 00 2c 
  phandle:
    00 00 00 2c 

# ofwdump -p /usb2-vbus
Node 0x3bdc: usb2-vbus
  compatible:
    72 65 67 75 6c 61 74 6f 72 2d 66 69 78 65 64 00 
    'regulator-fixed'
  pinctrl-names:
    64 65 66 61 75 6c 74 00 
    'default'
  pinctrl-0:
    00 00 00 34 
  regulator-name:
    75 73 62 32 2d 76 62 75 73 00 
    'usb2-vbus'
  regulator-min-microvolt:
    00 4c 4b 40 
  regulator-max-microvolt:
    00 4c 4b 40 
  regulator-boot-on:
  enable-active-high:
  gpio:
    00 00 00 1d 00 00 00 07 00 00 00 03 00 00 00 00 
  status:
    64 69 73 61 62 6c 65 64 00 
    'disabled'
  linux,phandle:
    00 00 00 48 
  phandle:
    00 00 00 48 



===
Mark Millard
markmi at dsl-only.net



More information about the svn-src-head mailing list