ARM920(T)與ARM926(EJ-S)還是有不少區(qū)別的,粗的講,前者基于ARMv4架構(gòu),后者基于ARM v5架構(gòu)。其中,對于程序員來說,一個大的區(qū)別是,兩者指令集不一樣。926(ARM v5)新增clz, blx等很多指令(比如,函數(shù)指針在920上翻譯成對pc的操作,而926上翻譯成blx指令)——這就是目前發(fā)布的Android不支持s3c2410主要原因。
920/v4與926/v5的Kernel的啟動代碼也有很多不一致,請比較一下archarmmm下的文件。
我們在培訓過程中,起初用的開發(fā)板是2410(920t),后來我改用926ej-s。移植上的區(qū)別主要不是在CPU Core上,而是SoC及外設(shè),因為arm本身在Linux Kernel中已有很好的支持。