MEMORY | INTERRUPT | TIMER | 并发与同步 | 进程管理 | 调度 | uboot | DTB | ARMV8 | ATF | Kernel Data Structure | PHY | LINUX2.6 | 驱动合集 | UART子系统 | USB专题 |

2022年11月2日

UBOOT编译--- include/config.h、 include/autoconf.mk、include/autoconf.mk.dep、u-boot.cfg(三)

摘要: 1. 前言 UBOOT版本:uboot2018.03,开发板myimx8mmek240。 # 2. 概述 本节主要接上一节解析 :include/config.h、 include/autoconf.mk、include/autoconf.mk.dep、spl/include/autoconf.mk 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(1072) 评论(0) 推荐(0) 编辑

UBOOT编译--- UBOOT顶层Makefile中目标_all和all的关系及背景(四)

摘要: @(UBOOT顶层Makefile中目标_all和all的关系及背景) 1. 前言 UBOOT版本:uboot2018.03,开发板myimx8mmek240。 # 2. 概述 **当我们执行的命令是make命令时** ,由于后面没有带参数,因此makefile会编译默认遇到的第一个目标。 # 3. 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(292) 评论(0) 推荐(0) 编辑

UBOOT编译--- UBOOT的顶层config.mk(五)

摘要: 1. 前言 UBOOT版本:uboot2018.03,开发板myimx8mmek240。 # 2. 概述 此文件包含在 ./Makefile 和 spl/Makefile 中。 清理状态以避免添加两次相同的标志。有些平台需要不同的 SPL 标志,这就是为什么这个文件也必须包含在 spl/Makefi 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(362) 评论(1) 推荐(0) 编辑

Cache的相关知识(二)

摘要: 1. cache背景知识 为什么的CPU内部需要cache单元? 主要的原因是CPU的速度和内存的速度之间严重不匹配,Cpu处理速度极快,而访问内存慢,cache在这个背景下就诞生了。设计人员通过在CPU和内存之间建立一个缓冲区,提高访问的速度。 建立cache的好处在于:假设CPU和内存之间没有c 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(1939) 评论(0) 推荐(0) 编辑

UBOOT编译--- UBOOT的编译和链接选项详解(六)

摘要: 1. 前言 UBOOT版本:uboot2018.03,开发板myimx8mmek240。 # 2. 函数 cc-option 编译选项变量cc-option 定义在 scripts/Kbuild.include中: ```c # scripts/Kbuild.include # output dir 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(1193) 评论(0) 推荐(0) 编辑

UBOOT编译--- UBOOT的$(version_h) $(timestamp_h)(七)

摘要: 1. 前言 UBOOT版本:uboot2018.03,开发板myimx8mmek240。 # 2. 概述 在编译uboot的过程中,有两个特别的依赖version_h 和 timestamp_h,它们定义在顶层Makefile中(这里只讲解编译直接在源目录的情况,即srctree 为空),如下: ` 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(448) 评论(0) 推荐(0) 编辑

UBOOT编译--- UBOOT编译过程目标依赖分析(八)

摘要: 1. 前言 UBOOT版本:uboot2018.03,开发板myimx8mmek240。 # 2. 概述 本文采用**自顶向下**的方法,从顶层目标开始到最原始的依赖。 # 3. u-boot编译 uboot的编译分为两步:配置、编译。 配置,执行make pmyimx8mmek240-8mm-2g 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(649) 评论(0) 推荐(0) 编辑

内核常用的might_sleep函数

摘要: 1. 前言 内核版本:linux 4.9.225。内核版本:linux 4.9.225。对于内核常用的might_sleep函数,如果没有调试的需要(没有定义CONFIG_DEBUG_ATOMIC_SLEEP),这个宏/函数什么事情都不,might_sleep就是一个空函数,所以平常看code的时候 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(1432) 评论(0) 推荐(1) 编辑

linux内核中的likely与unlikely

摘要: 前言 内核版本:linux 4.9.x。在linux内核中,经常可以看见if( likely(x))或if( unlikely(x))的语句,本文将基于likely和unlikely的定义和作用进行一些简单的描述。 @ # 1. __builtin_expect 说明 ## 1.1 __builti 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(615) 评论(0) 推荐(0) 编辑

Armv8之Execution State 和 Exception Level(一)

摘要: @ ARMV8系统级编程模型主要包括异常级别、运行状态、安全状态、同步异常、异步异常、DEBUG等。本文主要对系统级编程模型做一个概要介绍。 # 1. 典型的Exception Level使用模型 | 异常级别 |运行的软件 | |--|--| | EL0 | Secure or Non-secur 阅读全文

posted @ 2022-11-02 22:23 BSP-路人甲 阅读(689) 评论(0) 推荐(0) 编辑

导航