NXP S32G2开发

2023-05-16

https://blog.csdn.net/bigzhizhi/article/details/123069235

导言
Linux BSP是一组源代码,可用于为受支持的板卡创建U-Boot引导加载程序、Linux内核映像、根文件系统和可选的ARM Trusted Firmware(TF-A)映像

    U-Boot Bootloader(引导加载程序)
    Linux BSP包含以下U-Boot引导加载程序二进制文件:
    auto_linux_bsp30.0/<板>/u-boot-<板>.s32
    此引导加载程序支持:
    SD/MMC/eMMC (u-boot-.s32) 和 QSPI (u-boot-.s32)
    其中u-boot.s32.qspi是按照“构建u-boot引导加载程序”一节中的步骤生成的。
    Linux Kernel Imag(内核映像)
    包含一个基于Linux v5.10.41的预编译内核映像。 内核映像和dtb文件位于以下路径:
    auto_linux_bsp30.0_/<板>
    Root File Syste(根文件系统)
    包含以下rootfs文件系统:
    binaries_auto_linux_bsp27.0_//fsl-image-[auto/base/flash]-.tar.gz。
    这个tar. gz文件系统包括NXP库,其内容可以装载为NFS共享,也可以存储在安全数字(SD)卡等引导媒体上。

提示:以下是本篇文章正文内容
一、Linux BSP 30.0 User Manual for S32G

这个Linux BSP是使用Yocto 3.2"Gatesgarth"发行版中包含的gcc 10.2.0 for ARM64 cross-compiler交叉编译器构建和测试的。
下面描述的所有步骤都已在Ubuntu-18.04 LTS(本机或通过虚拟机)上运行和验证。 建议安装Ubuntu-18. 04 LTS,然后再进行以下部分。
1. 开发环境准备
1.1. 安装Ubuntu-18.04 LTS

镜像地址(清华源): ubuntu-18.04.6-desktop-amd64.iso
启动盘制作

dd命令制作

sudo fdisk -l
sudo umount /dev/sdb
sudo mkfs.vfat /dev/sdb -I
sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb bs=4M
sudo dd if=~/Downloads/ubuntu-18.04-desktop-amd64.iso of=/dev/sdb status=progress

另一种方法:
通过活动搜索栏打开启动盘创建器(Startup Disk Creator)
1.2. 安装依赖

更新包管理器:sudo apt-get update

Python 2.x - 2.6 或更高版本:sudo apt-get install python

git 1.8.3 或更高版本:sudo apt-get install git

  curl:sudo apt-get install curl

安装repo

sudo apt install repo

另外一种方法(推荐)

mkdir ~/bin
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo
chmod a+x ~/bin/repo
export PATH=~/bin:$PATH
source ~/.bashrc

1.3. 下载源码

    Yocto Project Environment:
    配置默认REPO_URL(可以添加到 ~/.bashrc 文件末尾)

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'

mkdir fsl-auto-yocto-bsp
cd fsl-auto-yocto-bsp
repo init -u https://source.codeaurora.org/external/autobsps32/auto_yocto_bsp -b release/bsp30.0 --repo-url='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'
repo sync

    U-Boot bootloader source code

git clone https://source.codeaurora.org/external/autobsps32/u-boot -b release/bsp30.0-2020.04

    Linux kernel source code

git clone https://source.codeaurora.org/external/autobsps32/linux -b release/bsp30.0-5.10.41-rt

    ARM Trusted Firmware(TF-A)

git clone https://source.codeaurora.org/external/autobsps32/arm-trusted-firmware

    optee_os component of OP-TEE

git clone https://source.codeaurora.org/external/autobsps32/optee_os -b bsp30.0-3.11

2. 知识储备及学习路线
2.1. repo及manifest格式

参考文章: https://www.jianshu.com/p/d40444267e8d
2.2. yocto

官方文档: https://docs.yoctoproject.org
实用技巧: https://www.kancloud.cn/digest/yocto/138623
3. 构建
3.1. BSP Ubuntu构建

在构建 Ubuntu 目标映像的情况下,此版本包括对版本 18.04.5 LTS 和 20.04.1 LTS 的支持。
要构建 Linux BSP,请按照以下步骤操作:

    首次设置
    设置免密权限以执行sudo apt-get

echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

./sources/meta-alb/scripts/host-prepare.sh

    创建构建目录并测试安装

source nxp-setup-alb.sh -m <machine>ubuntu

例如,对于S32G274A RDB2,machine为 s32g274ardb2ubuntu:

source nxp-setup-alb.sh -m s32g274ardb2ubuntu -d /home/ae/nxp/downloads -c /home/ae/nxp/sstate-cache-ubuntu

echo -e "UBUNTU_TARGET_VERSION = \"18.04.5\"\nDL_DIR ?= \"~/Downloads/yocto_downloads\"" >> conf/local.conf

    bitbake <imagename>

bitbake fsl-image-ubuntu-base

这将完全构建U-Boot,kernel内核,modules模块,TF-A(可选)和 rootfs 以用于部署。可以在/tmp/deploy/images/目录中找到生成结果。
此版本包括对以下各项的支持:

    machine:

s32g274aevbubuntu, s32g274ardb2ubuntu, s32g254aevbubuntu,s32g233aevbubuntu;

    Images:

fsl-image-ubuntu-base,  fsl-image-ubuntu, fsl-image-ubuntu-ros.

对于 Ubuntu 映像,默认情况下 Ubuntu 目标版本为 20.04.1。
对于 Ubuntu-18.04 映像目标,请在 /conf/local.conf 中添加以下行:

UBUNTU_TARGET_VERSION = "18.04.5"

然后运行 bitbake ,其中 是上面指定的任何受支持的 Ubuntu 映像。
部署 Ubuntu 映像并启动平台后,请使用以下凭据登录:

    user: bluebox
    password: bluebox

3.2. TF-A-Enabled映像

通过编辑/conf/local.conf 并追加以下行来部署:

DISTRO_FEATURES_append += "atf"

3.3 支持 OP TEE 的映像

通过编辑/conf/local.conf 并附加以下行来部署:

DISTRO_FEATURES_append += "optee"

3.4 支持 Xen 虚拟机管理程序的映像

通过将以下行附加到/conf/local.conf来启用:

DISTRO_FEATURES_append += "xen"
原文链接:https://blog.csdn.net/bigzhizhi/article/details/123069235

更多信息:https://www.mouser.cn/new/nxp-semiconductors/nxp-s32g-reference-design-2/ 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NXP S32G2开发 的相关文章

  • 激光雷达和相机感知融合简介

    本文介绍激光雷达和相机融合的两种方法 xff1a 前融合 xff1a 融合原始数据 xff08 点云和像素 目标框 xff09 后融合 xff1a 融合目标框 前融合 前融合一般指融合原始数据 xff0c 最容易 最普遍的方式是将点云投影到
  • 聚焦芯片:GPU,CPU,SOC,DSP,FPGA,ASIC,MCU,MPU,GPP,ECU等都是什么?

    先上部分概念 xff1a CPU xff1a 中央处理器 xff08 Central Processing Unit xff09 是一块超大规模的集成电路 xff0c 是一台计算机的运算核心 xff08 Core xff09 和控制核心 x
  • 怎么样实现车辆信息安全

    1 车载IDS 正成为持续网络安全保护的核心要素 持续的网络信息安全风险管理正成为VTA的要求 通过IDS车载入侵检测可以为整个车队提供信息安全保护 但是 xff0c 分布式IDS的指导原则是什么 xff1f 为了满足UNECE WP29法
  • SOA通信架构和SOME/IP-SD的主要功能

    1 SOA面向服务的通信交互 如上图所示 xff0c 女神去热水澡堂洗澡 xff0c 想搓背 xff08 find服务 xff09 xff0c 于是她付要付搓背钱给澡堂老板 xff0c 这时澡堂老板知道通过小王和小明的毛遂自荐 xff08
  • OTA升级的实现原理

    一 简介 1 1 概念 OTA xff1a Over the Air Technology xff0c 即空中下载技术 OTA升级 xff1a 通过OTA方式实现固件或软件的升级 只要是通过无线通信方式实现升级的 xff0c 都可以叫OTA
  • 为什么特斯拉自动驾驶汽车不需要激光雷达

    光 糖果Autosar 2022 02 14 08 08 特斯拉仪表板 打造全自动驾驶汽车所需的技术堆栈是什么 xff1f 公司和研究人员对该问题的答案存在分歧 自动驾驶的方法范围从相机和计算机视觉到计算机视觉和高级传感器的组合 特斯拉一直
  • 架构与中台

    做架构工作最重要的是练好内功 什么是内功 xff1f 大局观 认知层次 xff0c 思维方式 xff0c 方法论 概念抽象能力等等都属于内功 零件设计主外 xff0c 架构设计主内 零件设计五花八门 xff0c 紧随新技术新热点 架构设计苦
  • UDS服务简易教程

    本文主要以简单易懂的描述向大家介绍CAN诊断基础知识 xff0c 本文主要介绍CAN诊断中UDS服务的基本内容 xff0c 主要参考文件ISO15765 2 ISO15765 3 ISO14229 1 xff0c 读完本篇文章后希望进一步了

随机推荐

  • 五万字读懂c++

    const作用 修饰变量 xff0c 说明该变量不可以被改变 xff1b 修饰指针 xff0c 分为指向常量的指针 xff08 pointer to const xff09 和自身是常量的指针 xff08 常量指针 xff0c const
  • 在AP_EM上的骚操作

    最近大家都对AP兴趣很大 xff0c 也不知CP大家玩转了木有 xff0c 反正咱也不知道咱也不敢问 xff0c 这次楼主就扯下AP中的状态管理SM和执行管理EM部分 言归正传 xff1a AP的应用 xff0c 在通过工具配置后 xff0
  • 编译型语言和解释型语言的区别

    我们编写的源代码是人类语言 xff0c 我们自己能够轻松理解 xff1b 但是对于计算机硬件 xff08 CPU xff09 xff0c 源代码就是天书 xff0c 根本无法执行 xff0c 计算机只能识别某些特定的二进制指令 xff0c
  • 什么情况下需要加extern “C“,通俗易懂

    下午看了一些关于extern 34 C 34 的博客 xff0c 都写得很啰嗦 xff0c 看来看去还是有一些细节不怎么了解 xff0c 自己开了个程序测试了一下 xff0c 总结了什么情况下需要加入extern C 首先c 43 43 和
  • POSIX介绍

    POSIX表示可移植操作系统接口 xff08 Portable Operating System Interface of UNIX xff0c 缩写为 POSIX xff09 xff0c POSIX标准定义了操作系统应该为应用程序提供的接
  • Linux crond 命令使用实例

    每一分钟调用一次 ls l etc gt tmp to txt crontab e 进行编辑 1 ls l etc gt tmp to txt 1 代表每一分钟执行一次 1 第二个 代表一天中的某个小时 案例2 xff1a 写一个脚本 vi
  • DoIP诊断技术一点通

    DoIP的全称是Diagnostic Over Internet Protocol xff0c 即基于TCP IP协议的诊断协议 随着以太网技术在车载领域的应用范围逐步扩大 xff0c 越来越多的控制器支持通过以太网进行诊断通信 xff0c
  • 嵌入式必备基础一

    嵌入式必备知识 Oliver H的博客 CSDN博客 一 进程与线程 1 1 进程和线程的概念 1 1 1 什么是进程 线程 xff0c 各自有什么优点 概念 xff1a 进程是对运行时程序的封装 xff0c 是系统进行资源调度和分配的的基
  • 嵌入式基础二——C/C++

    二 C C 43 43 2 1 c和c 43 43 区别 概念相关面试题 2 1 1 new和malloc的区别 属性 xff1a new delete是C 43 43 关键字 xff0c 需要编译器支持 malloc free是库函数 x
  • ​Linux 黑话解释:什么是 POSIX?

    POSIX xff0c 你肯定在各种在线论坛和文章中 xff0c 听到过这个缩写 xff0c 或读到过关于它的信息 程序员和系统开发人员似乎最关心这个问题 它听起来很神秘 xff0c 虽然有很多关于这个主题的好资料 xff0c 但一些讨论区
  • 科研进阶篇——论文完结

    终于完成了人生的第一篇学术论文 xff0c 对这次的科研做个总结 xff0c 画上一个完美的问号 xff0c 让我们快乐的继续进阶 xff0c 投了会议 xff0c 中了的话应该会推荐到CCF C期刊 虽然还没出结果 xff0c 还是为自己
  • AP AUTOSAR 平台设计总体框架全解

    AP AUTOSAR 平台设计总体框架全解 01 简介 1 1内容 本规范描述技术范围和方法 AP的背景 逻辑和物理视图的架构 xff0c 是AUTOSAR自适应平台设计的总体框架 全文32000余字 xff0c 建议收藏阅读 02 技术范
  • 谈谈Bootloader自更新

    目录 01 Supplier Boot SB 43 Customer Boot CB 02 将Boot先放到RAM中运行 xff0c 然后更新Boot的Flash区域 03 两个CB 43 minBoot 04 小结 汽车控制器的BootL
  • E2E通信保护协议学习笔记

    E2E通信保护协议学习笔记 最近在做功能安全方面工作 xff0c 想了解E2E保护的问题 本文试着说明两个点 xff1a 功能安全需要考虑通信失效造成的影响 xff0c 因此E2E通信保护协议被提出 xff0c 以满足功能安全要求 xff1
  • TSN(时间敏感网络)介绍

    1 前言 TSN是时间敏感网络 xff08 Time Sensitive Network xff09 的英文缩写 xff0c 是IEEE 802 1 TSN工作组开发的一系列数据链路层协议规范的统称 xff0c 用于指导和开发低延迟 低抖动
  • 汽车OTA是个什么鬼?

    OTA xff1a Over the Air Technology 这描述的是手机吧 xff01 不过一开始的手机也是不可以直接OTA的 1997年之前所有汽车都是一个独立的机械个体 xff0c 一个方向盘 xff0c 一组踏板 xff0c
  • Hypervisor简介

    从头开始了解和使用Hypervisor xff08 第4部分 xff09 嘶吼 RoarTalk 回归最本质的信息安全 互联网安全新媒体 4hou com 根据 Hypervisor 的不同类型 xff0c 我们将虚拟化分为I 型和 II
  • 使用repo下载google源码,跟编译 ,遇到的错误解决

    最近一直想下载android的源码看看 xff0c 但是按照官方的文档下载 xff0c 遇到了问题 在执行的curl http commondatastorage googleapis com git repo downloads repo
  • S32V234 Linux yocto开发环境搭建

    一 主机环境 主机 xff1a Ubuntu 16 04 5 64bit S32V bsp infomation xff1a Bsp version auto yocto bsp 19 0 Linux Kernel version 4 13
  • NXP S32G2开发

    https blog csdn net bigzhizhi article details 123069235 导言 Linux BSP是一组源代码 xff0c 可用于为受支持的板卡创建U Boot引导加载程序 Linux内核映像 根文件系