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的更多相关文章

  1. 【转载】Serial NOR Flash and U-Boot

    转载自:http://blackfin.uclinux.org/doku.php?id=bootloaders:u-boot:serial-flash U-Boot supports serial N ...

  2. 创建squashfs

    SquashFS 通常的livecd都有一个这个文件,是核心的文件系统 SquashFS 也是一个只读的文件系统,它可以将整个文件系统压缩在一起,存放在某个设备,某个分区或者普通的文件中.如果您将其压 ...

  3. Bug搬运工-CSCvg37458:ISR4K goes into booting loop with "flash:" in boot statement

    ISR4K升级的时候要注意了! 很可能会碰到如下的问题: ISR4K goes into booting loop with "flash:" in boot statement ...

  4. [转]uboot中SPI Flash Booting配置

    转自:https://e2echina.ti.com/question_answer/dsp_arm/sitara_arm/f/25/t/124834 最近和人一起调试SPI FLASH的配置问题,做 ...

  5. s3c2440 移值u-boot-2016.03 第2篇 支持Nand flash启动

    1, 要求:在4K 的代码以内,完成 NOR NAND 类型判断,初始化 NAND 复制自身到 SDRAM ,重定向. 2, 在 /arch/arm/cpu/arm920t/ 文件夹里 添加一个 in ...

  6. 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) ...

  7. Android eMMC Booting

    Android eMMC Booting Contents [hide] 1 eMMC binaries 1.1 Creating the GPT table 1.2 Modifying .IMG F ...

  8. Android gingerbread eMMC booting

    Android gingerbread eMMC booting This page is currently under construction. The content of this page ...

  9. Booting ARM Linux

    来源:linux-2.6.30.4/Documentation/arm/Booting ARM Linux Booting ARM Linux            ================= ...

随机推荐

  1. 20155233 2016-2017-2 《Java程序设计》第5周学习总结

    20155233 2016-2017-2 <Java程序设计>第5周学习总结 学习目标 理解异常架构 牚握try...catch...finally处理异常的方法 会用throw,thro ...

  2. Ubuntu GNOME单击任务栏图标最小化设置

    在Ubuntu GNOME的发行版中,桌面使用的是GNOME,GNOME可以像Windows那样有一个底部任务栏,在Ubuntu GNOME中它称为 dash to dock,如下图: Windows ...

  3. Implement Queue by Two Stacks & Implement Stack using Queues

    Implement Queue by Two Stacks Implement the following operations of a queue using stacks. push(x) -- ...

  4. Unity 网格 绘制

    网格绘制主要用是对Mesh进行操作,通过对vertex和triangles进行操作生成对应的面片: 这里首先得用到一个类:Triangulator(根据vertex生成triangles数组) usi ...

  5. 从消费者角度评估RestFul的意义

    相关博文: 从消费者角度评估RestFul的意义 SpringBoot 构建RestFul API 含单元测试 REST是目前业界相当火热的术语,似乎发布的API不带个REST前缀,你都不好意思和别人 ...

  6. 使用maven命令终端构建一个web项目及发布该项目

    构建环境: maven版本:3.3.9 系统平台:Windows7 x64 JDK版本:1.7 构建步骤: 1.打开maven安装目录,在地址栏输入cmd进入命令窗口 2.输入命令mvn archet ...

  7. springMVC:将controller中数据传递到jsp页面

    1> 将方法的返回值该为ModelAndView在返回时,将数据存储在ModelAndView对象中如: newModelAndView("/WEBINF/jsp/showData.j ...

  8. ***解决UEditor编辑器无法插入第三方视频地址

    转:http://blog.csdn.net/qq_16241043/article/details/53894847 xssFilter导致插入视频异常,编辑器在切换源码的过程中过滤掉img的_ur ...

  9. 如何用prometheus监控k8s集群中业务pod的metrics

    一般,我们从网上看到的帖子和资料, 都是用prometheus监控k8s的各项资源, 如api server, namespace, pod, node等. 那如果是自己的业务pod上的自定义metr ...

  10. Codeforces 12D Ball cdq分治

    裸的cdq, 没啥好说的, 要注意mid左边和mid右边的a相同的情况. #include<bits/stdc++.h> #define LL long long #define fi f ...