这两个soc都是arm920,cpuid都是0x41129200,许多寄存器设置都是相同的,可是你要想直接把2410的bootloader、内核拿到2440上用,那是肯定会犯错的
网上这样的文章许多,大多都只是是微观上比画两句,如摄像头驱动、主频之类,没有什么含义
细节是魔鬼,只要在细节上充沛堆集的工程师才会在技术上有生长的空间
这儿只是调集了我能找到的不同,不免不全,全部还是以datasheet为本。
1、主频不同,总线守时所要求的时钟数也会不相同,不重新设置天然串口乱码,需求设置的寄存器也不同
2440需求额定多设置一个寄存器CAMDIVN,分频比可选择的规模也比2410(1:1:1、1:2:4、1:4:4、1:2:2)多许多种,详见数据手册
2410设置完mpllcon后能够当即设置upllcon,2440则需求在两者中心刺进7条nop指令。
2440一般用400MHz而2410一般用200Hz。
2、UART
2410的串口fifo是16字节,而2440是64字节。
因为fifo深度不同,导致UFSTAT寄存器中个位的界说不一致
3、中止
2410支撑56个,2440支撑60个,
增加了INT_CAM_P、 INT_CAM_C、INT_AC97、INT_WDT(INT_WDT_AC97)
4、nand芯片驱动
2410和2440的nand驱动也十分类似,首要差异在于:
1、2410仅支撑小块nandflash,2440则一起支撑大块nandflash。
2、为支撑大块nandflash,2440增加了许多寄存器。
3、2440增加了一个操控寄存器NFCONT,原2410中config寄存器NFCONF中的部分功用被转移到NFCONT
5、SD卡驱动
2410的SD Baud rate 核算
Baud rate = PCLK / 2 / (Prescaler value + 1)
2440的SD Baud rate 核算
Baud rate = PCLK / (Prescaler value + 1)