您尚未登录。

#1 Re: 全志 SOC » V3s SPI NAND u-boot @openwrt » 2022-01-24 14:42:31

ultrawise 说:

有可能把spi-nand启动这部分,移植到主线uboot+主线linux上么?
平台:v3s
系统:主线uboot+主线linux

主线的linux早就已经支持了,主线u-boot还需要脚本进行处理才能启动。

#3 Re: 全志 SOC » f1c200s(tiny200) linux+emwin稳定运行 » 2020-06-28 13:45:38

armstrong 说:

不需要破解的,只要自定义一个GUI_DEVICE_API,然后传递给GUI_DEVICE_CreateAndLink()即可。
别用nuvoton内置的GUIDRV_LIN_16、GUIDRV_LIN_24、GUIDRV_LIN_32这类驱动就行。

现在就是用的这种方法,但是内部初始化的时候校验了新唐的芯片参数,只是跳过了这个校验过程,还有库里面的jpeg解码也调用到了新唐的硬件解码器,所以替换了jpeg解码部分。

#4 Re: 好钜润半导体(TIKY) » 入坑TKM32F499 » 2020-06-24 16:11:37

发现他们提供的库文件全是从stm32f1的库里面改出来的,好歹是颗M4的mcu,要改的话也要从stm32f4的库里面改啊,现在好多参数和手册里面都不一样,只能用用他们提供的例子,芯片的软件太不成熟了!

#5 Re: 全志 SOC » f1c200s(tiny200) linux+emwin稳定运行 » 2020-06-16 09:09:12

peterlin 说:

是这个了,忘记改链接了,帖子发表后好像就不能编辑了...

#6 全志 SOC » f1c200s(tiny200) linux+emwin稳定运行 » 2020-06-16 00:33:07

晓枫VS枯叶
回复: 20

经过一个晚上的驱动修改以及对静态库的少许改动成功的将新唐的emwin移植到了F1C200S的硬件上了,
而且是运行在linux下的,测试了几个小时的GUIDemo应用,没有出现任何死机问题,先上两张照片。

QQ图片20200616001406_20200616-0015.jpg

QQ图片20200616001325.jpg

轻松驱动一块1024*600@RGB565的屏幕,刷色块分数达到1亿分,
可以和STM的H7系列有得一拼了;
由于新唐的库里面jpeg用了硬解,导致在f1c200s的硬件上无法运行,
所以替换了一个软解的JPEG到新唐的库里面,并删除了芯片检测机制,
可以正常运行在f1c200s上。

先上一波github的地址: xiaofengvskuye/f1c200s_linux_emwin

有空再上传到国内的gitee上,由于是在tf卡上测试的,没有打包镜像。

linux上运行的emwin依赖于framebuffer,可以直接从fb上获取到分辨率参数,
无需再在配置文件里配置,代码写的匆忙,没有对驱动进行有优化,
大家可以帮忙优化一下GUIDRV_FB里的驱动。

代码里触摸部分用到tslib,由于我的屏幕是裸屏没有触摸,
所以关掉了触摸部分的驱动,但是代码还是保留了,没有进行调试。





以下由 @哇酷小二 2020-06-16 添加:
------------------------------------
不方便上github.com本站下载: f1c200s_linux_emwin_1cceec8cdc7c51da1f1a17255e761cf6.7z

#7 全志 SOC » tiny200 framebuffer配置问题 » 2020-05-15 00:06:08

晓枫VS枯叶
回复: 4

在内核dts里面添加了framebuffer的配置,如下:

	simplefb_lcd: framebuffer-lcd0 {
			compatible = "allwinner,simple-framebuffer",
				     "simple-framebuffer";
			allwinner,pipeline = "de_be0-lcd0";
			clocks = <&ccu CLK_BUS_LCD>, <&ccu CLK_BUS_DE_BE>,
				 <&ccu CLK_TCON>, <&ccu CLK_DE_BE>,
				 <&ccu CLK_DRAM_DE_BE>;
			status = "okay";
		};

内核启动时输出的log显示simple-framebuffer配置失败,log如下:

U-Boot SPL 2019.04 (May 14 2020 - 22:33:18 +0800)
DRAM: 64 MiB
SPL: Unsupported Boot Device!
Trying to boot from sunxi SPI


U-Boot 2019.04 (May 14 2020 - 22:33:18 +0800) Allwinner Technology

CPU:   Allwinner F Series (SUNIV)
Model: Lotlab ACT Monitor
DRAM:  64 MiB
Setting up a 800x480 lcd console (overscan 0x0)
SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  0 
SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
device 0 offset 0x50000, size 0x10000
SF: 65536 bytes @ 0x50000 Read: OK
device 0 offset 0x60000, size 0x300000
SF: 3145728 bytes @ 0x60000 Read: OK
## Flattened Device Tree blob at 80c00000
   Booting using the fdt blob at 0x80c00000
   Loading Device Tree to 816fa000, end 816ff4e4 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.2.4 (jack-marks@ubuntu) (gcc version 9.3.0 (Buildroot 2020.02.1)) #1 Thu May 14 23:33:35 HKT 2020
[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] OF: fdt: Machine model: Lichee Pi Nano
[    0.000000] Memory policy: Data cache writeback
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 15883
[    0.000000] Kernel command line: console=ttyS1,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=squashfs init=/sbin/mnt_overlay
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 55788K/64036K available (5120K kernel code, 188K rwdata, 736K rodata, 1024K init, 213K bss, 8248K reserved, 0K cma-reserved)
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] random: get_random_bytes called from 0xc0700a8c with crng_init=0
[    0.000046] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[    0.000102] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000552] Console: colour dummy device 80x30
[    0.000663] Calibrating delay loop... 334.23 BogoMIPS (lpj=1671168)
[    0.050244] pid_max: default: 32768 minimum: 301
[    0.050399] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.050435] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.051906] CPU: Testing write buffer coherency: ok
[    0.054317] Setting up static identity map for 0x80100000 - 0x8010003c
[    0.056525] devtmpfs: initialized
[    0.074730] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.074780] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.074884] pinctrl core: initialized pinctrl subsystem
[    0.078003] NET: Registered protocol family 16
[    0.080100] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.086533] cpuidle: using governor menu
[    0.146982] SCSI subsystem initialized
[    0.147268] usbcore: registered new interface driver usbfs
[    0.147428] usbcore: registered new interface driver hub
[    0.147635] usbcore: registered new device driver usb
[    0.148006] videodev: Linux video capture interface: v2.00
[    0.154404] clocksource: Switched to clocksource timer
[    0.156593] simple-framebuffer chosen:framebuffer@83e89000: No memory resource
[    0.156673] simple-framebuffer: probe of chosen:framebuffer@83e89000 failed with error -22
[    0.218390] NET: Registered protocol family 2
[    0.222532] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes)
[    0.222591] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.222632] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.222671] TCP: Hash tables configured (established 1024 bind 1024)
[    0.223003] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.223063] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.223403] NET: Registered protocol family 1
[    0.231769] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[    0.233723] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.233772] ntfs: driver 2.1.32 [Flags: R/O].
[    0.233805] jffs2: version 2.2. (NAND) 漏 2001-2006 Red Hat, Inc.
[    0.234233] fuse: init (API version 7.31)
[    0.241573] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO
[    0.309906] suniv-f1c100s-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[    0.310595] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pe not found, using dummy regulator
[    0.313630] pwm-backlight backlight: backlight supply power not found, using dummy regulator
[    0.392547] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[    0.433690] 1c25000.serial: ttyS0 at MMIO 0x1c25000 (irq = 24, base_baud = 6250000) is a 16550A
[    0.438704] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pa not found, using dummy regulator
[    0.460001] 1c25400.serial: ttyS1 at MMIO 0x1c25400 (irq = 25, base_baud = 6250000) is a 16550A
[    0.838081] printk: console [ttyS1] enabled
[    0.866302] 1c25800.serial: ttyS2 at MMIO 0x1c25800 (irq = 26, base_baud = 6250000) is a 16550A
[    0.886348] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator
[    0.911650] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pc not found, using dummy regulator
[    0.930369] m25p80 spi0.0: w25q128 (16384 Kbytes)
[    0.935293] 5 fixed-partitions partitions found on MTD device spi0.0
[    0.941637] Creating 5 MTD partitions on "spi0.0":
[    0.946520] 0x000000000000-0x000000050000 : "u-boot"
[    0.962018] 0x000000050000-0x000000060000 : "dtb"
[    0.977518] 0x000000060000-0x000000380000 : "kernel"
[    0.993392] 0x000000380000-0x000000f80000 : "rootfs"
[    1.011339] 0x000000f80000-0x000001000000 : "overlay"
[    1.028275] usbcore: registered new interface driver uas
[    1.033698] usbcore: registered new interface driver usb-storage
[    1.039945] usbcore: registered new interface driver ums-alauda
[    1.048403] usbcore: registered new interface driver ums-cypress
[    1.054618] usbcore: registered new interface driver ums-datafab
[    1.060698] usbcore: registered new interface driver ums_eneub6250
[    1.067054] usbcore: registered new interface driver ums-freecom
[    1.073131] usbcore: registered new interface driver ums-isd200
[    1.079218] usbcore: registered new interface driver ums-jumpshot
[    1.085475] usbcore: registered new interface driver ums-karma
[    1.091419] usbcore: registered new interface driver ums-onetouch
[    1.099947] usbcore: registered new interface driver ums-realtek
[    1.106163] usbcore: registered new interface driver ums-sddr09
[    1.112162] usbcore: registered new interface driver ums-sddr55
[    1.118266] usbcore: registered new interface driver ums-usbat
[    1.130031] suniv-f1c100s-pinctrl 1c20800.pinctrl: pin PA2 already requested by 1c25400.serial; cannot claim for 1c24800.rtp
[    1.141373] suniv-f1c100s-pinctrl 1c20800.pinctrl: pin-2 (1c24800.rtp) status -22
[    1.148918] suniv-f1c100s-pinctrl 1c20800.pinctrl: could not request pin 2 (PA2) from group PA2  on device 1c20800.pinctrl
[    1.159973] sun4i-ts 1c24800.rtp: Error applying setting, reverse things back
[    1.167186] sun4i-ts: probe of 1c24800.rtp failed with error -22
[    1.173373] uvcvideo: Unable to create debugfs directory
[    1.178907] usbcore: registered new interface driver uvcvideo
[    1.184721] USB Video Class driver (1.1.1)
[    1.188817] gspca_main: v2.14.0 registered
[    1.196678] sunxi-wdt 1c20ca0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[    1.208575] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pf not found, using dummy regulator
[    1.248503] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB
[    1.258844] usbcore: registered new interface driver usbhid
[    1.264550] usbhid: USB HID core driver
[    1.269140] Initializing XFRM netlink socket
[    1.273499] NET: Registered protocol family 17
[    1.278145] NET: Registered protocol family 15
[    1.295360] suniv-f1c100s-pinctrl 1c20800.pinctrl: 1c20800.pinctrl supply vcc-pd not found, using dummy regulator
[    1.311432] sun4i-backend 1e60000.display-backend: Couldn't find matching frontend, frontend features disabled
[    1.324542] sun4i-drm display-engine: bound 1e60000.display-backend (ops 0xc0633e4c)
[    1.335228] sun4i-drm display-engine: bound 1c0c000.lcd-controller (ops 0xc0632ab4)
[    1.342887] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    1.349572] [drm] No driver support for vblank timestamp query.
[    1.360986] [drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
[    1.374239] sun4i-drm display-engine: fb0: sun4i-drmdrmfb frame buffer device
[    1.384788] usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
[    1.398363] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[    1.404152] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[    1.420283] hub 1-0:1.0: USB hub found
[    1.424217] hub 1-0:1.0: 1 port detected
[    1.438113] random: fast init done
[    1.448189] VFS: Mounted root (squashfs filesystem) readonly on device 31:3.
[    1.457779] devtmpfs: mounted
[    1.464849] Freeing unused kernel memory: 1024K
[    1.469485] Run /sbin/mnt_overlay as init process
[    1.686254] random: crng init done
[    2.217634] overlayfs: upper fs does not support tmpfile.
[    2.223103] overlayfs: upper fs does not support xattr, falling back to index=off and metacopy=off.
Starting syslogd: OK
Starting demo: main: All ok!
OK
Starting klogd: OK
Running sysctl: OK
Initializing random number generator: OK
Saving random seed: The framebuffer device was opened successfully.
800x480, 16bpp
The framebuffer device was mapped to memory successfully.
OK
Starting network: OK

Welcome to Buildroot
root login: 

其中配置失败如下:

[    0.156593] simple-framebuffer chosen:framebuffer@83e89000: No memory resource
[    0.156673] simple-framebuffer: probe of chosen:framebuffer@83e89000 failed with error -22

请问下这里的framebuffer不需要启动吗?
开机后lcd已经显示正常,强行改了drm驱动把32bpp改成了16bpp,由于tiny200硬件设计是就已经处理了RGB反色的问题,现在LCD的颜色也是显示正常的!
主要改动如下:
0009-modify-sun4i_drv-for-rgb565.rar

#10 Re: 全志 SOC » DKTool windows下F1C200S图形化烧写工具(文件都已过期,请不要下载) » 2020-05-08 01:50:11

编译了一个u-boot烧录进去没有任何反应(没有任何串口log),sunxi-fel也提示烧录完成了,读出来的数据和写入的是一样的,编译器也是用的Linaro GCC 7.2-2017.11,不知道是什么原因造成的。

#11 Re: 全志 SOC » DKTool windows下F1C200S图形化烧写工具(文件都已过期,请不要下载) » 2020-05-08 01:46:18

哇酷小二 说:

重新进行静态编译后可以使用了,之前是没有附加dll,powershell执行的时候没有报错,也没有提示。

#12 Re: 全志 SOC » DKTool windows下F1C200S图形化烧写工具(文件都已过期,请不要下载) » 2020-05-07 23:47:00

自己编译了一个sunxi-fel.exe发现运行的时候没有任何响应,不知道什么问题。

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn