Add support for LPC11U3X devices.

The DeviceID register has a different address from the LPC11XX devices.
But it is shared with the LPC8XX family.
This commit is contained in:
Ingmar Jager 2018-10-02 14:38:56 +02:00 committed by Gareth McMullin
parent 771d81a5f0
commit 14bedcc441
1 changed files with 17 additions and 5 deletions

View File

@ -52,6 +52,7 @@ lpc11xx_probe(target *t)
uint32_t idcode; uint32_t idcode;
/* read the device ID register */ /* read the device ID register */
/* See UM10462 Rev. 5.5 Chapter 20.13.11 Table 377 */
idcode = target_mem_read32(t, LPC11XX_DEVICE_ID); idcode = target_mem_read32(t, LPC11XX_DEVICE_ID);
switch (idcode) { switch (idcode) {
case 0x041E502B: case 0x041E502B:
@ -117,7 +118,18 @@ lpc11xx_probe(target *t)
target_add_ram(t, 0x10000000, 0x2000); target_add_ram(t, 0x10000000, 0x2000);
lpc11xx_add_flash(t, 0x00000000, 0x8000, 0x400); lpc11xx_add_flash(t, 0x00000000, 0x8000, 0x400);
return true; return true;
case 0x0003D440: /* LPC11U34/311 */
case 0x0001cc40: /* LPC11U34/421 */
case 0x0001BC40: /* LPC11U35/401 */
case 0x0000BC40: /* LPC11U35/501 */
case 0x00019C40: /* LPC11U36/401 */
case 0x00017C40: /* LPC11U37FBD48/401 */
case 0x00007C44: /* LPC11U37HFBD64/401 */
case 0x00007C40: /* LPC11U37FBD64/501 */
t->driver = "LPC11U3x";
target_add_ram(t, 0x10000000, 0x2000);
lpc11xx_add_flash(t, 0x00000000, 0x20000, 0x1000);
return true;
} }
return false; return false;