2598 - Can Lattice FPGAs use a general purpose I/O to assert it's own PROGRAMN pin?
Lattice does not recommend using the FPGA's general purpose I/O to assert its own PROGRAMN pin. There is risk the FPGA may not restart after the first attempt to assert the PROGRAMN pin. The PROGRAMN pin can inadvertently be pulled low, which can delay the configuration process. Instead, a REFRESH command is best suited for re-configuring the FPGA. Please see respective sysCONFIG Technical Notes for more details.
As an example, consider Lattice MachXO2 device's Programming and configuration usage guide, TN1204. Refer to section sysCONFIG Pins, PROGRAMN Pin description. The section indicates that holding the PROGRAMN Pin low prevents the device from leaving the Initialization phase. Please refer to the sysCONFIG technical note for the device family you are interested in for information regarding the PROGRAMN Pin for that device family.