博客
关于我
ARM体系结构(三)——iROM——九鼎创展 x210V3s
阅读量:57 次
发布时间:2019-02-25

本文共 1674 字,大约阅读时间需要 5 分钟。

iROM?BL1??????

iROM?????

iROM????????????????????????????????????????

  • ?????????????????????????????????
  • ?????????????????????????????????
  • ????????????????????????
  • ????????????????????????????
  • ????????????????????????????
  • ??PLL???????????????????????
  • ??BL1??????SRAM???BL1??????iROM???SRAM????
  • ???????????????????????
  • ??????????????????????
  • ???BL1?????????????BL1?????????
  • ???iROM???????????????????????????????????

    BL1????

    BL1????????????????????

  • ????????

    • ??????????????
    • ???DRAM????????????????
    • ???????????????????????
    • ????????????????????????
    • ??BL2?DRAM???BL2??????????????
    • ???BL2??????????BL2???????
  • ??????

    • ????????????????
    • ??????????????????????????
  • ???BL1????16???????????????????

    ????

    ????????????????????????????????????

    ; ??????ldr r0, =0xE010_E81Cunsigned int* p = 0xE010_E81C;; ?????ldr r1, [r0]unsigned int val = *p;; ???????????orr r1, r1, #0x300val = val | 0x300;orr r1, r1, #0x1val = val | 0x1;; ???????str r1, [r0]*p = val;

    ?????

    ?????????????????????????????????mkv210_image.c?????????

    #ifndef __MKV210_CHECKSUM_H__#define __MKV210_CHECKSUM_H__#include 
    #define CHECKSUM_MAGIC 0x12345678#define CHECKSUM_SIZE 32// ????????????int compute_checksum(const char* image_path, uint32_t** checksum) { *checksum = malloc(CHECKSUM_SIZE * sizeof(uint32_t)); FILE* fp = fopen(image_path, "rb"); if (!fp) { return -1; } uint32_t sum = 0; uint8_t buffer[1024]; while (fread(buffer, sizeof(uint8_t), 1024, fp) != 0) { sum += crc32(buffer, 1024); } memcpy(*checksum, (uint32_t*)(&sum), CHECKSUM_SIZE); fclose(fp); return 0;}#endif

    ??

    iROM?BL1????????????????????????????????????????????????????????????????

    转载地址:http://ecq.baihongyu.com/

    你可能感兴趣的文章
    Problem N HDU 2612 Find a way (两次BFS求最值)
    查看>>
    Process /usr/libexec/gdu-notification-daemon was killed by signal 6 (SIGABRT)
    查看>>
    process.env.VUE_APP_BASE_API 获取不到
    查看>>
    Process.run() 和 Process.start() 之间的区别
    查看>>
    Processes
    查看>>
    Processing通过编程实现艺术设计_实现艺术和现实的交互---数据设计分析002
    查看>>
    ProcessOnLoading
    查看>>
    SpringBoot中集成screw(螺丝钉)实现数据库表结构文档生成
    查看>>
    PROFINET 模拟器使用教程
    查看>>
    Program type already present: android.support.v4.widget.EdgeEffectCompat
    查看>>
    PyTorch中文版官方教程来啦(附下载)
    查看>>
    Progress Kemp LoadMaster 远程命令执行漏洞复现(CVE-2024-1212)
    查看>>
    Project configuration is not up-to-date with pom.xml. Run Maven->Update Project
    查看>>
    Project Euler 15 Lattice paths
    查看>>
    Project Euler 48 Self powers( 大数求余 )
    查看>>
    Project Euler Problem 12: Highly divisible triangular number
    查看>>
    ProjectEuler 2
    查看>>
    projection介绍及EPSG:4326和EPSG:3857的投射转换
    查看>>
    project打开文件时,显示无法识别此文件格式?
    查看>>
    Prometheus + Grafana on Kubernetes部署
    查看>>