六、【s3c2440移植u-boot-2016-11】 优化

(一)mtd分区、时钟优化

1、修改include/configs/smdk2440.h
diff -urN u-boot-2016.11/include/configs/smdk2440.h u-boot-2016.11_s3c2440/include/configs/smdk2440.h
--- u-boot-2016.11/include/configs/smdk2440.h   2018-06-16 13:14:39.906908304 +0800
+++ u-boot-2016.11_s3c2440/include/configs/smdk2440.h   2018-06-16 13:18:11.188496279 +0800
@@ -114,6 +114,18 @@
 #define CONFIG_LZO
 #define CONFIG_LZMA

+#define CONFIG_BOOTARGS "console=ttySAC0,115200 noinitrd root=/dev/mtdblock3 init=/linuxrc"
+#define CONFIG_BOOTCOMMAND "nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0"
+#define CONFIG_RAMBOOTCOMMAND  "setenv bootargs noinitrd root=/dev/mtdblock3 " \
+                               "init=/linuxrc console=ttySAC0,115200;" \
+                               " nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0"
+
+#define CONFIG_NFSBOOTCOMMAND  "setenv bootargs console=ttySAC0,115200 root=/dev/nfs " \
+                               "nfsroot=$serverip:/home/book/nfs/nfsroot " \
+                               "ip=$ipaddr:$serverip:$gatewayip:$netmask::eth0:off init=/linuxrc; " \
+                               "nfs 30000000 $serverip:/home/book/nfs/kernel/uImage; bootm 30000000"
+
+
 /*-----------------------------------------------------------------------
  * Physical Memory Map
  */
@@ -139,11 +151,17 @@
 #define CONFIG_SYS_FLASH_BANKS_LIST     { CONFIG_SYS_FLASH_BASE }
 #define CONFIG_SYS_MAX_FLASH_SECT  (128)

-#define CONFIG_ENV_ADDR            (CONFIG_SYS_FLASH_BASE + 0x070000)
-#define CONFIG_ENV_IS_IN_FLASH
-#define CONFIG_ENV_SIZE            0x10000
-/* allow to overwrite serial and ethaddr */
-#define CONFIG_ENV_OVERWRITE
+#define CONFIG_ENV_IS_IN_NAND
+#define CONFIG_ENV_OFFSET      0x00040000
+#define CONFIG_ENV_SIZE        0x00020000
+
+#define CONFIG_CMD_MTDPARTS
+#define CONFIG_MTD_DEVICE
+#define MTDIDS_DEFAULT     "nand0=jz2440-0"  /* 哪一个设备 */
+#define MTDPARTS_DEFAULT   "mtdparts=jz2440-0:256k(u-boot),"   \
+                           "128k(params),"     \
+                           "2m(kernel),"   \
+                           "-(rootfs)"     \

 /*
  * Size of malloc() pool
2、修复之前存在时钟FCLK不是400MHZ的BUG,修改board/samsung/smdk2440/smdk2440.c
diff -urN u-boot-2016.11/board/samsung/smdk2440/smdk2440.c u-boot-2016.11_s3c2440/board/samsung/smdk2440/smdk2440.c
--- u-boot-2016.11/board/samsung/smdk2440/smdk2440.c    2018-06-16 13:14:39.906908304 +0800
+++ u-boot-2016.11_s3c2440/board/samsung/smdk2440/smdk2440.c    2018-06-16 13:17:40.605212280 +0800
@@ -58,11 +58,11 @@
    struct s3c24x0_gpio * const gpio = s3c24x0_get_base_gpio();

    /* to reduce PLL lock time, adjust the LOCKTIME register */
-   writel(0xFFFFFF, &clk_power->locktime);
+   //writel(0xFFFFFF, &clk_power->locktime);

    /* configure MPLL */
-   writel((M_MDIV << 12) + (M_PDIV << 4) + M_SDIV,
-          &clk_power->mpllcon);
+   //writel((M_MDIV << 12) + (M_PDIV << 4) + M_SDIV,
+   //       &clk_power->mpllcon);

    /* some delay between MPLL and UPLL */
    pll_delay(4000);
3、修改Kconfig
diff -urN u-boot-2016.11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值