* Juha Kuikka <juha.kuikka@xxxxxxxxx> [080408 17:33]: > Hi, > > I am trying to use the NAND prefetch engine to speed up NAND access. > > In GPMC CS0 is the NAND chip. GPMC_CONFIG7_0 is set to 0x0000084c by > u-boot. Hence the address for this CS should be 0x0C000000. > Documentation indicates that the FIFO should be accessible in any > associated chip-select region after the engine has been enabled. > > In linux I use ioremap() to map 0x0C000000 and use the returned > pointer to access the prefetch engine FIFO. > > Prefetch engine is configured and started. > I get FIFOEVENT interrupt from it and try to read the fifo by using > this ioremap's pointer but kernel crashes with: > > Unhandled fault: external abort on non-linefetch (0x008) at 0xc4854000 > 0xc4854000 corresponds to the pointer ioremap() returned. > > Apparently I miss something either in HW or kernel but I cannot think > of anything. > Conventional access to the NAND chip through COMMAND/ADDRESS/DATA > registers works ok. > Any ideas would be appreciated. Are you sure you have all the needed clocks on at this point? At least gpmc_fck should be checked. Of course if access to gpmc works in general, this is not the problem. Tony -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html