kernel 2.6.35.7向S5PV210移植

发布者:Xingfu8888最新更新时间:2024-12-27 来源: cnblogs关键字:kernel  6  7  S5PV210  移植 手机看文章 扫描二维码
随时随地手机看文章

ARCH和CROSS_COMPILE配置

  不详述,改就对了。


错误1

  未出现Uncompressing Linux... done, booting the kernel.。

  解压地址应当等于链接地址,否则自解压之后不可运行。

  链接的物理地址可以在head.S的开头看到。那么解压缩地址在哪呢?


// 内核运行的虚拟地址 0xC0008000

#define KERNEL_RAM_VADDR (PAGE_OFFSET + TEXT_OFFSET)

// 内核运行的物理地址 0x30008000

#define KERNEL_RAM_PADDR (PHYS_OFFSET + TEXT_OFFSET)

  arch/arm/mach-s5pv210/Makefile.boot其中定义了解压缩地址。


# override for SMDKV210

zreladdr-$(CONFIG_MACH_SMDKV210) := 0x30008000

params_phys-$(CONFIG_MACH_SMDKV210) := 0x30000100

  改为如上。改完之后,就可以运行解压缩了。

  之后再修改内核运行的物理地址(原本PHYS_OFFEST是0x2000_0000)为0x3000_0000


错误2

Unable to handle kernel NULL pointer dereference at virtual address 00000060

Internal error: Oops: 5 [#1] PREEMPT

PC is at dev_driver_string+0xc/0x44

LR is at max8698_pmic_probe+0x150/0x32c

  说明在这两个函数出现了问题。考虑到之前uboot移植中,smdkc110使用了电源管理模块,那么这里也可以推测是电源管理模块出现了问题。

  解决办法就是在内核配置中去除该模块。直接在MENUCONFIG中搜索MAX8696,关掉就可以。


错误3

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

  panic应该是一个比较严重的错误。说白了就是没识别块设备。这里的识别应当就是inand。这里应当是驱动的问题。

  MBR往往在SD0扇区。用于描述块设备分区信息。这里不好修改。


错误4

[    1.130308] dm9000 Ethernet Driver, V1.31

[    1.133113] ERROR : resetting 

[    1.135700] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.140915] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.145941] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.150963] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.155992] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.161018] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.166041] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.171070] dm9000 dm9000.0: read wrong id 0x2b2a2928

[    1.176092] dm9000 dm9000.0: wrong id: 0x2b2a2928

[    1.180774] dm9000 dm9000.0: not found (-19).

  mach-smdkc110.c中smdkc110_machine_init硬件初始化存在问题。

  smdkc110_devices和smdkc110_dm9000_set()这两个地方是和DM9000有关的,要分别去做移植。

  DM9000相关的数据配置在arch/arm/plat-s5p/devs.c中更改

  在arch/arm/mach-s5pv210/include/mach/map.h中定义了DM9000的IO基地址,和DM9000接在哪个bank有关。

  还有+2改成+4,IRQ_EINT9改成10即可。


关键字:kernel  6  7  S5PV210  移植 引用地址:kernel 2.6.35.7向S5PV210移植

上一篇:[project X] tiny210(s5pv210)上电启动流程(BL0-BL2)
下一篇:基于Linux 3.0.8 Samsung FIMC(S5PV210) 的摄像头驱动框架解读(一)

推荐阅读最新更新时间:2026-03-10 21:43

STM32CUBEMX(7)--移植雅特力AT32F403AVGT(兼容STM32F103VGT6),DAC输出电压
概述 本篇文章主要介绍如何使用 STM32 CubeMX移植到雅特力AT32F403AVGT7,并通过 DAC 输出电压,在 芯片 中有2个12位的DAC口可以供选择。 硬件 准备 首先需要准备一个开发板,这里我准备的是雅特力AT32F403AVGT7的开发板: 述 选择芯片型号 雅特力AT32F403AVGT7兼容STM32F103系列,故选取STM32f103VG进行开发。 配置 时钟 源 HSE与LSE分别为外部高速时钟和低速时钟,在本文中使用内置的时钟源,故都选择Disable选项,如下所示: 配置时钟树 雅特力AT32F403AVGT7最高频率到240M,但是STM32F1的最高主频到72M,同时使用不
[单片机]
STM32CUBEMX(<font color='red'>7</font>)--<font color='red'>移植</font>雅特力AT32F403AVGT(兼容STM32F103VGT<font color='red'>6</font>),DAC输出电压
tslib移植(针对s5pv210,cw210开发板)
tslib移植:   tslib是为了控制触摸屏的开源程序,那么为了用于我的开发板(cortex-a8系列的cw210开发板),那么要有特定的配置才能用于指定的开发板。 1.下载tslib-1.4.tar.gz 2.解压: ##tar zxvf tslib-1.4.tar.gz 3.配置: ##cd tslib ##./autogen.sh ##./configure --prefix=$(pwd)/_install --host=arm-linux ac_cv_func_malloc_0_nonnull=yes ps:--prefix=$(pwd)/_install是指定安装目录为当前目录的_install目录 --host
[单片机]
tslib<font color='red'>移植</font>(针对<font color='red'>s5pv210</font>,cw210开发板)
tiny210(s5pv210)移植u-boot(基于 2014.4 版本号)——NAND 启动
我们知道 s5pv210启动方式有非常多种,sd卡和nand flash 启动就是当中的两种,前面我们实现的都是基于sd卡启动,这节我们開始实现从nand flash 启动: 从 NAND 启动 u-boot,须要 BL1 初始化 NAND 控制器,然后从 NAND 拷贝 BL2 到 DDR 内存。这里的BL1 即我们移植的 u-boot-spl.bin,BL2 即我们移植的 u-boot.bin。在 u-boot.bin 中的 NAND 驱动比較大,它包括了非常多功能,而 u-boot-spl.bin 中仅仅须要从 NAND 拷贝BL2 到 DDR 即可了,因此我们能够在 u-boot-spl.bin 进行简单的 N
[单片机]
tiny210(<font color='red'>s5pv210</font>)<font color='red'>移植</font>u-boot(基于 2014.4 版本号)——NAND 启动
第七章之S5PV210移植到Nandflash
1,之前的操作都是基于SD卡进行运行的,如今在Nandfalsh中运行u-boot.因为s5p_goni.h配置文件没有配置Nand相关文件,所以先配置Nand文件. 在include/configs/s5p_goni.h中添加一个:#define CONFIG_CMD_NAND 2,根据board_init_r函数中nand_init()如下图: 3,进行nand_init(); 4,所以配置文件还需要添加#defnie CONFIG_SYS_MAX_NAND_DEVICE 1,及其 nand基地址#define CONFIG_SYS_NAND_BASE  0xB0E00000 5,查看common/Makefi
[单片机]
第七章之<font color='red'>S5PV210</font><font color='red'>移植</font>到Nandflash
Linux移植之内核启动过程start_kernel函数简析
在Linux移植之内核启动过程引导阶段分析中从arch/arm/kernel/head.S开始分析,最后分析到课start_kernel这个C函数,下面就简单分析下这个函数,因为涉及到Linux的内容较多,这里只是简单介绍下内核启动流程。先看一下内核启动的流程框图,截图来自《嵌入式Linux应用开发完全手册》。内核引导阶段已经分析过,接下来分析一下内核启动的第二阶段。 1、start_kernel函数全局概览 2、start_kernel函数调用层次 1、start_kernel函数全局概览,对start_kernel作一下粗略注释。 打开initMain.c ,下面主要分析处理UBOOT传入的参数,其中r1是传入的第一个参
[单片机]
Linux<font color='red'>移植</font>之内核启动过程start_<font color='red'>kernel</font>函数简析
[linux kernel]内核移植过程记录
系统版本:Ubuntu18.04-64 编译器版本:gcc version 7.4.0 (Ubuntu/Linaro 7.4.0-1ubuntu1~18.04.1) uboot版本:2018.07 -linux4sam_6.0 板子型号:at91sama5d3x-xplained MCU型号:sama5d36 内核移植主要是裁剪一些不需要的功能,使用对应的交叉工具链把内核重新编译,设备树文件按照硬件去配置。 一、配置文件路径 arch/arm/configs/sama5_defconfig //配置文件路径 arch/arm/configs/sama5_defconfig //声明环境变量,指定
[单片机]
[linux <font color='red'>kernel</font>]内核<font color='red'>移植</font>过程记录
Cortex-A8开发板,选择S5PV210还是AM335X?
随着手机和平板等移动市场的持续火爆,ARM低功耗高效率内核技术越来越受重视,国内各大企业相继卷入移动平台,华为、联想、小米、魅族、阿里巴巴等,都已经和ARM有了深度的合作。 图1 据ARM中国代理商米尔科技统计,2009年,ARM在纳斯达克股票均价6.04美元,2013年,ARM纳斯达克股票均价已经升到了44.54美元,四年之间涨了将近八倍。 而作为ARM的一个关键转型产品,Cortex-A8备受瞩目,因其可在Android、Linux和WinCE系统之间切换,所以在手机、平板、工控三大领域得到了大量的应用。 接下来就Cortex-A8的发展过程做一个简要叙述,看看这个关键的过渡技术有怎样的历史。 Cortex-A8
[单片机]
Cortex-A8开发板,选择<font color='red'>S5PV210</font>还是AM3<font color='red'>35</font>X?
S3C-2416 kernel (linux-2.6.35-rc3)编译过程
一、 编译错误更改 1. linux-2.6.35-rc3\arch\arm\mach-s3c2416\kconfig中增加: config MACH_SMDK2416 bool SMDK2416 select CPU_S3C2416 select S3C_DEV_FB select S3C_DEV_NAND #add by ltls select S3C_DEV_USB_HOST #add by ltls select S3C_DEV_SMDK #add by ltls select S3C_DEV_HSMMC select S3C_DEV_HSMMC
[单片机]
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved