Хорошо конечно что все заработало, только у вас на панели частота кадров не 60 а 120 Гц и это несколько многовато :) Обычно производители дают более полные тайминги - у вас они дали неполные, на форуме просто пополам поделили
left_margin + right_margin
upper_margin + lower_margin
и с потолка срисовали
hsync_len
vsync_len
типичная ситуация несколько другая - обычно видимая часть (активен сигнал DE) оказывается смещена вправо-вниз. Я бы на вашем месте взял в ядре тайминги от любой панели 640х480@60 и подставил их. Вот например такие
Что-то у вас с инхронизацией не так, посмотрел даташит от вашей панели там только DE используется - должно было работать как описано на форуме Freescale. Ничего умнее тупого подбора флагов (это те три последних поля в структуре fb_videomode) не могу придумать :)
Если можно добраться до самой панели и померять частоту - лучше там смотреть - что на DE и что на DOTCLK происходит. Ширина активной части DE должна соответствовать разрешению панели по горизонтали.