In my experience a good FAL is about as hard to write as a good filesystem.
While you can parameterize a lot of things, there are some fundamental properties of the flash cells which make it very hard to write a single FAL which works well with all flash chips.
As a matter of principle I do not comment on issues specific to Linux.