当前位置: 首页 > news >正文

企业网站ui设计wordpress ftp服务器

企业网站ui设计,wordpress ftp服务器,高端室内设计工作室,企业在线文章目录 1.U-boot启动流程:最终会调用arch/arm/lib/crt0.S文件中的_main函数1.1 board_init_f函数:_main中会调用board_init_f()函数,该函数位于common/board_f.c中,主要用来初始化DDR,定时器,完成代码拷贝等1.2 board_init_r函数:board_init_f中并没有初始化完所有的外…

文章目录

  • 1.U-boot启动流程:最终会调用arch/arm/lib/crt0.S文件中的_main函数
    • 1.1 board_init_f函数:_main中会调用board_init_f()函数,该函数位于common/board_f.c中,主要用来初始化DDR,定时器,完成代码拷贝等
    • 1.2 board_init_r函数:board_init_f中并没有初始化完所有的外设,还需要通过board_init_r来完成
  • 2.环境变量:printenv,reset复位重启,tftp 87800000 printf.bin,go 87800000执行printf.bin
    • 2.1 bootcmd:将Linux内核从flash(NAND,NOR FLASH,SD,MMC)或网络(nfs,tftp)拷贝到DDR,一旦内核镜像和设备树文件加载完成,并设置好内核启动参数bootargs,U-Boot就会执行bootz命令来启动Linux内核并将bootargs传递给内核
    • 2.2 bootargs:保存着U-Boot传递给Linux内核的参数
    • 2.3 EMMC和SD卡操作:一般EMMC和SD卡是同一个东西,统一MMC来代指
    • 2.4 FAT和EXT格式文件系统操作:EMMC的分区2是ext4格式,命令ext4ls mmc 1:2 就可查询EMMC的分区2中的文件和目录
  • 3.实例
  • 1.uboot内存压测:CONFIG_CMD_MEMTEST ,dts memory节点,大块内存检测
  • 2.uboot开启内存ECC:bit位内存检测
  • 3.FMC的DMA:单次拷贝最大支持32M
  • 4.


在这里插入图片描述
在这里插入图片描述

1.U-boot启动流程:最终会调用arch/arm/lib/crt0.S文件中的_main函数

在这里插入图片描述

# recipes-bsp/u-boot/u-boot-bird_2020.04.bb: 引用了u-boot-common.inc, 如下变量重新赋值
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRCBRANCH = "master"
UBOOT_SRC ?= "git:${BSPDIR}/bird-imx-uboot;protocol=file"  # 指向本地fsl-release-yocto/bird-imx-uboot路径
SRC_URI = "${UBOOT_SRC};branch=${SRCBRANCH}"
SRCREV = "${AUTOREV}"  # 通过bird-imx-uboot下使用git log查看(commit id),也可以将SRCREV设置为SRCREV="${AUTOREV}"使用代码分支下的最新版本

将生成的u-boot.bin文件烧写到SD卡中,设置imx6ull从SD卡启动(芯片boot mode引脚做好,看手册),当imx6ull上电后,芯片内部的boot rom程序将SD卡中的u-boot.imx文件(u-boot.bin转换为u-boot.imx需要相应的转换)拷贝到链接地址处,就可以开始运行U-Boot。

./imxdownload(nxp官网工具) u-boot.bin /dev/sdb1  # 在Ubuntu中使用ls /dev/sd*确定插入的SD卡设备。 烧写完成后,将SD卡插入嵌入式Linux板卡,配置从SD卡启动的方式,断电复位板卡即可

1.1 board_init_f函数:_main中会调用board_init_f()函数,该函数位于common/board_f.c中,主要用来初始化DDR,定时器,完成代码拷贝等

initcall_run_list函数来运行初始化序列init_sequence_f里的一系列函数,只要init_sequence_f所定义的其中一个函数出错,U-Boot启动就会停止,initcall_run_list函数位于include/initcall.h中,其实就是一个循环。在init_sequence_f里定义了一系列的初始化函数如display_options、display_text_info、print_cpuinfo、show_board_info等用于在U-Boot启动时输出一些启动信息至控制台。
在这里插入图片描述
在U-Boot的配置文件(例如:mx6ull_14x14_evk_deconfig)中定义CONFIG_OF_CONTROL=y时,将采用设备树的方式来提供驱动数据,如下fdtdec_setup()函数位于/lib/fdtdec.c中通过设置全局变量gd->fdt_blob的值,设置设备树的存放地址为u-boot的末尾(通过对比编译生成的u-boot.bin和u-boot-nodtb.bin也可以看到在u-boot.bin的末尾增加了设备树文件)。
在这里插入图片描述

1.2 board_init_r函数:board_init_f中并没有初始化完所有的外设,还需要通过board_init_r来完成

在board_init_r函数中同样通过调用initcall_run_list函数来执行初始化序列init_sequence_r,在board_init_r函数的最后会调用run_main_loop函数,run_main_loop会进入一个main_loop死循环,在main_loop函数里会根据是否按下回车键进入uboot命令模式。还是在倒计时结束之后,通过执行环境变量bootcmd里的命令,bootcmd里面保存着默认的启动命令用于启动Linux内核。

U-Boot的环境变量是用来存常用的参数变量,U-Boot会使用这些参数变量进行配置。启动过程中将env从静态存储器中读出放到RAM中,之后在U-Boot下对env的操作(如printenv、editenv、setenv)都是对RAM中env的操作,只有在执行saveenv时才会将RAM中的env重新写入静态存储器(nand flash、nor flash、eeprom、mmc)。

// include/environment.h中定义了env_t
# define ENV_SIZE ((CONFIG_ENV_SIZE - ENV_HEADER_SIZE) & ~(16 - 1))  // CONFIG_ENV_SIZE是环境变量的总长度,在如/include/configs/mx6ullevk.h配置文件中定义
typedef struct environment_s {uint32_t crc;  /* CRC32 over data bytes */ // 头4个Byte是环境变量CRC校验码,后面剩余的控制全部用来存储环境变量。CRC校验码是U-Boot在saveenv时计算出来,然后写入对应的静态存储器,所以在第一次启动U-Boot时crc校验会出错,因为U-Boot从静态存储器读入的数据是随机没有意义的,执行U-Boot后重启uboot,crc校验就正确了。unsigned char data[ENV_SIZE]; /* Environment data  */
} env_t
static int initr_env(void)  // 初始化环境变量函数
{if (should_load_env())  // 总是返回1env_relocate(
http://www.dtcms.com/a/493102.html

相关文章:

  • 太仓建设局网站网站首页设计效果图
  • 织梦可以做视频网站么域名服务器分为
  • 北京网站优化公司哪里稳定网站网址怎么写
  • 甘肃网站建设费用工会网站建设方案
  • 热门关键词查询新上线的网站怎么做优化
  • 网站 多线买医疗产品的网站建设
  • 微信网站案例三门峡做网站推广
  • 南阳网站运营学软件开发需要学什么
  • 邢台网站网站建设wordpress 上传
  • dedecms 5.7 通用企业网站模板吾爱网站
  • 创建网站的步骤网站客户端ip做爬虫
  • 上地网站制作客户关系管理系统软件有哪些
  • 网站的源码织梦网站优化
  • 凡客诚品被谁取代了长沙seo优化方案
  • 电子商务网站开发人员要求想创业做网站
  • html5网站制作软件临沂专业网站制作
  • 秦皇岛市网站制作公司网站开发使用软件环境
  • 东莞石龙网站建设定制互联网推广是什么工作
  • python 组合求和 (回溯-中等)含源码(十七)
  • 注册域名哪个网站好京东的网站建设
  • 怎么用织梦模板做网站短视频动画制作
  • 重庆网站域名备案地址东营区住建行业信用平台
  • 2013电子商务网站建设考试试卷网站三d图怎么做
  • 网站建设平台计划书开发网站网络公司怎么样
  • 山西智能网站建设制作免费建设小学校网站
  • 【ROS2】创建自定义接口
  • php网站接口开发上海十大网站建
  • 个人网站开论坛本地创建wordpress
  • 深圳网站优化课程哪里学域名申请成功后怎么做网站
  • 临安营销型网站建设罗湖建设网站