Hi all, I'm trying to use the 7" A70 screen with with my mini2440 board. I've the u-boot bootloader running on my board. I've built my root FS with busybox I've compiled the 2.6.32.2 Linux kernel with 2 possibilities: mini2440_defconfig and config_mini2440_a70 for the .config configuration file. The board boots but I've nothing on the screen :-( The screens is white with no tux for indicating frame buffer activation. These are the traces with the mini2440_defconfig default Linux configuration: Linux version 2.6.32.2 (@linux01) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #5 Fri Jun 24 21:55:52 CEST 2011 CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177 CPU: VIVT data cache, VIVT instruction cache Machine: FriendlyARM Mini2440 development board Memory policy: ECC disabled, Data cache writeback CPU S3C2440A (id 0x32440001) S3C24XX Clocks, (c) 2004 Simtec Electronics S3C244X: core 405.000 MHz, memory 101.250 MHz, peripheral 50.625 MHz CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256 Kernel command line: root=/dev/mtdblock3 rootfstype=jffs2 mini2440=1tb console=ttySAC0,115200 rootwait PID hash table entries: 256 (order: -2, 1024 bytes) Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) Memory: 64MB = 64MB total Memory: 60608KB available (3588K code, 419K data, 168K init, 0K highmem) SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 Hierarchical RCU implementation. NR_IRQS:85 . . . s3c2410-rtc s3c2410-rtc: setting system clock to 2005-07-08 06:55:48 UTC (1120805748) mmcblk0: mmc0:1234 SA02G 1.83 GiB mmcblk0: p1 VFS: Mounted root (jffs2 filesystem) on device 31:3. Freeing init memory: 168K ****************************************** * Starting System Init for mini2440 * Mounting file systems... * Mounting tmpfs ... * Seting host name... * Up network... eth0: link up, 100Mbps, full-duplex, lpa 0x41E1 * Create /mnt/usb - for USB stick * Create /mnt/mmc - for MMC/SD card * System Init finished ****************************************** Please press Enter to activate this console. I've not in the traces something like: CPU: Testing write buffer coherency: ok NET: Registered protocol family 16 MINI2440: Option string mini2440=1tb MINI2440: LCD 0:240x320 [1:800x480] 2:1024x768 S3C2440: Initialising architecture S3C2440: IRQ Support My bootargs for u-boot is: Quote: bootargs=root=/dev/mtdblock3 rootfstype=jffs2 mini2440=1tb console=ttySAC0,115200 rootwait I've passed the mini2440=1tb to the kernel but it doesn't appear in the traces... No "MINI2440: Option string mini2440=1tb" in the traces... I've the same thing with the config_mini2440_a70 for linux configuration. What is the problem? Has anyone succeeded in using frame buffer with the 7" A70 screen with the mini2440 board? What is your .config file for Linux configuration? Is the screen feeded with 3,3V or 5V jumper J2 on the mini2440 board)? Thank you for your help... Cheers, eddy33
Using mini2440 board with 7" A70 screen under Linux
I noticed ... VFS: Mounted root (jffs2 filesystem) on device 31:3. You have modified the kernel to support JFFS2 rather than YAFFS2? Where did you get your rootfs from? > Is the screen feeded with 3,3V or 5V jumper J2 on the mini2440 board)? You had better sort this one before proceeding! I can't tell you, try searching <a70>, there are 6 pages of hits. http://www.friendlyarm.net/forum/topic/2618 Possibly not helpful.
Hi davef, Yes I'm using JFFS2 and modified the Linux kernel configuration for that. I've done the same from peeking the ext3 root filesystem from the SD card. It's booting too but no framebuffer active on the A70 screen... Thanks for: http://www.friendlyarm.net/forum/topic/2618 I've found it this night. I hope it is not the problem... The screen seems to be not detected... In fact, I've just had one time the tux on the screen (the screen was dark and not white) but the image was not stable. Any successful experience with the 7" A70 screen with the mini2440 board and framebuffer (something written on the screen?). eddy33
To repeat ... what rootfs are you using? You shouldn't have to do these in the FriendlyArm config files, but check that in the kernel configuration: Device Drivers ---> Character devices ---> [*] Virtual terminal [*] Enable character translations in console [*] Support for console on virtual terminal Graphics support ---> Console display driver support ---> <*> Framebuffer Console support [*] Map the console to the primary display device [*] Select compiled-in fonts [*] VGA 8x8 font Also, in /etc/inittab try: console::respawn:/sbin/getty -L 9600 tty1 vt100 Make sure that: Device drivers Input device support Touchscreens Samsung S3c generic touchscreen input driver is enabled.
Sorry, I should say what have you got in /etc/fstab and /etc/init.d/rc.d ? What has Busybox populated these files with?
Hi davef, According to your advice, I've verified your points... Please find attached my root file system based on this doc: http://cchia-cwp.blogspot.com/2010/03/build-root-file-system.html I've built busybox according to this doc: http://cchia-cwp.blogspot.com/2010/03/mini2440-friendlyarm-for-embedded.... It works on the mini2440. Have you a working root filesytem that I can use for controlling mine? eddy33
davef, Please find attached my .config file for Linux kernel configuration for A70 touch screen... eddy33
>> Is the screen feeded with 3,3V or 5V jumper J2 on the mini2440 board)? > You had better sort this one before proceeding! Have you resolved this issue? Also, I would measure the power supply under load (ie with the LCD showing a white screen). The supply voltage didn't have to drop much on my mini2440 before it stopped working (4.75Volts from memory). Had a look at your kernel config file CONFIG_FB_S3C2410_TFT800480=y I see you have this one ticked, is it the correct unit? The A70 has been around for awhile, so I would expect trying to use it would be fairly straight-forward. Sorry, I can't look at the rootfs for the next few days and I don't think it is a wise move to send you something that works for me. Perhaps, post the contents of those files. /etc/fstab and there will be a rcS or rc.d? file somewhere that shows how the machine starts up.
Hi davef, In fact, by chance, I've moved a little the 2x25 connector of the screen plugged to the mini2440 board and I've seen the tux for framebuffer activation ;-) But I have a big problem with flicker... I have a poor contact with this connector. I guess a problem with poor power supply too like here: http://www.friendlyarm.net/forum/topic/2618 I'll try with a more powerful power supply monday. I have these traces for framebuffer activation: s3c2410fb: map_video_memory(fbi=c388ea50) map_size 770048 s3c2410fb: map_video_memory: clear ffc00000:000bc000 s3c2410fb: map_video_memory: dma=33a00000 cpu=ffc00000 size=000bc000 s3c2410fb: got video memory s3c2410fb: LPCSEL = 0x00000f82 s3c2410fb: replacing TPAL 00000000 s3c2410fb: check_var(var=c388e820, info=c388e800) s3c2410fb: pixclk 40000, divisor is 4 s3c2410fb: s3c2410fb_activate_var: var->xres = 800 s3c2410fb: s3c2410fb_activate_var: var->yres = 480 s3c2410fb: s3c2410fb_activate_var: var->bpp = 16 s3c2410fb: setting vert: up=26, low=6, sync=2 s3c2410fb: setting horz: lft=41, rt=68, sync=32 s3c2410fb: new register set: s3c2410fb: lcdcon[1] = 0x00000178 s3c2410fb: lcdcon[2] = 0x1977c141 s3c2410fb: lcdcon[3] = 0x021b1f28 s3c2410fb: lcdcon[4] = 0x0000001f s3c2410fb: lcdcon[5] = 0x00000b09 s3c2410fb: LCDSADDR1 = 0x19d00000 s3c2410fb: LCDSADDR2 = 0x19d5dc00 s3c2410fb: LCDSADDR3 = 0x00000320 Console: switching to colour frame buffer device 100x60 fb0: s3c2410fb frame buffer device backlight initialized leds initialized buttons initialized pwm initialized adc initialized s3c2440-uart.0: s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440 s3c2440-uart.1: s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440 s3c2440-uart.2: s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440 CONFIG_FB_S3C2410_TFT800480=y seems to by good. Perhaps flicker is coming from a trouble in horz and vert synchronization? It is OK for framebuffer with linux kernel 2.6.32 from linux-2.6.32.2-mini2440_20110305.tgz and linux kernel 2.6.29 from linux-2.6.29-mini2440_20090708.tgz. This is my /etc/fstab: # device mount-point type options dump fsck order proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 tmpfs /dev tmpfs defaults 0 0 tmpfs /tmp tmpfs defaults 0 0 var /var tmpfs defaults 0 0 This is my /etc/inittab: ::sysinit:/etc/init.d/rcS ::askfirst:-/bin/sh ::ctrlaltdel:/sbin/reboot ::shutdown:/bin/umount -a -r ::shutdown:/sbin/swapoff -a ::restart:/sbin/init #::respawn:/sbin/getty -L 115200 /dev/ttySAC0 vt100 console::respawn:/sbin/getty -L 9600 tty0 vt100 This is my /etc/mdev.conf: # system all-writable devices full 0:0 0666 null 0:0 0666 ptmx 0:0 0666 random 0:0 0666 tty 0:0 0666 zero 0:0 0666 # console devices tty[0-9]* 0:5 0660 vc/[0-9]* 0:5 0660 # serial port devices s3c2410_serial0 0:5 0666 =ttySAC0 s3c2410_serial1 0:5 0666 =ttySAC1 s3c2410_serial2 0:5 0666 =ttySAC2 s3c2410_serial3 0:5 0666 =ttySAC3 # loop devices loop[0-9]* 0:0 0660 =loop/ # i2c devices i2c-0 0:0 0666 =i2c/0 i2c-1 0:0 0666 =i2c/1 # frame buffer devices fb[0-9] 0:0 0666 # input devices mice 0:0 0660 =input/ mouse.* 0:0 0660 =input/ event.* 0:0 0660 =input/ ts.* 0:0 0660 =input/ # rtc devices rtc0 0:0 0644 >rtc rtc[1-9] 0:0 0644 This is my /etc/init.d/rcS: #! /bin/sh # Setup the bin file location and export to system PATH PATH=/sbin:/bin:/usr/sbin:/usr/bin umask 022 export PATH # mount the filesystem directories mount -a mkdir /dev/pts mount -t devpts devpts /dev/pts -o mode=0622 # create device nodes and directories echo /sbin/mdev>/proc/sys/kernel/hotplug mdev -s mkdir /var/lock # start logging utility services klogd syslogd # set system clock from RTC hwclock -s # set host and config loopback interface ifconfig lo 127.0.0.1 ifconfig eth0 192.168.0.100 eddy33
You'd probably really need an oscilloscope to see if there is unacceptable ripple on the power supply. A Digital voltmeter reads how many volts? I have seen my screen dip out at low battery voltage, say about 4.5-4.75Volts. Flicker on some touchscreens has been topic quite awhile ago. The files seem to look OK. The touchscreen connector is quite delicate. Do you know how to remove the flexible strip from the connector? Does it look like it is plugged in correctly?
Hi davef, I've used this afternoon another more powerful power supply than this shipped with the board and it solved my problem: no more flicker and stable image ;-) I have always a little problem with connector (too fragile) but it's okay at this end after moving it a little... Cheers. eddy33