[u-boot-test-hooks][PATCH] labgrid: sage: Add BeagleBone Black
Tom Rini
trini at konsulko.com
Thu Dec 25 17:14:36 CET 2025
This adds support for a BeagleBone Black board, which is supported under the
am335x_evm configuration.
Signed-off-by: Tom Rini <trini at konsulko.com>
---
For the moment, this uses snmpset to manage power on the board. The relevant
changes have been submitted upstream, but rather than use a local wheel (which
is doable but complicated for all custodian repositories) we go with this option
instead for now.
---
bin/sage/conf.am335x_evm | 24 +++++++++
bin/sage/labgrid-sage-env.yaml | 37 +++++++++++++
py/sage/u_boot_boardenv_am335x_evm.py | 76 +++++++++++++++++++++++++++
3 files changed, 137 insertions(+)
create mode 100644 bin/sage/conf.am335x_evm
create mode 100644 py/sage/u_boot_boardenv_am335x_evm.py
diff --git a/bin/sage/conf.am335x_evm b/bin/sage/conf.am335x_evm
new file mode 100644
index 0000000..6c84f12
--- /dev/null
+++ b/bin/sage/conf.am335x_evm
@@ -0,0 +1,24 @@
+# Copyright (c) 2025 Konsulko Group. All rights reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+# DEALINGS IN THE SOFTWARE.
+
+console_impl=labgrid-trini
+reset_impl=labgrid-trini
+flash_impl=labgrid-trini.sd-mux
+flash_writer=labgrid-trini.ti-omap_mount
diff --git a/bin/sage/labgrid-sage-env.yaml b/bin/sage/labgrid-sage-env.yaml
index 97363be..9fc8b98 100644
--- a/bin/sage/labgrid-sage-env.yaml
+++ b/bin/sage/labgrid-sage-env.yaml
@@ -100,6 +100,32 @@ targets:
autoboot: 'Hit any key to stop autoboot'
strategy:
cls: UBootStrategy
+ bbb-1:
+ resources:
+ RemotePlace:
+ name: bbb-1
+ drivers:
+ power:
+ cls: ExternalPowerDriver
+ cmd_on: 'snmpset -v 2c -c private 192.168.1.254 .1.3.6.1.4.1.1718.3.2.3.1.11.1.1.9 i 1'
+ cmd_off: 'snmpset -v 2c -c private 192.168.1.254 .1.3.6.1.4.1.1718.3.2.3.1.11.1.1.9 i 2'
+ mux:
+ cls: USBSDWireDriver
+ storage:
+ cls: USBStorageDriver
+ serial:
+ cls: SerialDriver
+ shell:
+ cls: ShellDriver
+ prompt: 'root at .*:~# '
+ login_prompt: 'login: '
+ username: 'root'
+ uboot:
+ cls: UBootDriver
+ prompt: 'U-Boot> '
+ autoboot: 'Hit any key to stop autoboot'
+ strategy:
+ cls: UBootStrategy
sage-exporter-rpi3-1:
resources:
RemotePlace:
@@ -136,3 +162,14 @@ targets:
cls: NetworkPowerDriver
ssh:
cls: SSHDriver
+ sage-exporter-bbb-1:
+ resources:
+ RemotePlace:
+ name: sage-exporter-bbb-1
+ drivers:
+ power:
+ cls: ExternalPowerDriver
+ cmd_on: 'snmpset -v 2c -c private 192.168.1.254 .1.3.6.1.4.1.1718.3.2.3.1.11.1.1.13 i 1'
+ cmd_off: 'snmpset -v 2c -c private 192.168.1.254 .1.3.6.1.4.1.1718.3.2.3.1.11.1.1.13 i 2'
+ ssh:
+ cls: SSHDriver
diff --git a/py/sage/u_boot_boardenv_am335x_evm.py b/py/sage/u_boot_boardenv_am335x_evm.py
new file mode 100644
index 0000000..cbd5590
--- /dev/null
+++ b/py/sage/u_boot_boardenv_am335x_evm.py
@@ -0,0 +1,76 @@
+# Copyright (c) 2025 Konsulko Group. All rights reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+# DEALINGS IN THE SOFTWARE.
+
+env__net_dhcp_server = True
+
+env__net_tftp_readable_file = {
+ "fn": "1MiBtest.bin",
+ "size": 1048576,
+ "crc32": "2fa737e0",
+}
+
+env__efi_loader_helloworld_file = {
+ 'fn': 'EFI/arm/helloworld.efi',
+ 'size': 2320,
+ 'addr': 0x82000000,
+ 'crc32': 'e37e06d4',
+}
+env__efi_helloworld_net_http_test_skip = False
+
+env__efi_loader_grub_file = {
+ 'fn': 'EFI/arm/grubarm.efi',
+ 'size': 471040,
+ 'addr': 0x82000000,
+ 'crc32': '4a84b065',
+}
+
+# No console output from Linux
+#env__tftp_boot_test_skip = False
+#
+#env__net_tftp_bootable_file = {
+# 'fn': 'v6.13/image.fit.arm',
+# 'addr': 0x82000000,
+# 'size': 22348800,
+# 'crc32': 'cecdd6f1',
+# 'pattern': 'Booting Linux on physical CPU',
+#}
+
+# Details regarding a file that may be read from a TFTP server. This variable
+# may be omitted or set to None if PXE testing is not possible or desired.
+env__net_pxe_bootable_file = {
+ 'fn': 'default',
+ 'addr': 0x82000000,
+ 'size': 64,
+ 'timeout': 50000,
+ 'pattern': 'Linux',
+ 'valid_label': '1',
+ 'invalid_label': '2',
+ 'exp_str_invalid': 'Skipping install for failure retrieving',
+ 'local_label': '3',
+ 'exp_str_local': 'missing environment variable: localcmd',
+ 'empty_label': '4',
+ 'exp_str_empty': 'No kernel given, skipping boot',
+}
+
+# False or omitted if a PXE boot test should be tested.
+# If PXE boot testing is not possible or desired, set this variable to True.
+
+# For example: If pxe configuration file is not proper to boot
+env__pxe_boot_test_skip = False
--
2.39.2
More information about the U-Boot
mailing list