Skip to content

Commit 3ccd503

Browse files
committed
docs(linux): Add initial documentation for BeagleBadge
Add an initial 'How to guide' for BeagleBadge board supported in Debian in Arago distributions. Signed-off-by: Judith Mendez <[email protected]>
1 parent 52b997e commit 3ccd503

File tree

4 files changed

+159
-1
lines changed

4 files changed

+159
-1
lines changed

configs/AM62LX/AM62LX_linux_toc.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ linux/How_to_Guides/Target/How_to_emmc_boot
123123
linux/How_to_Guides/Target/How_to_mmcsd_boot_emmc_uda
124124
linux/How_to_Guides/Target/How_To_Enable_M2CC3301_in_linux
125125
linux/How_to_Guides/Target/Runtime_debug_unlock_on_secure_device
126+
linux/How_to_Guides/Target/How_to_BeagleBadge_getting_started
126127
linux/How_to_Guides/FAQ/How_to_Check_Device_Tree_Info
127128
linux/How_to_Guides/FAQ/How_to_Integrate_Open_Source_Software
128129
linux/How_to_Guides_Hardware_Setup_with_CCS

source/debian/Building_Debian_Image.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,8 @@ For a list of boards and branches supported by each SoC, refer:
121121
AM62-LP,sk-am62-lp,``config/boards/sk-am62-lp.conf``,"vendor, vendor-rt, vendor-edge, edge"
122122
AM62SIP,sk-am62-sip,``config/boards/sk-am62-sip.conf``,"vendor, vendor-rt, vendor-edge, edge"
123123
AM62Lx,tmds62levm,``config/boards/tmds62levm.conf``,"vendor, vendor-rt, vendor-edge"
124+
AM62Lx,beaglebadge,``config/boards/beaglebadge.conf``,"vendor-edge"
124125
AM62Px,sk-am62p,``config/boards/sk-am62p.conf``,"vendor, vendor-rt, vendor-edge, edge"
125126
AM64x,sk-am64b,``config/boards/sk-am64b.conf``,"vendor, vendor-rt, vendor-edge, edge"
126127

127-
128128
``output/images/`` stores the built images. These images have a ``.img`` extension.
Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
===========================
2+
BeagleBadge Getting Started
3+
===========================
4+
5+
Overview
6+
========
7+
8+
The BeagleBadge is a compact development platform from BeagleBoard.org powered by the TI AM62L SoC.
9+
Designed for portable and low-power applications, it features built-in Wi-Fi and Bluetooth, multiple
10+
low power modes, and an integrated fuel gauge for precise battery power monitoring.
11+
12+
The board provides a rich interface including an e-paper connector, DSI connector, Grove expansion,
13+
seven-segment displays, and an RGB LED. Fully supported in TI releases, the BeagleBadge offers flexible
14+
boot options (OSPI, UART, SD, USB-DFU) and runs Zephyr OS or Linux via Debian or Arago, making it an
15+
ideal open source solution for modern IoT and HMI projects.
16+
17+
Supported Operating System
18+
==========================
19+
20+
- Linux : https://github.com/TexasInstruments/ti-linux-kernel branch: ti-linux-6.12.y
21+
- Zephyr : https://github.com/glneo/zephyr branch: openamp-am62x-sk-m4
22+
23+
Supported Distributions
24+
=======================
25+
26+
- Debian: https://github.com/TexasInstruments/armbian-build.git branch: 2025.12-beaglebadge
27+
- Arago: https://github.com/TexasInstruments/meta-tisdk branch: scarthgap
28+
29+
Low level sources
30+
=================
31+
32+
- TI Linux: :file:`arch/arm64/boot/dts/til3-am62l3-beaglebadge.dts`
33+
- TI U-boot: :file:`configs/am62lx_beaglebadge_defconfig`
34+
35+
Building for BeagleBadge
36+
========================
37+
38+
Debian:
39+
40+
.. code-block:: console
41+
42+
$ sudo apt-get install docker.io qemu-user-static binfmt-support
43+
$ git clone https://github.com/TexasInstruments/armbian-build.git
44+
$ cd armbian-build
45+
$ git checkout 2025.12-beaglebadge
46+
$ ./compile.sh build BOARD=beaglebadge BRANCH=vendor-edge BUILD_MINIMAL=yes KERNEL_CONFIGURE=no RELEASE=trixie GIT_SKIP_SUBMODULES=yes SKIP_ARMBIAN_REPO=yes
47+
48+
For more information go Debian Building Images documentation.
49+
50+
.. note::
51+
52+
Armbian: Due to the limited 128MB size of LPDDR on BeagleBadge, SystemD services have
53+
been trimmed down to reduce memory footprint.
54+
55+
Arago:
56+
57+
.. code-block:: console
58+
59+
$ git clone https://git.ti.com/git/arago-project/oe-layersetup.git tisdk
60+
$ cd tisdk
61+
$ ./oe-layertool-setup.sh -f configs/arago-scarthgap-config.txt
62+
$ cd build
63+
$ . conf/setenv
64+
$ export MACHINE=beaglebadge-ti
65+
$ ARAGO_SYSVINIT=1 bitbake -k tisdk-tiny-image
66+
67+
For more information go :ref:`here <building-the-sdk-with-yocto>`
68+
69+
.. note::
70+
71+
Yocto: Due to the limited 128MB size of LPDDR on BeagleBadge, only the *tisdk-tiny-image*
72+
can boot on BeagleBadge. Switching to SystemV for init system instead of SystemD will reduce
73+
the memory footprint since more system services will be enabled by default with SystemD.
74+
75+
Booting BeagleBadge
76+
===================
77+
78+
In the following instructions, assume /dev/ttyUSB0 is the serial port enumerated
79+
on host machine from BeagleBadge USB C connection.
80+
81+
SD boot:
82+
1. Flash SD card with Debian or Arago image
83+
2. Insert Micro SD card
84+
3. Press & hold Select until step 4
85+
4. Connect USB C cable
86+
5. Connect to /dev/ttyUSB0 on host machine
87+
88+
OSPI boot:
89+
1. Boot via SD boot and stop at u-boot prompt
90+
2. Flash OSPI
91+
92+
.. code-block:: console
93+
94+
=> fatload mmc 1 ${loadaddr} tiboot3.bin
95+
221296 bytes read in 11 ms (19.2 MiB/s)
96+
=> print filesize
97+
filesize=36070
98+
=> sf probe
99+
SF: Detected is25wx256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB
100+
=> sf erase 0 40000
101+
SF: 262144 bytes @ 0x0 Erased: OK
102+
=> sf write ${loadaddr} 0 36070
103+
device 0 offset 0x0, size 0x36070
104+
SF: 221296 bytes @ 0x0 Written: OK
105+
=> fatload mmc 1 ${loadaddr} tispl.bin
106+
1464080 bytes read in 62 ms (22.5 MiB/s)
107+
=> print filesize
108+
filesize=165710
109+
=> sf probe
110+
SF: Detected is25wx256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB
111+
=> sf erase 0x80000 180000
112+
SF: 1572864 bytes @ 0x80000 Erased: OK
113+
=> sf write ${loadaddr} 0x80000 165710
114+
device 0 offset 0x80000, size 0x165710
115+
SF: 1464080 bytes @ 0x80000 Written: OK
116+
=> fatload mmc 1 ${loadaddr} u-boot.img
117+
1314747 bytes read in 57 ms (22 MiB/s)
118+
=> print filesize
119+
filesize=140fbb
120+
=> sf probe
121+
SF: Detected is25wx256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB
122+
=> sf erase 0x280000 180000
123+
SF: 1572864 bytes @ 0x280000 Erased: OK
124+
=> sf write ${loadaddr} 0x280000 140fbb
125+
device 0 offset 0x280000, size 0x140fbb
126+
SF: 1314747 bytes @ 0x280000 Written: OK
127+
128+
3. Reset the board (S1 RST)
129+
130+
UART boot:
131+
1. Connect USB C cable
132+
2. Connect to /dev/ttyUSB0 on host machine
133+
3. Run the following instructions on host machine:
134+
135+
.. code-block:: console
136+
137+
$ sb --xmodem tiboot3.bin > /dev/ttyUSB0 < /dev/ttyUSB0
138+
$ sb --xmodem tispl.bin > /dev/ttyUSB0 < /dev/ttyUSB0
139+
$ sb --ymodem u-boot.img > /dev/ttyUSB0 < /dev/ttyUSB0
140+
141+
USB-DFU boot:
142+
1. Press & hold Select until step 4
143+
2. Connect USB C cable
144+
3. Connect to /dev/ttyUSB0 on host machine
145+
4. Send bootloader binaries from host MACHINE
146+
147+
.. code-block:: console
148+
149+
$ sudo -E -S dfu-util -R -a bootloader -D tiboot3.bin
150+
$ sudo -E -S dfu-util -R -a bootloader -D tispl.bin
151+
$ sudo -E -S dfu-util -R -a u-boot.img -D u-boot.img
152+
153+
Any of the above boot methods can be used to boot to u-boot prompt,
154+
from here, loading the rootfs is generic and can be loaded from SD
155+
card, OSPI flash, or USB DFU as is discussed in other sections of this
156+
documentation.

source/linux/How_to_Guides_Developer_Notes.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ Developer Notes
3535
How_to_Guides/Target/How_to_enable_SSC_for_DSS
3636
How_to_Guides/Target/How_to_boot_quickly
3737
How_to_Guides/Target/Runtime_debug_unlock_on_secure_device
38+
How_to_Guides/Target/How_to_BeagleBadge_getting_started
3839
How_to_Guides/FAQ/How_to_Verify_Ipc_Linux_R5
3940
How_to_Guides/FAQ/How_to_Configure_MSMC_memory
4041
How_to_Guides/FAQ/How_to_Check_Device_Tree_Info

0 commit comments

Comments
 (0)