Maple doesn't have an FSMC. Only Maple Native does, of the LeafLabs boards. Do you mean that you're using a Native? Or that you're using another chip with an FSMC?
Other things seem strange. From your code:
fsmc_nor_psram_set_addset(regs, 30);
30 is suspiciously large, given that ADDSET is only 4 bits wide. The argument to fsmc_nor_psram_set_addset()
is just ANDed with 0xF and shoved into the ADDSET bits directly (similarly for fsmc_nor_psram_set_datast()
), so 30 can't possibly be what you mean. It looks like that value is just copy-pasta from your old code; I'd spend some more time looking at RM0008 to see what you really want to put into those bits. (Or just copy the values of the FSMC registers directly from the working code).
Sorry that fsmc.h isn't very full-featured at the moment; it's mostly there to support the SRAM chip on Maple Native, so it's lacking when it comes to dealing with other sorts of memory.