Booting dircetly into Redlink FW from flash
Booting dircetly into Redlink FW from flash
Hello,
the usual way to use the Redlink FW is a two-step approach:
- First the MCU of the probe enumerates as a DFU device.
- Then the Redlink Server downloads the current Redlink FW into SRAM
and the probe re-enumerates as a different HID device (VID 0x21BD, PID 0006) which is the probe FW.
This works quite fine, but if your target MCU also boots into USB at the same time the probe boots,
then the host cannot know which device is the probe and which one is the target.
In this scenario it would be desirable to flash the (current) Redlink FW once into the internal flash of the probe MCU and then directly boot from flash.
The probe would then enumerate as the"probe HID" device directly.
Can this be done easily, i.e. is there a Redlink FW that is relocated for start from internal flash?
We plan to deploy quite a lot (40+) of these "hard coded debuggers" for edu purposes in two labs.
The probes are already designed and tested with the LPC4320 (and up) and work fine so far.
AFAIK they could run on some LPC18xx as well. If so, does this require a different Redlink FW?
We just use the JTAG debug interface, no SWD, trace port or other fancy stuff.
Best regards,
Mike
First of all, redlink is designed to run on known NXP debug probe hardware only.
It is only tested on such probes, and we make no guarantees as to its use on other hardware.
Also redlink firmware will only run LPC43xx, there is no LPC18xx variant.
But those points aside, if you hardware had SPIFI flash then you should be able to program the image into that -
the LPC43xx bootloader would download it into RAM on startup).
LPCScrypt could be used to do this.
But there is no redlink firmware build available that could run from internal flash. < run from SRAM always >
Note that you mention LPC4320 - which of course has no internal flash.
If you are using internal flash then the simplest solution might be to try using CMSIS-DAP firmware,
which is designed to programmed and run from flash ......
http://www.lpcware.com/lpclink2-config-tool
Regards,
LPCXpresso Support
Update:
I decided to stick with the Redlink FW, because according to the documentation the CMSIS/DAP version cannot debug the multicore targets.
So I just wrote a "bootloader stub" residing in internal flash
- which copies the current Redlink FW (stored in internal flash as a BLOB also) to SRAM,
- sets up VTOR and the SP for SRAM operation and
- then jump to the "new" reset vector, i.e. starts the FW.
Works fine on a LPC4327.
Our "microboards" now enumerate immediately as "LPCLINK2 redlink" devices
and work as expected with LPCXpresso as JTAG probes.
Thanks for your help and clarification even on a project that is well "out of support scope".
Regards,
Mike
Glad to hear that you now have a solution that works for you.
You should take note though that the redlink firmware provided with one version of LPCXpresso may not work with,
or may not provide support for some features, when used with a future LPCXpresso release.
Thus I would recommend that you update the firmware you have flashed when you update to a new LPCXpresso version.
Also regarding the CMSIS-DAP firmware for LPC-Link2:
you are correct that using this firmware you can currently only connect from LPCXpresso to the M4 core inside the LPC43xx parts.
Allowing connections via CMSIS-DAP to the M0 core(s) is something we do intend to support in a future release LPCXpresso release though.
Regards,
LPCXpresso Support
Booting dircetly into Redlink FW from flash的更多相关文章
- 【转载】Serial NOR Flash and U-Boot
转载自:http://blackfin.uclinux.org/doku.php?id=bootloaders:u-boot:serial-flash U-Boot supports serial N ...
- 创建squashfs
SquashFS 通常的livecd都有一个这个文件,是核心的文件系统 SquashFS 也是一个只读的文件系统,它可以将整个文件系统压缩在一起,存放在某个设备,某个分区或者普通的文件中.如果您将其压 ...
- Bug搬运工-CSCvg37458:ISR4K goes into booting loop with "flash:" in boot statement
ISR4K升级的时候要注意了! 很可能会碰到如下的问题: ISR4K goes into booting loop with "flash:" in boot statement ...
- [转]uboot中SPI Flash Booting配置
转自:https://e2echina.ti.com/question_answer/dsp_arm/sitara_arm/f/25/t/124834 最近和人一起调试SPI FLASH的配置问题,做 ...
- s3c2440 移值u-boot-2016.03 第2篇 支持Nand flash启动
1, 要求:在4K 的代码以内,完成 NOR NAND 类型判断,初始化 NAND 复制自身到 SDRAM ,重定向. 2, 在 /arch/arm/cpu/arm920t/ 文件夹里 添加一个 in ...
- LPC18xx LPC43xx LPC4370 Bootrom USB DFU FPB - Flash Patch and Breakpoint Unit
What is the difference between a Bootrom vs bootloader on ARM systems Bootrom Bootrom (or Boot ROM) ...
- Android eMMC Booting
Android eMMC Booting Contents [hide] 1 eMMC binaries 1.1 Creating the GPT table 1.2 Modifying .IMG F ...
- Android gingerbread eMMC booting
Android gingerbread eMMC booting This page is currently under construction. The content of this page ...
- Booting ARM Linux
来源:linux-2.6.30.4/Documentation/arm/Booting ARM Linux Booting ARM Linux ================= ...
随机推荐
- tf.range()函数
range()函数用于创建数字序列变量,有以下两种形式: range(limit, delta=1, dtype=None, name='range') range(start, limit, del ...
- 用原生js对表格排序
阿里的模拟笔试题,当时时间有限没写出来,其实是因为自己对原生dom操作不熟悉,这里补一下. 题目的大意是有一个表格,如代码所示 <table> <tr> <th>N ...
- Paint Fence
There is a fence with n posts, each post can be painted with one of the k colors.You have to paint a ...
- 【转】Java JUnit 单元测试小结
原文链接:https://segmentfault.com/a/1190000006731125 测试类型 单元测试(Unit test) 单元测试关注单一的类. 它们存在的目的是检查这个类中的代码是 ...
- laravel 网站地图轮子
https://github.com/Laravelium/laravel-sitemap add the following to your composer.json file : For Lar ...
- tensorflow-训练(train)/测试(test)
一个TFRecords 文件为一个字符串序列.这种格式并非随机获取,它比较适合大规模的数据流,而不太适合需要快速分区或其他非序列获取方式. 操作组 操作 Training Optimizers,Gra ...
- nodejs查询数据库后,获取result结果集并赋值返回
nodejs获取了查询结果,但不能返回出去, 情形如下: var query = function (path,id,param,sqlWhere,res){ var aa = 111;var sql ...
- 一个浏览器Fuzzing框架的学习
一个浏览器Fuzzing框架的学习 关于框架 之前是LCatro师傅在小密圈分享的他写的这个Fuzzing框架(不过我以前翻github时好像就看到过),但是之前一直没啥时间搞这方面,这两天研究学习了 ...
- Java编程的逻辑 (36) - 泛型 (中) - 解析通配符
本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...
- Nginx配置支持https协议-应用实践
Nginx配置支持https协议-应用实践 https简介 HTTPS 是运行在 TLS/SSL 之上的 HTTP,与普通的 HTTP 相比,在数据传输的安全性上有很大的提升. TLS是传输层安全协议 ...