Linux 2.6.35内核配置 armv7 s5pv210 模块加载错误









【环境】
 
1:Ubuntu 10.10
 
2:u-boot-2010.03
 
3:linux-2.6.35
 
4:优龙FS2410
 
5:交叉编译器:arm-none-linux-gnueabi-gcc version 4.3.2



1)解压内核
 


tar jxf linux-2.6.35.tar.bz2
 






2)修改顶层Makefile
 
ww.linuxidc.com@linuxidc:~/win/linux-2.6.35$ vim Makefile
 
 修改191和192行(可以先找到编译器的绝对路径)
 
ARCH        ?= arm
 
CROSS_COMPILE   ?= /home/tony/toolchain/bin/arm-none-linux-gnueabi-
 
 
 
3)拷贝配置文件 
 
ww.linuxidc.com@linuxidc:~/win/linux-2.6.35$ cp arch/arm/configs/s3c2410_defconfig .config
 
 
 
4)配置内核
 
ww.linuxidc.com@linuxidc:~/win/linux-2.6.35$ make menuconfig
 
查看类型是否为S3C2410
 
System Type --->
 
        ARM system type (Samsung S3C2410, S3C2412, S3C2413, ……)  --->
 


用新交叉编译器需选择EABI 
 
Kernel Features  --->
 
        [*] Use the ARM EABI to compile the kernel
 
        [*]   Allow old ABI binariesto run with this kernel (EXPERIMENTAL) (NEW)
 
 
 
5)将cs8900.c和cs8900.h两个文件拷贝到linux-2.6.35/drivers/net/arm/下
 
 
 
6)修改linux-2.6.35/drivers/net/arm/vim Kconfig,添加cs8900内核配置项
 
添加
 
config S3C2410_CS8900
 
    tristate "CS8900 support"
 
    depends on NET_ETHERNET && ARM && ARCH_SMDK2410
 
    ---help---
 
      support for cs8900 chipset base Ethernet cards, if you have a networkcard of this type.
 
 
 
7)修改linux-2.6.35/drivers/net/arm/vim Makefile
 
添加:obj-$(CONFIG_S3C2410_CS8900) += cs8900.o
 
 
 
8)添加地址映射定义
 
修改文件:linux-2.6.35/arch/arm/mach-s3c2410/include/mach$vim map.h
 
添加:
 
/* CS8900a */
 
#define pSMDK2410_ETH_IO    __phys_to_pfn(0x19000000)
 
#define vSMDK2410_ETH_IO    0xE0000000
 
#define SMDK2410_ETH_IRQ    IRQ_EINT9
 
 
 
9)添加平台代码
 
修改文件:linux-2.6.35/arch/arm/mach-s3c2410$vim mach-smdk2410.c
 
在59行添加一句:
 
57 static struct map_desc smdk2410_iodesc[]__initdata = {
 
58   /*nothing here yet */
 
59     {vSMDK2410_ETH_IO, pSMDK2410_ETH_IO, SZ_1M, MT_DEVICE}
 
60};
 






10)配置内核,使之支持cs8900网卡 
 
ww.linuxidc.com@linuxidc:~/win/linux-2.6.35$ make menuconfig
 
Device Drivers  --->
 
        [*] Network device support  --->
 
                [*]  Ethernet (10 or 100Mbit)  --->
 
                        <*>  CS8900 support
 
 
 
11)重新编译内核
 
ww.linuxidc.com@linuxidc:~/win/linux-2.6.35$ make zImage
 




********************************************************************
 
**        备注:如果想生成uImage                                **
 
**        cp u-boot-2010.03/tools/mkimge /usr/bin/         **
 
********************************************************************
 






12)拷贝zImage到tftpboot目录进行测试
 
ww.linuxidc.com@linuxidc:~/win/linux-2.6.35$cp arch/arm/boot/zImage /tftpboot


 






13)在开发板设置参数
 
setenv serverip 192.168.7.103


 
setenv ipaddr  192.168.7.163


 
setenv gatewayip 192.168.7.1


 
setenv ethaddr 08:00:3e:26:0a:5b


 
setenv bootcmd tftp 30800000 uImage \; bootm


 
/*** setenv bootcmd tftp 33000000 zImage \; go 33000000 如果用zImage用这个***/


 
setenv bootargs console=ttySAC0,115200 init=/linuxrc root=/dev/nfs nfsroot=192.168.7.103:/opt/filesystem ip=192.168.7.163


 
测试前提:已配置好TFTP、NFS服务
 
注①:/opt/filesystem为自己的已移植好的文件系统目录
 
注②:serverip为Ubuntu的IP,ipaddr为开发板的IP
 






14)如果想烧写到nand flash,让内核从nand启动,依次设置如下u-boot参数
 
tftp 33000000 uImage


 
nand erase 40000 300000


 
nand write 33000000 40000 300000


 
setenv bootcmd nand read 33000000 40000 300000 \; bootm 33000000


本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2011-10/45127.htm
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在当今的软件开发领域,自动化构建与发布是提升开发效率和项目质量的关键环节。Jenkins Pipeline作为一种强大的自动化工具,能够有效助力Java项目的快速构建、测试及部署。本文将详细介绍如何利用Jenkins Pipeline实现Java项目的自动化构建与发布。 Jenkins Pipeline简介 Jenkins Pipeline是运行在Jenkins上的一套工作流框架,它将原本分散在单个或多个节点上独立运行的任务串联起来,实现复杂流程的编排与可视化。它是Jenkins 2.X的核心特性之一,推动了Jenkins从持续集成(CI)向持续交付(CD)及DevOps的转变。 创建Pipeline项目 要使用Jenkins Pipeline自动化构建发布Java项目,首先需要创建Pipeline项目。具体步骤如下: 登录Jenkins,点击“新建项”,选择“Pipeline”。 输入项目名称和描述,点击“确定”。 在Pipeline脚本中定义项目字典、发版脚本和预发布脚本。 编写Pipeline脚本 Pipeline脚本是Jenkins Pipeline的核心,用于定义自动化构建和发布的流程。以下是一个简单的Pipeline脚本示例: 在上述脚本中,定义了四个阶段:Checkout、Build、Push package和Deploy/Rollback。每个阶段都可以根据实际需求进行配置和调整。 通过Jenkins Pipeline自动化构建发布Java项目,可以显著提升开发效率和项目质量。借助Pipeline,我们能够轻松实现自动化构建、测试和部署,从而提高项目的整体质量和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值