Autodetection works. } else if (device_id == 0x501000c5) { /* LPC55S6x/LPC55S2x/LPC552x */ rom_api_table = 0x130010f0;
I am not sure what mask to use for the lookup of the rom API table, this is what I found: [GeplakteAfbeelding-1.png] Op 6 mei 2025, om 13:22 heeft Paul Fertser <fercer...@gmail.com> het volgende geschreven: On Tue, May 06, 2025 at 11:13:24AM +0300, Paul Fertser wrote: On Mon, May 05, 2025 at 09:21:39PM +0000, Rolf | Onethinx wrote: I get a flash_init() failed trying to program an LPC55S69. Any Ideas? ... I: Launching gdb-server: openocd -c "gdb_port 50000" -c "tcl_port 50002" -c "telnet_port 50004" -s /usr/local/share/openocd/scripts -c "set FLASH_API_ADDRESS 0x030010f0" -f I wonder if this address is correct. It needs to be not the generic "ROM API" address but the "Flash API" part of it. What I found in some document was 0x130010f0 for the _ROM API_ table but I didn't have a chance to test it on hardware and the documention wasn't really complete. The pointer to the Flash API table is supposed to be at offset 0x10 in the ROM API table. https://github.com/Xilinxx/lpc55s69/blob/main/vendor/drivers/fsl_iap.c#L32 suggests the address I found is correct, please just try enabling auto-detecting Flash API address by uncommenting the code for your device id. -- Be free, use free (http://www.gnu.org/philosophy/free-sw.html) software! mailto:fercer...@gmail.com