Hi, all
I run TI_Android_GingerBread_2_3 on my AM3517 board, our nand flash is MT29F2G16(NAND device: Manufacturer ID: 0x2c, Chip ID: 0xca (Micron )). I use readonly ubifs to holt android filesystem, and /data is mounted as yaffs2. My application have to insert data to sqlite database frequently and delete some data from database every 30minute.
My kernel ( Linux-2.6.37-g06ebbba-dirty) configs as bellow:
#
# Disk-On-Chip Device Drivers
#
# CONFIG_MTD_DOC2000 is not set
# CONFIG_MTD_DOC2001 is not set
# CONFIG_MTD_DOC2001PLUS is not set
CONFIG_MTD_NAND_IDS=y
CONFIG_MTD_NAND_ECC=y
# CONFIG_MTD_NAND_ECC_SMC is not set
CONFIG_MTD_NAND=y
# CONFIG_MTD_NAND_VERIFY_WRITE is not set
# CONFIG_MTD_SM_COMMON is not set
# CONFIG_MTD_NAND_MUSEUM_IDS is not set
# CONFIG_MTD_NAND_GPIO is not set
CONFIG_MTD_NAND_OMAP2=y
# CONFIG_MTD_NAND_DISKONCHIP is not set
# CONFIG_MTD_NAND_NANDSIM is not set
# CONFIG_MTD_NAND_PLATFORM is not set
# CONFIG_MTD_ALAUDA is not set
# CONFIG_MTD_ONENAND is not set
I found data in nand have bit changed, this will direct to applicat cann't run or android system cann't run
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Linux version 2.6.37-g06ebbba-dirty (root@agioeandroid) (gcc version 4.4.3 (GCC) ) #19 Mon Jul 9 17:02:47 CST 2012
CPU: ARMv7 Processor [411fc087] revision 7 (ARMv7), cr=10c53c7f
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
Machine: OMAP3517/AM3517 EVM
Reserving 8388608 bytes SDRAM for VRAM
Memory policy: ECC disabled, Data cache writeback
AM3517 ES1.1 (l2cache sgx neon isp )
SRAM: Mapped pa 0x40200000 to va 0xfe400000 size: 0x10000
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 62976
Kernel command line: console=ttyO2,115200n8 ro ubi.mtd=4,2048 root=ubi0:rootfs rootfstype=ubifs eth=08:00:28:0f:2b:3f ip=192.168.51.205 init=/init mem=256M noinitrd androidboot.console=ttyO2 vram=8M omapfb.vram=0:8M omapfb.rotate=0 omapfb.rotate_type=1 omap_vout.vid1_static_vrfb_alloc=y omapfb.mode=dvi:800x480MR-16 omapdss.def_disp=dvi
PID hash table entries: 1024 (order: 0, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 248MB = 248MB total
Memory: 244700k/244700k available, 17444k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
vmalloc : 0xd0800000 - 0xf8000000 ( 632 MB)
lowmem : 0xc0000000 - 0xd0000000 ( 256 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.init : 0xc0008000 - 0xc003d000 ( 212 kB)
.text : 0xc003d000 - 0xc05c0000 (5644 kB)
.data : 0xc05c0000 - 0xc0603cc0 ( 272 kB)
NR_IRQS:375
Clocking rate (Crystal/Core/MPU): 26.0/332/500 MHz
Reprogramming SDRC clock to 332000000 Hz
dpll3_m2_clk rate change failed: -22
IRQ: Found an INTC at 0xfa200000 (revision 4.0) with 96 interrupts
Total of 96 interrupts on 1 active controller
GPMC revision 5.0
Trying to install interrupt handler for IRQ368
Trying to install interrupt handler for IRQ369
Trying to install interrupt handler for IRQ370
Trying to install interrupt handler for IRQ371
Trying to install interrupt handler for IRQ372
Trying to install interrupt handler for IRQ373
Trying to install interrupt handler for IRQ374
Trying to install type control for IRQ375
Trying to set irq flags for IRQ375
OMAP clockevent source: GPTIMER1 at 32768 Hz
Console: colour dummy device 80x30
Calibrating delay loop... 499.92 BogoMIPS (lpj=1949696)
pid_max: default: 32768 minimum: 301
Security Framework initialized
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
regulator: core version 0.5
regulator: dummy:
NET: Registered protocol family 16
OMAP GPIO hardware version 2.5
OMAP GPIO hardware version 2.5
OMAP GPIO hardware version 2.5
OMAP GPIO hardware version 2.5
OMAP GPIO hardware version 2.5
OMAP GPIO hardware version 2.5
omap_mux_init: Add partition: #1: core, flags: 0
hw-breakpoint: debug architecture 0x4 unsupported.
OMAP DMA hardware revision 4.0
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
omap_device: omap_i2c.1: new worst case activate latency 0: 30517
omap_i2c omap_i2c.1: bus 1 rev3.12 at 400 kHz
omap_i2c omap_i2c.2: bus 2 rev3.12 at 400 kHz
omap_device: omap_i2c.2: new worst case deactivate latency 0: 30517
omap_i2c omap_i2c.3: bus 3 rev3.12 at 400 kHz
Advanced Linux Sound Architecture Driver Version 1.0.23.
Switching to clocksource 32k_counter
musb-hdrc: version 6.0, otg (peripheral+host), debug=0
musb-hdrc musb-hdrc.0: dma type: dma-cppi41
<6>Waiting for PHY clock good...
musb-hdrc musb-hdrc.0: MUSB HDRC host driver
musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 1
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: MUSB HDRC host driver
usb usb1: Manufacturer: Linux 2.6.37-g06ebbba-dirty musb-hcd
usb usb1: SerialNumber: musb-hdrc.0
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
musb-hdrc musb-hdrc.0: USB Host mode controller at d0810000 using DMA, IRQ 71
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
NetWinder Floating Point Emulator V0.97 (double precision)
omap_init_opp_table: no hwmod or odev for iva, [9] cannot add OPPs.
AM3517 Linux PSP version 04.02.00.07 (AM3517EVM)
ashmem: initialized
VFS: Disk quotas dquot_6.5.2
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
msgmni has been set to 477
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
OMAP DSS rev 2.0
omapdss supply vdds_dsi not found, using dummy regulator
OMAP DISPC rev 3.0
omapdss supply vdda_dac not found, using dummy regulator
OMAP VENC rev 2
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
omap_uart.0: ttyO0 at MMIO 0x4806a000 (irq = 72) is a OMAP UART0
omap_uart.1: ttyO1 at MMIO 0x4806c000 (irq = 73) is a OMAP UART1
omap_uart.2: ttyO2 at MMIO 0x49020000 (irq = 74) is a OMAP UART2
console [ttyO2] enabled
omap_uart omap_uart.3: no irq resource:( ?
omap_uart,3,1,omap_uart.3
brd: module loaded
loop: module loaded
mtdoops: mtd device (mtddev=name/number) must be supplied
omap2-nand driver initializing
NAND ID:
2c ca 90 d5 06 00 00 00
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xca (Micron )
mtd->oobsize=64
NAND_ECC_HW selectd
Scanning device for bad blocks
Bad eraseblock 786 at 0x000006240000
Creating 6 MTD partitions on "omap2-nand.0":
0x000000000000-0x000000080000 : "xloader-nand"
mtd: Giving out device 0 to xloader-nand
0x000000080000-0x000000240000 : "uboot-nand"
mtd: Giving out device 1 to uboot-nand
0x000000240000-0x000000280000 : "params-nand"
mtd: Giving out device 2 to params-nand
0x000000280000-0x000000780000 : "linux-nand"
mtd: Giving out device 3 to linux-nand
0x000000780000-0x000004780000 : "cramfs-nand"
mtd: Giving out device 4 to cramfs-nand
0x000004780000-0x000010000000 : "yaffs2-nand"
mtd: Giving out device 5 to yaffs2-nand
UBI: attaching mtd4 to ubi0
UBI: physical eraseblock size: 131072 bytes (128 KiB)
UBI: logical eraseblock size: 126976 bytes
UBI: smallest flash I/O unit: 2048
UBI: sub-page size: 512
UBI: VID header offset: 2048 (aligned 2048)
UBI: data offset: 4096
UBI: max. sequence number: 2
UBI: attached mtd4 to ubi0
UBI: MTD device name: "cramfs-nand"
UBI: MTD device size: 64 MiB
UBI: number of good PEBs: 512
UBI: number of bad PEBs: 0
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: 0
UBI: total number of reserved PEBs: 512
UBI: number of PEBs reserved for bad PEB handling: 5
UBI: max/mean erase counter: 1/0
UBI: image sequence number: 166996259
UBI: background thread "ubi_bgt0d" started, PID 539
vcan: Virtual CAN interface driver
CAN device driver interface
TI High End CAN Controller Driver 0.7
ti_hecc ti_hecc: device registered (reg_base=d0880000, irq=24)
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver dm9601
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
ohci-omap3 ohci-omap3.0: OMAP3 OHCI Host Controller
ohci-omap3 ohci-omap3.0: new USB bus registered, assigned bus number 2
ohci-omap3 ohci-omap3.0: irq 76, io mem 0x48064400
usb usb2: New USB device found, idVendor=1d6b, idProduct=0001
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: OMAP3 OHCI Host Controller
usb usb2: Manufacturer: Linux 2.6.37-g06ebbba-dirty ohci_hcd
usb usb2: SerialNumber: ohci-omap3.0
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 3 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbtest
android init
android_probe pdata: c05d02fc
f_acm init
android_register_function acm
f_adb init
android_register_function adb
f_mass_storage init
android_register_function usb_mass_storage
f_mtp init
android_register_function mtp
mice: PS/2 mouse device common for all mice
tsc2004_probe: now pendown state=0
tsc2004_probe: set to 800X480
tsc2004_init_irq: default irq gpio value =1
input: TSC2004 Touchscreen as /devices/virtual/input/input0
tsc2004 2-004b: tsc2004_probe ok
using rtc device, tps65910_rtc, for alarms
tps65910_rtc tps65910_rtc: rtc core: registered tps65910_rtc as rtc0
TPS65910 RTC device successfully registered
i2c /dev entries driver
Linux video capture interface: v2.00
usbcore: registered new interface driver uvcvideo
USB Video Class driver (v1.0.0)
vpfe_init
vpfe_register_ccdc_device: DM6446 CCDC
vpfe capture not initialized
dm644x_ccdc: probe of dm644x_ccdc failed with error -14
omap_device: omap_wdt.-1: new worst case activate latency 0: 30517
OMAP Watchdog Timer Rev 0x31: initial timeout 60 sec
device-mapper: uevent: version 1.0.3
device-mapper: ioctl: 4.18.0-ioctl (2010-06-29) initialised: dm-devel@redhat.com
mmc0: mmc_rescan: trying to init card at 400000 Hz
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
logger: created 64K log 'log_main'
logger: created 256K log 'log_events'
logger: created 64K log 'log_radio'
logger: created 64K log 'log_system'
usbcore: registered new interface driver snd-usb-audio
OMAP3517 / AM3517 EVM SoC init
ALSA device list:
#0: Dummy 1
oprofile: hardware counters not available
oprofile: using timer interrupt.
TCP cubic registered
Initializing XFRM netlink socket
NET: Registered protocol family 17
NET: Registered protocol family 15
can: controller area network core (rev 20090105 abi 8)
NET: Registered protocol family 29
can: raw protocol (rev 20090105)
can: broadcast manager protocol (rev 20090105 t)
Registering the dns_resolver key type
VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 1
ThumbEE CPU extension supported.
am3517_vdd_data_configure: PMIC info requried to configure vdd_mpu notpopulated.Hence cannot initialize vdd_mpu
am3517_vdd_data_configure: PMIC info requried to configure vdd_core notpopulated.Hence cannot initialize vdd_core
omap_voltage_scale_vdd: No voltage scale API registered for vdd_mpu
omap_voltage_scale_vdd: No voltage scale API registered for vdd_core
Power Management for TI OMAP3.
clock: disabling unused clocks to save power
fbcvt: 800x480@60: CVT Name - .384M9-R
usb 2-1: new low speed USB device using ohci-omap3 and address 2
tps65910_rtc tps65910_rtc: setting system clock to 2012-07-10 10:45:25 UTC (1341917125)
omap_vout omap_vout: Buffer Size = 3686400
omap_vout omap_vout: : registered and initialized video device 0
omap_vout omap_vout: Buffer Size = 3686400
omap_vout omap_vout: : registered and initialized video device 1
usb 2-1: device descriptor read/64, error -62
usb 2-1: device descriptor read/64, error -62
net eth0: no phy, defaulting to 100/full
usb 2-1: new low speed USB device using ohci-omap3 and address 3
usb 2-1: device descriptor read/64, error -62
usb 2-1: device descriptor read/64, error -62
usb 2-1: new low speed USB device using ohci-omap3 and address 4
IP-Config: Guessing netmask 255.255.255.0
IP-Config: Complete:
device=eth0, addr=192.168.51.205, mask=255.255.255.0, gw=255.255.255.255,
host=192.168.51.205, domain=, nis-domain=(none),
bootserver=255.255.255.255, rootserver=255.255.255.255, rootpath=
UBIFS: mounted UBI device 0, volume 0, name "rootfs"
UBIFS: mounted read-only
UBIFS: file system size: 62472192 bytes (61008 KiB, 59 MiB, 492 LEBs)
UBIFS: journal size: 8634368 bytes (8432 KiB, 8 MiB, 68 LEBs)
UBIFS: media format: w4/r0 (latest is w4/r0)
UBIFS: default compressor: lzo
UBIFS: reserved for root: 0 bytes (0 KiB)
VFS: Mounted root (ubifs filesystem) readonly on device 0:13.
Freeing init memory: 212K
usb 2-1: device not accepting address 4, error -62
mtdblock_open
ok
yaffs: dev is 32505861 name is "mtdblock5" rw
yaffs: passed flags ""
usb 2-1: new low speed USB device using ohci-omap3 and address 5
init (1): /proc/1/oom_adj is deprecated, please use /proc/1/oom_score_adj instead.
usb 2-1: device not accepting address 5, error -62
hub 2-0:1.0: unable to enumerate USB device on port 1
/ # warning: `zygote' uses 32-bit capabilities (legacy support in use)