-kernel
отображает двоичный файл в пространство памяти и загружается из него. Я считаю, что он отличается от флэш-загрузки только тем, что не поддерживает CFI или подобные команды, а память доступна для записи. Это важно для тебя? Что именно вам нужно от "флэш-загрузки"?
P.S. описание опции гласит:
-pflash file use 'file' as a parallel flash image
Так что, даже если вы сделаете это, вам все равно понадобится код загрузчика, который получит доступ к этой флэш-памяти и загрузит код с нее.