bcu: add nxp board control utilities version 1.1.100

The bcu command can be used to communicate with board control hardware on
NXP EVK development boards to:

  - reset / power cycle the board into a specified boot mode.
  - monitor the power consumption.
  - read / write the eeprom content.
  - measure temperatures.
  - etc.

Supported boards are e.g.:

  - i.MX8MP-EVK
  - i.MX8DXL-EVK
  - i.MX8ULP-EVK
  - i.MX93-EVK

The tool can either be built for the target architecture to control a
board from a system running Yocto (less common) or for the host
architecture to run it via `oe-run-native bcu-native bcu`.

Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Leonard Göhrs 2024-11-01 13:40:42 +01:00 committed by Khem Raj
parent 08934d75ae
commit 1d47796fcf
No known key found for this signature in database
GPG Key ID: BB053355919D3314
2 changed files with 61 additions and 0 deletions

View File

@ -0,0 +1,38 @@
From ef1aaeee984ab13dab5d46c73e9b207cbdf62c55 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Leonard=20G=C3=B6hrs?= <l.goehrs@pengutronix.de>
Date: Wed, 20 Dec 2023 14:37:20 +0100
Subject: [PATCH] CMakeLists: do not use vendored libcurl
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [upstream ticket https://github.com/nxp-imx/bcu/issues/17]
Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de>
---
CMakeLists.txt | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3475179..bfecdb0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -17,15 +17,16 @@ pkg_check_modules(LIBFTDI REQUIRED libftdi1)
pkg_check_modules(LIBYAML REQUIRED yaml-0.1)
pkg_check_modules(LIBOPENSSL REQUIRED openssl)
pkg_check_modules(LIBUSB REQUIRED libusb-1.0)
+pkg_check_modules(LIBCURL REQUIRED libcurl)
project(bcu)
-include_directories(${LIBUSB_INCLUDE_DIRS} ${LIBFTDI_INCLUDE_DIRS}include ${PROJECT_SOURCE_DIR}/libftdi/src ${LIBYAML_INCLUDEDIR} ${PROJECT_SOURCE_DIR}/libcurl/include)
+include_directories(${LIBUSB_INCLUDE_DIRS} ${LIBFTDI_INCLUDE_DIRS}include ${LIBYAML_INCLUDEDIR})
include_directories(${PROJECT_SOURCE_DIR})
message("operation system is ${CMAKE_SYSTEM}")
if (LINUX)
add_executable(bcu bcu.c port.c chip.c board.c bcu_parser.c bcu_yaml.c bcu_https.c bcu_ftdi_eeprom.c)
link_directories(${LIBUSB_LIBRARY_DIRS} ${LIBFTDI_LIBRARY_DIRS} ${LIBYAML_LIBRARY_DIRS})
- target_link_libraries (bcu ${LIBUSB_LIBRARIES} ${LIBFTDI_LIBRARIES} ${LIBYAML_LIBRARIES} ${PROJECT_SOURCE_DIR}/libcurl/build.bcu/lib/libcurl.a -lpthread -lssl -lcrypto -lm)
+ target_link_libraries (bcu ${LIBUSB_LIBRARIES} ${LIBFTDI_LIBRARIES} ${LIBYAML_LIBRARIES} -lcurl -lpthread -lssl -lcrypto -lm)
execute_process( COMMAND ${PROJECT_SOURCE_DIR}/create_version_h.sh ${PROJECT_SOURCE_DIR}
COMMAND ${PROJECT_SOURCE_DIR}/build_libs.sh ${PROJECT_SOURCE_DIR})
install(TARGETS bcu DESTINATION bin)

View File

@ -0,0 +1,23 @@
SUMMARY = "NXP Board Control Utilities"
DESCRIPTION = "The NXP Board Control Utilities are able to control various \
features of NXP i.MX evaluation boards (EVK) from a host \
computer. \
Features like resetting the board, selecting the boot mode, \
monitoring power consumption, programming the EEPROM and others"
HOMEPAGE = "https://github.com/nxp-imx/bcu"
SECTION = "devel"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=884d48c2aa7b82e1ad4a33909fab24b6"
SRC_URI = "git://github.com/nxp-imx/bcu;protocol=https;branch=master \
file://0001-CMakeLists-do-not-use-vendored-libcurl.patch \
"
SRCREV = "c34d89b29f3d0d12793cd78b194d2f1d11728baf"
S = "${WORKDIR}/git"
DEPENDS = "curl libyaml libusb1 openssl libftdi"
inherit cmake pkgconfig
BBCLASSEXTEND = "native nativesdk"