Annotation of wikisrc/ports/evbarm/beaglebone.mdwn, revision 1.12

1.10      wiki        1: [[!meta title="NetBSD/evbarm on BeagleBone and BeagleBone Black"]]
1.1       jakllsch    2: 
1.3       wiki        3: [[images/beaglebone.jpg]]
                      4: 
1.9       wiki        5: This page attempts to document and coordinate efforts towards NetBSD on [BeagleBone](http://beagleboard.org/bone) and [BeagleBone Black](http://beagleboard.org/black).
1.1       jakllsch    6: 
1.3       wiki        7: (BeagleBone [image](http://www.flickr.com/photos/sparkfun/8267577194/) by SparkFun Electronics used under CC-By-2.0 license)
                      8: 
1.1       jakllsch    9: # What works
                     10:  - Boots multi-user on [[!template id=man name="ld" section="4"]] @ [[!template id=man name="sdmmc" section="4"]] root and [[!template id=man name="com" section="4"]] console.
1.2       jakllsch   11:  - Ethernet ([[!template id=man name="cpsw" section="4" arch="evbarm"]])
1.11      wiki       12:  - SD/MMC controller (SD card and eMMC)
1.9       wiki       13:  - EDMA3 (for [[!template id=man name="sdhc" section="4"]])
                     14:  - USB (host)
                     15:  - I²C
                     16:  - CPU frequency scaling (various speeds between 300MHz and 1GHz)
1.12    ! wiki       17:  - Random number generator [[!template id=man name="trng" section="4"]]
1.1       jakllsch   18: 
                     19: # What needs work
                     20:  - SPI
                     21:  - GPIO
1.11      wiki       22:  - eMMC 8-bit mode
1.1       jakllsch   23:  - Framebuffer/graphics with LCD or DVI/HDMI capes
                     24:  - Touchscreens on LCD capes
                     25:  - USB (device)
                     26: 
                     27: # Sample dmesg
                     28: [[!template id=filecontent name="dmesg" text="""
1.9       wiki       29: NetBSD 7.99.9 (BEAGLEBONE) #2: Tue Apr 14 20:24:09 ADT 2015
                     30:         Jared@Jared-PC:/cygdrive/d/netbsd/src/sys/arch/evbarm/compile/obj/BEAGLEBONE
                     31: total memory = 512 MB
                     32: avail memory = 503 MB
                     33: sysctl_createv: sysctl_create(machine_arch) returned 17
1.1       jakllsch   34: timecounter: Timecounters tick every 10.000 msec
                     35: mainbus0 (root)
1.9       wiki       36: cpu0 at mainbus0 core 0: 550 MHz Cortex-A8 r3p2 (Cortex V7A core)
1.1       jakllsch   37: cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled
                     38: cpu0: isar: [0]=0x101111 [1]=0x13112111 [2]=0x21232031 [3]=0x11112131, [4]=0x11142, [5]=0
                     39: cpu0: mmfr: [0]=0x1100003 [1]=0x20000000 [2]=0x1202000 [3]=0x211
                     40: cpu0: pfr: [0]=0x1131 [1]=0x11
1.9       wiki       41: cpu0: 32KB/64B 4-way L1 VIPT Instruction cache
                     42: cpu0: 32KB/64B 4-way write-back-locking-C L1 PIPT Data cache
                     43: cpu0: 256KB/64B 8-way write-through L2 PIPT Unified cache
                     44: vfp0 at cpu0: NEON MPE (VFP 3.0+), rounding, NaN propagation, denormals
                     45: vfp0: mvfr: [0]=0x11110222 [1]=0x11111
1.1       jakllsch   46: obio0 at mainbus0 base 0x44000000-0x4fffffff: On-Board IO
                     47: omapicu0 at obio0 addr 0x48200000-0x48200fff intrbase 0
                     48: prcm0 at obio0 addr 0x44e00000-0x44e01fff: Power, Reset and Clock Management
1.9       wiki       49: sitaracm0 at obio0 addr 0x44e10000-0x44e11fff: control module, rev 1.0
                     50: edma0 at obio0 addr 0x49000000-0x490fffff intrbase 12
                     51: gpmc0 at mainbus0 base 0x50000000: General Purpose Memory Controller, rev 6.0
1.1       jakllsch   52: gpmc0: CS#0 valid, addr 0x08000000, size 256MB
                     53: com0 at obio0 addr 0x44e09000-0x44e09fff intr 72: ns16550a, working fifo
                     54: com0: console
1.9       wiki       55: sdhc0 at obio0 addr 0x48060100-0x48060fff intr 64: SDHC controller (EDMA)
1.1       jakllsch   56: sdhc0: SD Host Specification 2.0, rev.49
1.9       wiki       57: sdhc0: using DMA transfer
1.1       jakllsch   58: sdmmc0 at sdhc0 slot 0
1.9       wiki       59: sdhc1 at obio0 addr 0x481d8100-0x481d8fff intr 28: SDHC controller (EDMA)
                     60: sdhc1: SD Host Specification 2.0, rev.49
                     61: sdhc1: using DMA transfer
                     62: sdmmc1 at sdhc1 slot 0
                     63: tiiic0 at obio0 addr 0x44e0b000-0x44e0bfff intr 70: rev 0.11
                     64: iic0 at tiiic0: I2C bus
                     65: seeprom0 at iic0 addr 0x50: AT24Cxx or compatible EEPROM: size 32768
                     66: tps65217pmic0 at iic0 addr 0x24: TPS65217C Power Management Multi-Channel IC (rev 1.2)
                     67: tps65217pmic0: power sources USB max 1300 mA, [AC] max 2500 mA
                     68: tps65217pmic0: [LDO1: 1800 mV] [LDO2: 3300 mV] [LDO3: 1800 mV] [LDO4: 3300 mV] [DCDC1: 1500 mV] [DCDC2: 1325 mV] [DCDC3: 1100 mV]
1.1       jakllsch   69: omapdmtimer0 at obio0 addr 0x48040000-0x48040fff intr 68: DMTIMER2
                     70: omapdmtimer1 at obio0 addr 0x44e31000-0x44e31fff intr 67: DMTIMER1ms
                     71: omapdmtimer2 at obio0 addr 0x48044000-0x48044fff intr 92: DMTIMER4
                     72: omapwdt32k0 at obio0 addr 0x44e35000-0x44e35fff: rev 0.1
1.9       wiki       73: tiotg0 at obio0 addr 0x47400000-0x47404fff intrbase 17: TI dual-port USB controller: version v1.0.0.13
                     74: motg0 at tiotg0 port 0: 0x4ea20800 version v0.0.0
                     75: motg1 at tiotg0 port 1: 0x4ea20800 version v0.0.0
                     76: motg1: Dynamic FIFO sizing detected, assuming 16Kbytes of FIFO RAM
                     77: usb0 at motg1: USB revision 2.0
                     78: cpsw0 at obio0 addr 0x4a100000-0x4a107fff intrbase 40: TI CPSW Ethernet
                     79: cpsw0: Ethernet address 90:59:af:5c:d0:94
                     80: ukphy0 at cpsw0 phy 0: OUI 0x00800f, model 0x000f, rev. 1
                     81: ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
1.1       jakllsch   82: timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
                     83: timecounter: Timecounter "dmtimer" frequency 24000000 Hz quality 100
1.9       wiki       84: uhub0 at usb0: Mentor Graphics MOTG root hub, class 9/0, rev 1.00/1.00, addr 1
                     85: uhub0: 1 port with 1 removable, self powered
                     86: sdmmc0: couldn't enable card: 60
                     87: ld1 at sdmmc1: <0xfe:0x014e:MMC02G:0x00:0x1aee3308:0x000>
                     88: ld1: 1832 MB, 930 cyl, 64 head, 63 sec, 512 bytes/sect x 3751936 sectors
                     89: ld1: 4-bit width, bus clock 52.000 MHz
                     90: boot device: ld1
                     91: root on ld1a dumps on ld1b
                     92: root file system type: ffs
                     93: kern.module.path=/stand/evbarm/7.99.9/modules
1.1       jakllsch   94: """]]
1.4       mspo       95: 
                     96: 
                     97:  - Growing the root file-system
                     98:    - During the partitioning process, do not delete or format the
1.7       wiki       99:      first MSDOS (FAT) partition, as this is what your firmware by default boots from
                    100:      (unless you have prepared a boot partition on other media).
1.8       wiki      101:    - For accident-free operation of resize_ffs, the filesystem it is supposed to grow needs to be either not mounted or at least not mounted for writing.
                    102:      To do that for a root filesystem, reboot to single user, and at the prompt to enter the pathname of shell, press
1.4       mspo      103:            return for the default (/bin/sh).
                    104:    - At the # prompt, type
                    105: 
                    106:         "disklabel -i ld0" and press return.
                    107:    - At the partition> prompt type "A" and press return.
                    108: 
                    109:            Adjust disklabel sector from 4194304 to 62333952 [n]?
                    110:            Type "y" and press return.
                    111:    - partition> prompt type "a" and press return.
                    112: 
                    113:            Filesystem type prompt, press return to use the current value (4.2BSD).
                    114:            Start offset prompt, press return to use the current value.
                    115:            Partition size prompt, type "$" and press return to grow the
                    116:            partition to use all available free space.
                    117:    - partition> prompt type "W" to save the changes to the disklabel.
                    118: 
                    119:            Confirm this choice by typing "y" at the Label disk prompt.
                    120:            Type "Q" and press return to quit disklabel.
                    121:    - At the # prompt (shell), type
                    122: 
                    123:            fsck -fy /dev/rld0a
                    124:            resize_ffs -y /dev/rld0a
                    125:    - This may take a few minutes, be patient!
                    126: 
                    127:            fsck -fy /dev/rld0a
                    128:            mount_msdos /dev/ld0e /boot
                    129:            reboot
                    130:     - When the system comes back up, the root file-system will have been expanded to
                    131:            fill the SD card.

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb