1778 - MachXO2: Can I really use the PROGRAMN pin for user i/o without disrupting the ability to program a blank device in-system? <br>
On the MachXO2 device, PROGRAMN is a dual use pin. Our technote TN1204 "MachXO2 Programming and Configuration Usage Guide" describes the behavior of PROGRAMN and other sysCONFIG pins (e.g. INIT, DONE) in detail.
At issue here is that for an erased device PROGRAMN is active by default. There could be conflict if the user circuit has this pin held low during the MachXO2 power-up sequence. Fortunately, the JTAG port will override the PROGRAMN pin in this case.
The user design (bitstream) will load properly. With SDM_PORT=disable PROGRAMN, INIT and DONE are then available for GPIO.