发一个我编译的最小Linux镜像,这个是为了测试最小能做到什么程度而做的镜像。
这个镜像是个linux系统,没有网络部分,只有有基本的命令行,库文件基本删的剩下必须的文件了,从加电到出现命令行提示符,大约8秒,按我的水平基本算优化到极限了。用sunxi-fel刷到spi上就可以用。
再次强调,只有命令行,大家不要要求太高,玩玩就可以了。
镜像下载: Licheepi_nano_spi.rar
最近编辑记录 ippen (2018-08-11 00:17:23)
离线
好像有个做串口屏的也用了这个nano方案,号称3秒内到图形界面,不知如何做到的
离线
我现在裸奔都用了3s启动到图形界面,3M的image,实在是SPI太慢了点
离线
离线
达克罗德 说:好像有个做串口屏的也用了这个nano方案,号称3秒内到图形界面,不知如何做到的
你说的这个应该是深圳那家公司做的 HMI 产品,
他们在本站有做广告,
但是一下子没有找到链接.
他们没有用 f1c100s方案, 这个速度达不到流畅的效果。
那个宣称3秒的是 V3s + camdroid 做的.
据说后面出了一个更经济的方案.
更经济的方案用的600mhz,qfn88的芯片,大家都猜就是f1c100s。他也号称3秒内启动。
【智能串口屏 Z6s SuperView 4.3寸 Linux HMI 类Android 非迪文】http://m.tb.cn/h.33Ijw2P?sm=adf540 点击链接,再选择浏览器咑閞;或復·制这段描述€pj3bb1GTWy7€后到?淘♂寳♀?
离线
离线
f1c100s可以超频使用,我都超到800mhz用。从图上来看我觉得更像是qfn,qfp的话伸出来管脚会更明显
离线
我观察启动过程,到最后挂载根文件系统有大约2秒停顿,估计是在解压根文件系统,不知道这部分有没有优化空间。
猜测如果能处理好,预计启动能在5秒内
离线
https://whycan.cn/files/members/3/TB2V0Mawb5YBuNjSspoXXbeNFXa_352116497.jpg
https://whycan.cn/files/members/3/TB2SemnwDJYBeNjy1zeXXahzVXa_352116497.jpg
Its default is 408MHz.
f1c100s 官方标称 408Mhz, 不是600Mhz, 还有,
从图上看起来好像是 QFP 封装, 引脚伸出来那种(不知道有没有高清大图), 我大概猜到了是什么芯片.
先去求证一下.
我觉得这个应该就是F1C100S
从spiflash的尺寸和芯片尺寸大小比例看,主芯片明显没可能是128脚的QFP封装,而更像是qfn88
另外,从F1C100s引脚的用途,spiflash和晶振的位置,与F1C100s的引脚一致性很高,都是就近摆放原件
离线
晕哥 说:https://whycan.cn/files/members/3/TB2V0Mawb5YBuNjSspoXXbeNFXa_352116497.jpg
https://whycan.cn/files/members/3/TB2SemnwDJYBeNjy1zeXXahzVXa_352116497.jpg
Its default is 408MHz.
f1c100s 官方标称 408Mhz, 不是600Mhz, 还有,
从图上看起来好像是 QFP 封装, 引脚伸出来那种(不知道有没有高清大图), 我大概猜到了是什么芯片.
先去求证一下.我觉得这个应该就是F1C100S
从spiflash的尺寸和芯片尺寸大小比例看,主芯片明显没可能是128脚的QFP封装,而更像是qfn88
另外,从F1C100s引脚的用途,spiflash和晶振的位置,与F1C100s的引脚一致性很高,都是就近摆放原件
是,从比例上看也只有qfn88大小,几乎可以肯定是了
离线
无意中去搜了一下中科世维的组态屏, 看起来还挺不错 https://item.taobao.com/item.htm?id=571394563358
离线
这是我们公司买的 Z6s HMI 屏,对了一下引脚,发现果然是 f1c100s,
然后短路 flash的 1,4脚, 欢快进入 Onda USB驱动程序, 所以就是全志的 c100s 了
再把USB线插入电脑,显示一个 ADB 设备(Android调试接口),
看来是运行一个 Linux了.
离线
用的应该是Camdroid
离线
这编辑器功能强大, 思路不错,应该是编译成 .so 文件, 然后通过 adb 推送到 flash去, 然后就把UI跑起来了.
看菜单有调试, 代码编辑器也可以打断点, 但是实际上我没有发现有调试功能, 或许有,只是我没有发现。
离线
4.3寸800*480电容屏,159元,真便宜啊。
离线
这个串口屏 666
离线
HELLO! BOOT0 is starting!
boot0 commit : 79d2fe0388f5367fe2f42cc3eb1db9113426c15d
boot0 version : 4.0
run key detect boot0
do_key_test
reg_val=0x00000000----------------------
dram size =32
Reg pull reg_val=0x00000000,read=0x00000010
Succeed in reading toc file head.
The size of toc is 00050000.
Entry_name = u-boot
Ready to disable icache.
Jump to secend Boot.
\07board/sunxi/common/board_common.c 510--nodeoffset = 623c
U-Boot 2014.07 (Mar 31 2018 - 15:55:09) Allwinner Technology
uboot commit : 79d2fe0388f5367fe2f42cc3eb1db9113426c15d
uboot:normal mode
[ 0.123]pmbus: ready
run key detect
0x0
DRAM: 32 MiB
Relocation Offset is: 017b9000
In: serial
Out: serial
Err: serial
workmode = 0,storage type = 3
[ 0.153]spinor: 0
sunxi spinor is initing...int sunxi_dma_init---
sunxi_dma_install_int ok
sunxi_dma_install_int ok
OK
[ 0.156]sunxi flash init ok
[ 0.157]sunxi flash init ok
*(uint32_t *)(0x81ff0000)=0
sunxi secure storage is not supported
private partition is not exist
--------fastboot partitions--------
-total partitions:4-
-name- -start- -size-
boot : 4000 f0000
env : f4000 20000
rootfs : 114000 ea000
UDISK : 1fe000 0
-----------------------------------
base bootcmd=run setargs_mmc boot_normal
bootcmd set setargs_nand
fix bootcmd=run setargs_mmc boot_normal
key 0
cant find recovery value
cant find fastboot value
no misc partition is found
to be run cmd=run setargs_mmc boot_normal
common/fdt_support.c 540--blob = 0x8096e120
emmc or nand path error: <no error>
common/board_r.c 305-initr_sunxi_base-END--
[ 0.208]inter uboot shell
Hit any key to stop autoboot: 0
read partition: boot or recovery
boota: bad boot image magic, maybe not a boot.img?
try to read partition(boot) all
[ 0.281]sunxi flash read :offset 4000, 983040 bytes OK
## Booting kernel from Legacy Image at 80007800 ...
Image Name: Linux-3.10.65
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 967384 Bytes = 944.7 KiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ...
OK
## Transferring control to Linux (at address 80008000)...
arch/arm/lib/bootm.c 72 Starting kernel ...
--r2 0x8096e120,images->ft_len= = 0 , working_fdt = 8096e120, bi_boot_params = 0 fake = 0
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.10.65 (root@LicheepiNano) (gcc version 4.5.1 (Sourcery G++ Lite 2010.09-50) ) #35 Fri Aug 10 23:59:23 CST 2018
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] Machine: Allwinner A1X (Device Tree), model: sunivw1p1
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] Memory policy: ECC disabled, Data cache writethrough
[ 0.000000] On node 0 totalpages: 8192
[ 0.000000] free_area_init_node: node 0, pgdat c029ba60, node_mem_map c02aa000
[ 0.000000] Normal zone: 64 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 8192 pages, LIFO batch:0
[ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[ 0.000000] pcpu-alloc: [0] 0
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
[ 0.000000] Kernel command line: earlyprintk=sunxi-uart,0x01c25000 loglevel=8 initcall_debug=1 console=ttyS1 init=/init root=/dev/mtdblock3
[ 0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[ 0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Memory: 32MB = 32MB total
[ 0.000000] Memory: 29556k/29556k available, 3212k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xc2800000 - 0xff000000 ( 968 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xc2000000 ( 32 MB)
[ 0.000000] .text : 0xc0008000 - 0xc0264dec (2420 kB)
[ 0.000000] .init : 0xc0265000 - 0xc027b258 ( 89 kB)
[ 0.000000] .data : 0xc027c000 - 0xc029c0a0 ( 129 kB)
[ 0.000000] .bss : 0xc029c0a0 - 0xc02a9430 ( 53 kB)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS:256
[ 0.000000] of_sunxi_clocks_init : sunxi_clk_base[0xf1c20000]
[ 0.000000] pll_cpu-set_default_rate=528000000 success!
[ 0.000000] pll_video-set_default_rate=297000000 success!
[ 0.000000] pll_ddr-set_default_rate=312000000 success!
[ 0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms
[ 0.000000] Console: colour dummy device 80x30
[ 0.005253] Calibrating delay loop... 262.96 BogoMIPS (lpj=1314816)
[ 0.075321] pid_max: default: 32768 minimum: 301
[ 0.080432] Mount-cache hash table entries: 512
[ 0.086271] CPU: Testing write buffer coherency: ok
[ 0.091959] Setting up static identity map for 0xc01d7220 - 0xc01d7278
[ 0.101300] devtmpfs: initialized
[ 0.106363] pinctrl core: initialized pinctrl subsystem
[ 0.112705] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.120251] dump_class_init,821, success
[ 0.129196] sunivw1p1-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.151065] bio: create slab <bio-0> at 0
[ 0.156939] SCSI subsystem initialized
[ 0.160985] usbcore: registered new interface driver usbfs
[ 0.166776] usbcore: registered new interface driver hub
[ 0.172493] usbcore: registered new device driver usb
[ 0.178378] [pm]aw_pm_init!
[ 0.181586] [pm]aw_pm_valid!
[ 0.184642] Notice: sunivw1p1 just support normal standby.
[ 0.190203] [pm]aw_pm_valid!
[ 0.193195] Notice: sunivw1p1 just support normal standby.
[ 0.198959] Switching to clocksource suniv high-res couter
[ 0.247009] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.253464] NTFS driver 2.1.30 [Flags: R/O].
[ 0.258832] msgmni has been set to 57
[ 0.262725] io scheduler noop registered
[ 0.266836] io scheduler deadline registered
[ 0.271266] io scheduler cfq registered (default)
试了一下楼主的固件, 速度是挺快的, 但是烧到我的 W25Q64 上, 约4秒多一点, 启动到这里就没有然后了。
最近编辑记录 firstman (2019-05-11 16:57:01)
离线