Hi Asger, Sounds like interesting issue which should be investigated and properly fixed. Currently there are no many MIPS experts around here. So, you will need to wait until I'll find some time and start investigation. Start by your self and send patches :) Or hire me to fix it :D
Regards, Oleksij Am 08.03.21 um 08:45 schrieb Asger Gitz-Johansen via OpenOCD-devel: > ---------------------------------------------------------------------------------------------------- > > *[tickets:#296] <https://sourceforge.net/p/openocd/tickets/296/> mips_m4k > fast programming only > writes first 128 bytes of 512 blocks* > > *Status:* new > *Milestone:* 0.10.0 > *Labels:* bug mips m4k fast-programming > *Created:* Mon Mar 08, 2021 07:45 AM UTC by Asger Gitz-Johansen > *Last Updated:* Mon Mar 08, 2021 07:45 AM UTC > *Owner:* nobody > *Attachments:* > > * program_flash_to_write_to_chip.hex > > <https://sourceforge.net/p/openocd/tickets/296/attachment/program_flash_to_write_to_chip.hex> > (1.4 MB; application/octet-stream) > * program_flash_written_to_chip.hex > > <https://sourceforge.net/p/openocd/tickets/296/attachment/program_flash_written_to_chip.hex> > (1.4 MB; application/octet-stream) > > > Problem With mips_m4k.c 's Fast Programming > > I have been having the same journey as this guy > <https://hackaday.io/project/6450-operation-learn-the-mips-pic32mx1xx2xx370> > did back in 2015/2016. > The mips_m4k.c target is faulty in it's /fast programming/ part. The > condition that enables the > /fast programming/ routine is clearly errornious, forgetting to compare the > |size - 1|. Patching > this is fairly straight forward > <https://hackaday.io/project/6450-operation-learn-the-mips-pic32mx1xx2xx370/log/20840-wherein-we-discover-with-some-amount-of-certainty>. > > However, with the condition is patched, there is another problem exposed: > > > Fast Programming only writes 128 bytes > > See attachments to see exactly what I mean. The > |program_flash_to_write_to_chip.hex| is what we want > to write to the chip and |program_flash_written_to_chip.hex| is a flash dump > from after trying to write. > > As seen, byte |0x7F (128 bytes)| is the last byte written in the 512 byte > sized block. After that, > the next 512 bytes are attempted to be written, but only the first 128 bytes > are written. This > smells like a hardcoded or math problem in the fast programming routine. > > > Hardware I Use > > * Programmer: Raspberry Pi 3B+ > * Target Chip: PIC32MX570F512L > > <https://ww1.microchip.com/downloads/en/DeviceDoc/PIC32MX1XX2XX5XX%2064100-PIN_Family_60001290F.pdf> > * Board: Explorer 16/32 > <https://www.microchip.com/DevelopmentTools/ProductDetails/dm240001-2> > (Only used to host the chip) > > > JTAG Connections > > Please consult the chart below. Note that the raspberry pi numbers are the > pin numbers. Not the GPIO > numbers. The Board pin numbers refer to the Explorer 16/32 > <https://ww1.microchip.com/downloads/en/DeviceDoc/Explorer_16_32_Schematics_R6_3.pdf> > board PIM > mapping <https://ww1.microchip.com/downloads/en/DeviceDoc/50002292A.pdf> pin > numbers. > > *BoardPin#* *JTAGPinName* *RPiPIN#* *RPiPIN#* *JTAGPinName* > *BoardPin#* > PIN 18 SRST MCLR > P60 TDI PIN 19 PIN 20 GND GND > P61 TDO PIN 21 PIN 22 TMS P17 > P38 TCK PIN 23 PIN 24 *Not Connected* > > ---------------------------------------------------------------------------------------------------- > > Sent from sourceforge.net because [email protected] is > subscribed to > https://sourceforge.net/p/openocd/tickets/ > <https://sourceforge.net/p/openocd/tickets/> > > To unsubscribe from further messages, a project admin can change settings at > https://sourceforge.net/p/openocd/admin/tickets/options. > <https://sourceforge.net/p/openocd/admin/tickets/options.> Or, if this is a > mailing list, you can > unsubscribe from the mailing list. > > > > _______________________________________________ > OpenOCD-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/openocd-devel > -- Regards, Oleksij _______________________________________________ OpenOCD-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openocd-devel
