at91sam9261-ubifs成功移植

发布者:书香门第最新更新时间:2016-10-08 来源: eefocus关键字:at91sam9261  ubifs  移植 手机看文章 扫描二维码
随时随地手机看文章
based on: linux-3.6.9, 128M Nand, busybox-1.20.2
ubi命令来自busbox。
如下:
flash_eraseall /dev/mtd1
 
ubiattach /dev/ubi_ctrl -m 1
 
ubimkvol /dev/ubi0 -s 104857600 -N rootfs
 
mount -t ubifs /dev/ubi0_0 /media

由于ubifs自身占用,不可能把128M全部使用,暂时只使用100M=104857600 Bytes。
~#flash_eraseall /dev/mtd1
Erasing 128 Kibyte @ 7fc0000 - 100% complete.
~ # ubiattach /dev/ubi_ctrl -m 1
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    129024 bytes
UBI: smallest flash I/O unit:    2048
UBI: sub-page size:              512
UBI: VID header offset:          512 (aligned 512)
UBI: data offset:                2048
UBI: empty MTD device detected
UBI: max. sequence number:       0
UBI: create volume table (copy #1)
UBI: create volume table (copy #2)
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "Partition 2"
UBI: MTD device size:            127 MiB
UBI: number of good PEBs:        919
UBI: number of bad PEBs:         103
UBI: number of corrupted PEBs:   0
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     0
UBI: available PEBs:             906
UBI: total number of reserved PEBs: 13
UBI: number of PEBs reserved for bad PEB handling: 9
UBI: max/mean erase counter: 0/0
UBI: image sequence number:  -267629685
UBI: background thread "ubi_bgt0d" started, PID 868
~ # ubimkvol /dev/ubi0 -s 104857600 -N rootfs
~ # mount -t ubifs /dev/ubi0_0 /media
UBIFS: default file-system created
UBIFS: mounted UBI device 0, volume 0, name "rootfs"
UBIFS: file system size:   103606272 bytes (101178 KiB, 98 MiB, 803 LEBs)
UBIFS: journal size:       5160960 bytes (5040 KiB, 4 MiB, 40 LEBs)
UBIFS: media format:       w4/r0 (latest is w4/r0)
UBIFS: default compressor: lzo
UBIFS: reserved for root:  4893579 bytes (4778 KiB)
~#
用ramdisk启动内核,通过usb将文件系统,复制到nand flash中。
ramdisk启动内核后,插入usb:
mount -t vfat /dev/uba1 /mnt
tar -zxvf /mnt/rootfs-busy1.20.tar.gz -C /media
 
然后,需要在文件系统中vi etc/init.d/rcS
加入如下:
/sbin/ubiattach /dev/ubi_ctrl -m 1
/bin/mount -t ubifs /dev/ubi0_0 /media/

reboot
u-boot,启动参数:
setenv bootargs ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs init=/linuxrc console=ttyS0,115200
内核成功启动。
ubifs移植成功以后,以后就可以抛弃yaffs2了。半个月的时间,终于把自制fs和ubifs移植到at91sam926x上,心情大好。

## Booting kernel from Legacy Image at 20400000 ...

   Image Name:   Linux-3.6.9

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    1990904 Bytes = 1.9 MiB

   Load Address: 20008000

   Entry Point:  20008000

   Verifying Checksum ... OK

   Loading Kernel Image ... OK

OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

Booting Linux on physical CPU 0

Initializing cgroup subsys cpu

……

atmel_usart.0: ttyS0 at MMIO 0xfffff200 (irq = 17) is a ATMEL_SERIAL

console [ttyS0] enabled

atmel_usart.1: ttyS1 at MMIO 0xfffb0000 (irq = 22) is a ATMEL_SERIAL

atmel_usart.2: ttyS2 at MMIO 0xfffb4000 (irq = 23) is a ATMEL_SERIAL

……

Creating 2 MTD partitions on "atmel_nand":

0x000000000000-0x000000040000 : "Partition 1"

0x000000040000-0x000008000000 : "Partition 2"

UBI: attaching mtd1 to ubi0

UBI: physical eraseblock size:   131072 bytes (128 KiB)

UBI: logical eraseblock size:    129024 bytes

UBI: smallest flash I/O unit:    2048

UBI: sub-page size:              512

UBI: VID header offset:          512 (aligned 512)

UBI: data offset:                2048

UBI: max. sequence number:       58

UBI: attached mtd1 to ubi0

UBI: MTD device name:            "Partition 2"

UBI: MTD device size:            127 MiB

UBI: number of good PEBs:        915

UBI: number of bad PEBs:         107

UBI: number of corrupted PEBs:   0

UBI: max. allowed volumes:       128

UBI: wear-leveling threshold:    4096

UBI: number of internal volumes: 1

UBI: number of user volumes:     1

UBI: available PEBs:             39

UBI: total number of reserved PEBs: 876

UBI: number of PEBs reserved for bad PEB handling: 18

UBI: max/mean erase counter: 2/1

UBI: image sequence number:  1228014130

UBI: background thread "ubi_bgt0d" started, PID 855

……

ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver

at91_ohci at91_ohci: AT91 OHCI

at91_ohci at91_ohci: new USB bus registered, assigned bus number 1

at91_ohci at91_ohci: irq 36, io mem 0x00500000

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 2 ports detected

Initializing USB Mass Storage driver...

usbcore: registered new interface driver usb-storage

USB Mass Storage support registered.

rtc-at91sam9 rtc-at91sam9.0: rtc core: registered rtc-at91sam9 as rtc0

i2c /dev entries driver

at91sam9_wdt: sorry, watchdog is disabled

at91_wdt: probe of at91_wdt failed with error -5

softdog: Software Watchdog Timer: 0.08 initialized. soft_noboot=0 soft_margin=60 sec soft_panic=0 (nowayout=0)

……

UBIFS: mounted UBI device 0, volume 0, name "rootfs"

UBIFS: file system size:   108767232 bytes (106218 KiB, 103 MiB, 843 LEBs)

UBIFS: journal size:       5419008 bytes (5292 KiB, 5 MiB, 42 LEBs)

UBIFS: media format:       w4/r0 (latest is w4/r0)

UBIFS: default compressor: lzo

UBIFS: reserved for root:  4952683 bytes (4836 KiB)

VFS: Mounted root (ubifs filesystem) on device 0:8.

Freeing init memory: 120K

running /etc/init.d/rcS

starting udevd...

cannot open /dev/null

udevd (898): /proc/898/oom_adj is deprecated, please use /proc/898/oom_score_adj instead.

/etc/init.d/rcS: line 21: /sbin/ubiattach: not found

dm9000 dm9000.0: eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1

Please press Enter to activate this console.
关键字:at91sam9261  ubifs  移植 引用地址:at91sam9261-ubifs成功移植

上一篇:STM32F4入手调试USART,ADC-DMA
下一篇:基于STM32F10x的uC/GUI初始化设置

推荐阅读最新更新时间:2024-03-16 15:14

arm9(TQ2440)移植小结----移植准备
这里主要是准备一些必备的软件。windows下的有两个:dnw和SecureCRT(超级终端也可以),首先是测试SecureCRT,这个软件是用作串口控制台。设置很简单,按照串口的设置(protocol:serial;波特率:115200,端口根据实际选择;8位数据;1位停止位;无奇偶校验;无硬件流控制)。dnw设置一下波特率(115200)和下载地址(0x30000000)。 将程序烧入开发板有多种方式:jtag,usb和网络。关于少些开发板使用手册有详细说明。 这里说明一下在烧录uboot的时候遇到的问题。uboot作为启动程序烧写有特殊的地方。TQ2440有nand flash和nor flash两块f
[单片机]
[单片机框架] main文件的实现和RTX移植
一、 新建工程 选择芯片型号 选择中间件,勾选RTX 选择完毕后,ok解锁。 main文件内容如下,由于我对RTX函数,再封装了一层,是为了方便切换其他OS。 /******************************************************************************** * @file main.c * @author jianqiang.xue * @Version V1.0.0 * @Date 2021-04-03 * @brief 无 ************************************************************
[单片机]
[单片机框架] main文件的实现和RTX<font color='red'>移植</font>
Lumia 950 XL被移植运行了Win10X :界面自适应
IT之家 1 月 24 日消息 外媒 Windows Latest 报道,微软对 Windows 未来的愿景是为所有形态因素设计操作系统,据此可以根据软件为不同的姿态设备专门定制功能。   这个项目最初被称为 “仙女座”操作系统,它应该专注于移动设备,如手机和平板电脑。计划在 2018 年发生了变化,当时微软搁置了专注于移动设备的操作系统,并具有更多跨平台功能的想法,决定将其变成双屏安卓手机(Surface Duo)推出。   一些工作转移到了其他事情上,微软开始关注基于模块化 Windows Core OS 的 Windows 10X 系统。   此前已经有开发者让 Surface Pro 7 成功运行 Windows 1
[手机便携]
移植到STM32fl13野火开发板上遇到的问题
前些日子,在自己将uCOS移植到了野火开发板上,然后又LwIP也移植到了野火开发板,uCOS+LwIP程序很正常,基本功能测试都OK(我建立一个TCP客户端,连接服务器正常,数据收发正常),于是又想着把uCGUI也给上去,结果却遇到了问题。uCGUI加到uCOS+Lwip上编译没有问题,而且单单用uCOS+uCGUI,显示完全正常,触屏也没有问题,是只要设计到Lwip的代码,程序就死掉了,uCOS连任务切换都不会了。换句话说是uCOS+Lwip可以用,uCOS+uCGUI可以用,uCOS+uCGUI+Lwip程序死翘翘了。(stm32 库v3.3, uCOSv2,86, uCGUI v3.9, lwip v1.3.2) 为什
[单片机]
基于S3C2410处理器目标板的Linux移植
引言 嵌 人式系统就是以应用为中心、以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。ARM嵌人式 芯片是一种高性能、低功耗的RISC芯片。它由英国ARM公司设计,世界上几乎所有的主要半导体生产商都生产基于ARM体系机构的通用芯片,或在其专用芯 片中应用相关ARM技术。在2001年基于ARM内核的处理器占市场份额的75%,成为业界的龙头。 Linux 是免费发行的、快速高效的操作系统 ,Linux的出现在计算机世界引发了一场革命。Linux操作系统以代码开放、功能强大又易于移植成为嵌入式操作新兴力量。嵌人式Linux是按照嵌人 式操作系统的要求设计的一种小型操作系统,由一
[单片机]
STM32F407使用MFRC522射频卡调试及程序移植成功
本学期感测技术选修课需要做一个作品出来,用到了MFRC522射频卡模块,经历一个星期的调试,终于可以正常使用并寻卡成功了了。 成功的把C51的程序移植到了STM32上面。 现在分享一下调试过程 1、操作环境 我所使用的是STM32F407的开发板,使用STM32CubeMX配置初始代码。 MFRC522使用软件模拟SPI通信 2、关于引脚的配置 淘宝买来的模块,店家都会送资料 ,也可以点下面连接保存至网盘 链接:http://pan.baidu.com/s/1boMyMlx 1、SPI通信引脚 NSS(SDA) --------- 片选信号 SCK --------- 时钟信号 MO
[单片机]
STM32F407使用MFRC522射频卡调试及程序<font color='red'>移植</font>成功
第二章、Tiny4412 U-BOOT移植二 启动分析
一、启动过程说明 讲解启动过程,首先的源头就是打开电源,这个相信没人人不知道。CPU上电后,此时SP指针指向0x0000_0000,从这个地址取第一条指令。但此时:PLL没有启动,CPU工作频率为外部输入晶振频率,非常低 (Exynos4412 芯片边上有一颗24MHz,一颗27MHz,一颗32.768KHz);CPU的工作模式、中断设置等不确定;存储空间的各个BANK(包括内存)都没有驱动,内存(tiny4412用的DDR3)不能使用。在这种情况下必须在第一条指令处做一些初始化工作,这段初始化程序与操作系统独立分开,称之为Bootloader。下面以Samsung的U-BOOT:U-Boot-samsung-dev.tar.
[单片机]
第二章、Tiny4412 U-BOOT<font color='red'>移植</font>二 启动分析
支持向量机语音识别算法在OMAP5912上的移植
  随着语音识别和语音合成技术的不断更新与发展,将语音识别技术应用于嵌入式产品中已得到广泛应用。SVM(支持向量机)作为统汁概率模型已经被证明是一种很好的识别模型。OMAP5912处理器是由TI公司的TMS320C55X 型DSP内核与低功耗、增强型ARM926EJ-S微处理器组成的双核应用处理器。ARM核可满足控制和接口方面的需要,DSP核以其低功耗高性能来实现多媒体应用。目前存0MAP平台上实现的多媒体应用有语音、音频、图像、视频等。在实验室开发的基于0MAP5912嵌入式语音识别系统上进行基于SVM 的语音识别程序开发。   1 SVM多类分类方法   SVM最初是为处理两类分类问题而设计的,如何有效地处理多类分类问题目
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved