hello all! this is my second topic (the first was too long) , i have this problem: can't visualize the terminal after the boot of my tiny6410. this is what i did: $ ptxdist clean root $ ptxdist menuconfig Device Drivers ---> Character devices ---> [*] Virtual terminal [*] Enable character translations in console [*] Support for console on virtual terminal...now the screen stay Graphics support ---> [*] Support for frame buffer devices ---> <*> S3C2410 LCD framebuffer support Console display driver support ---> <*> Framebuffer Console support [*] Map the console to the primary display device [*] Select compiled-in fonts [*] VGA 8x8 font remove Qt4-demo $ ptxdist go $ ptxdist images then mount the SD card , format , untar root.tgz in it, plug the SD inside the TINY. $ sudo minicom and switch to on S1 to startup the board this is what i see on my host: Welcome to minicom 2.5 OPTIONS: I18n Compiled on May 2 2011, 10:05:24. Port /dev/ttyUSB0 Press CTRL-A Z for help on special keys K U-Boot 1.1.6-ptx-2011.11.0 (Sep 6 2012 - 01:22:35) for FriendlyARM MINI6410 CPU: S3C6410@532MHz Fclk = 532MHz, Hclk = 133MHz, Pclk = 66MHz, Serial = CLKUART (SYNC Mod Board: MINI6410 DRAM: 128 MB Flash: 0 kB NAND: 256 MB MMC: Setting up an SD card with 3911680 sectors: Useable area ends with sector 3911678. BL1 area starts in sector 3911662. Environment area starts in sector 3911406. BL2 area starts in sector 3910894. Kernel area starts in sector 3899374. 1911 MB *** Warning - bad CRC or MoviNAND, using default environment In: serial Out: serial Err: serial MAC: 08:90:90:90:90:90 Hit any key to stop autoboot: 0 Reading zImage from block 3899374.. Completed! Boot with zImage Starting kernel ... Uncompressing Linux... done, booting the kernel. Linux version 3.0.8-ptx-2011.11.0 (alo@alo-Dell-System-XPS-L702X) (gcc version 2 CPU: ARMv6-compatible processor [410fb766] revision 6 (ARMv7), cr=00c5387f CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache Machine: MINI6410 Memory policy: ECC disabled, Data cache writeback CPU S3C6410 (id 0x36410101) S3C24XX Clocks, Copyright 2004 Simtec Electronics camera: no parent clock specified S3C64XX: PLL settings, A=532000000, M=532000000, E=24000000 S3C64XX: HCLK2=266000000, HCLK=133000000, PCLK=66500000 mout_apll: source is fout_apll (1), rate is 532000000 mout_epll: source is epll (1), rate is 24000000 mout_mpll: source is mpll (1), rate is 532000000 mmc_bus: source is mout_epll (0), rate is 24000000 mmc_bus: source is mout_epll (0), rate is 24000000 mmc_bus: source is mout_epll (0), rate is 24000000 usb-bus-host: source is clk_48m (0), rate is 48000000 uclk1: source is dout_mpll (1), rate is 66500000 spi-bus: source is mout_epll (0), rate is 24000000 spi-bus: source is mout_epll (0), rate is 24000000 audio-bus: source is mout_epll (0), rate is 24000000 audio-bus: source is mout_epll (0), rate is 24000000 audio-bus: source is mout_epll (0), rate is 24000000 irda-bus: source is mout_epll (0), rate is 24000000 camera: no parent clock specified CPU: found DTCM0 8k @ 0c002000, enabled CPU: moved DTCM0 8k to fffe8000, enabled CPU: found DTCM1 8k @ 0c004000, enabled CPU: moved DTCM1 8k to fffea000, enabled CPU: found ITCM0 8k @ 00000000, not enabled CPU: moved ITCM0 8k to fffe0000, enabled CPU: found ITCM1 8k @ 00000000, not enabled CPU: moved ITCM1 8k to fffe2000, enabled Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512 Kernel command line: root=/dev/mmcblk0p1 rootwait console=ttySAC0,115200 mini640 PID hash table entries: 512 (order: -1, 2048 bytes) Dentry cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 8192 (order: 3, 32768 bytes) Memory: 128MB = 128MB total Memory: 126568k/126568k available, 4504k reserved, 0K highmem Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) DTCM : 0xfffe8000 - 0xfffec000 ( 16 kB) ITCM : 0xfffe0000 - 0xfffe4000 ( 16 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) DMA : 0xff600000 - 0xffe00000 ( 8 MB) vmalloc : 0xc8800000 - 0xf6000000 ( 728 MB) lowmem : 0xc0000000 - 0xc8000000 ( 128 MB) modules : 0xbf000000 - 0xc0000000 ( 16 MB) .init : 0xc0008000 - 0xc0020000 ( 96 kB) .text : 0xc0020000 - 0xc02f2c20 (2892 kB) .data : 0xc02f4000 - 0xc0312a20 ( 123 kB) .bss : 0xc0313024 - 0xc033e988 ( 175 kB) Preemptible hierarchical RCU implementation. NR_IRQS:246 VIC @f6000000: id 0x00041192, vendor 0x41 VIC @f6010000: id 0x00041192, vendor 0x41 console [ttySAC0] enabled Calibrating delay loop... 528.79 BogoMIPS (lpj=2643968) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok devtmpfs: initialized NET: Registered protocol family 16 MINI6410: Option string mini6410=0 MINI6410: selected LCD display is 480x272 s3c64xx_dma_init: Registering DMA channels PL080: IRQ 73, at c8804000, channels 0..8 PL080: IRQ 74, at c8806000, channels 8..16 S3C6410: Initialising architecture s3c-adc s3c64xx-adc: attached adc driver s3c24xx-pwm s3c24xx-pwm.1: tin at 66500000, tdiv at 66500000, tin=divclk, base 8 bio: create slab <bio-0> at 0 s3c-i2c s3c2440-i2c: slave address 0x10 s3c-i2c s3c2440-i2c: bus frequency set to 64 KHz s3c-i2c s3c2440-i2c: i2c-0: S3C I2C adapter Switching to clocksource pwm_timer4 NET: Registered protocol family 2 IP route cache hash table entries: 1024 (order: 0, 4096 bytes) TCP established hash table entries: 4096 (order: 3, 32768 bytes) TCP bind hash table entries: 4096 (order: 2, 16384 bytes) TCP: Hash tables con...stripped-down
TINY6410 startup with console
TCP: Hash tables configured (established 4096 bind 4096) 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 named UNIX socket transport module. RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. JFFS2 version 2.2. (NAND) �© 2001-2006 Red Hat, Inc. msgmni has been set to 247 io scheduler noop registered (default) s3c-fb s3c-fb: window 0: fb s3c6400-uart.0: ttySAC0 at MMIO 0x7f005000 (irq = 16) is a S3C6400/10 s3c6400-uart.1: ttySAC1 at MMIO 0x7f005400 (irq = 20) is a S3C6400/10 s3c6400-uart.2: ttySAC2 at MMIO 0x7f005800 (irq = 24) is a S3C6400/10 s3c6400-uart.3: ttySAC3 at MMIO 0x7f005c00 (irq = 28) is a S3C6400/10 at24 0-0050: 1024 byte 24c04 EEPROM, writable, 16 bytes/write S3C24XX NAND Driver, (c) 2004 Simtec Electronics s3c24xx-nand s3c6400-nand: Tacls=4, 30ns Twrph0=8 60ns, Twrph1=6 45ns s3c24xx-nand s3c6400-nand: NAND soft ECC NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-b) Scanning device for bad blocks Bad eraseblock 391 at 0x0000030e0000 Bad eraseblock 1325 at 0x00000a5a0000 Bad eraseblock 1537 at 0x00000c020000 Bad eraseblock 1838 at 0x00000e5c0000 Creating 3 MTD partitions on "nand": 0x000000000000-0x000000100000 : "uboot" 0x000000100000-0x000000300000 : "kernel" 0x000000300000-0x000010000000 : "rootfs" dm9000 Ethernet Driver, V1.31 eth0: dm9000a at c885c000,c885e004 IRQ 108 MAC: 08:90:90:90:90:90 (chip) input: gpio-keys as /devices/platform/gpio-keys/input/input0 samsung-ts s3c64xx-ts: driver attached, registering input device input: S3C24XX TouchScreen as /devices/virtual/input/input1 S3C24XX RTC, (c) 2004,2006 Simtec Electronics s3c-rtc s3c64xx-rtc: rtc disabled, re-enabling s3c-rtc s3c64xx-rtc: rtc core: registered s3c as rtc0 s3c-rtc s3c64xx-rtc: warning: invalid RTC value so initializing it sdhci: Secure Digital Host Controller Interface driver sdhci: Copyright(c) Pierre Ossman s3c-sdhci s3c-sdhci.0: clock source 0: hsmmc (133000000 Hz) s3c-sdhci s3c-sdhci.0: clock source 1: hsmmc (133000000 Hz) s3c-sdhci s3c-sdhci.0: clock source 2: mmc_bus (24000000 Hz) mmc0: SDHCI controller on samsung-hsmmc [s3c-sdhci.0] using ADMA s3c-sdhci s3c-sdhci.1: clock source 0: hsmmc (133000000 Hz) s3c-sdhci s3c-sdhci.1: clock source 1: hsmmc (133000000 Hz) s3c-sdhci s3c-sdhci.1: clock source 2: mmc_bus (24000000 Hz) mmc1: SDHCI controller on samsung-hsmmc [s3c-sdhci.1] using ADMA TCP cubic registered VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5 s3c-rtc s3c64xx-rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800) Waiting for root device /dev/mmcblk0p1... mmc0: new SD card at address 0002 mmcblk0: mmc0:0002 00000 1.86 GiB mmcblk0: p1 mmc1: new SDIO card at address 0001 EXT2-fs (mmcblk0p1): warning: mounting unchecked fs, running e2fsck is recommend VFS: Mounted root (ext2 filesystem) on device 179:1. devtmpfs: mounted Freeing init memory: 96K init started: BusyBox v1.18.5 (2012-09-06 01:05:36 CEST) starting pid 219, tty '/dev/console': '/etc/init.d/rcS' mounting filesystems...done. running rc.d services... starting udev mounting tmpfs at /dev creating static nodes starting udevd...done waiting for devices...done Starting telnetd... starting network interfaces... loading modules starting pid 290, tty '/dev/console': '/sbin/getty -L 115200 ttySAC0 vt100' ____ _______ __ | _ `_ _` `/ / | |_) || | ` / | __/ | | / ` |_| |_| /_/`_` _ _ __ _ _ _ ___ _ __ ___ (_)_ __ (_)/ /_ | || | / |/ _ ` | '_ ` _ `| | '_ `| | '_ `| || |_| | | | | | | | | | | | | | | | (_) |__ _| | |_| | |_| |_| |_|_|_| |_|_|`___/ |_| |_|`___/ OSELAS(R)-Mini6410-2011.11.0 / mini6410-2011.11.0 ptxdist-2011.10.1/2012-09-09T17:53:02+0200 mini6410 login: root login[290]: root login on 'ttySAC0' root@mini6410:~ cd / root@mini6410:/ ls EXT2-fs (mmcblk0p1): error: ext2_lookup: deleted inode referenced: 12 ls: ./helloARM: Input/output error PRG etc lost+found root sys var bin home mnt run tmp dev lib proc sbin usr root@mini6410:/ cd dev root@mini6410:/dev ls block mmcblk0p1 pts char mtd0 random console mtd0ro rtc0 core mtd1 shm cpu_dma_latency mtd1ro stderr disk mtd2 stdin fb0 mtd2ro stdout fd mtdblock0 tty full mtdblock1 ttySAC0 input mtdblock2 ttySAC1 kmem network_latency ttySAC2 kmsg network_throughput ttySAC3 mem null urandom mmcblk0 ptmx zero WHERE IS TTY0 or TTY1?????? to see the terminal on the TINY LCD many people suggest me to: ptxdist kernelconfig->boot options->and change the line: console=ttySAC0,115200 root=/dev/ram init=/linuxrc initrd=0x51000000,6m ramdisk_size=6144 to: consol...stripped-down
to: console=tty0 root=/dev/ram init=/linuxrc initrd=0x51000000,6m ramdisk_size=6144 when i do it ,naturally, i obtain the error: process '/sbin/getty -L 0 tty1 vt100' (pid 294) exited. Scheduling for restart. can't open /dev/tty1: No such file or directory this is the all procedure that i did , in the same order that i did. what is wrong???
Maybe you need to change: > console=tty0 root=/dev/ram init=/linuxrc initrd=0x51000000,6m > ramdisk_size=6144 to console=tty1 root=/dev/ram init=/linuxrc initrd=0x51000000,6m ramdisk_size=6144
dosn't work... if you look , when i digit root@mini6410:/dev cd /dev root@mini6410:/dev ls block mmcblk0p1 pts char mtd0 random console mtd0ro rtc0 core mtd1 shm cpu_dma_latency mtd1ro stderr disk mtd2 stdin fb0 mtd2ro stdout fd mtdblock0 tty full mtdblock1 ttySAC0 input mtdblock2 ttySAC1 kmem network_latency ttySAC2 kmsg network_throughput ttySAC3 mem null urandom mmcblk0 ptmx zero tty0 and tty1 etc. etc. not exist!!
Try making /dev/tty1 http://linux.about.com/library/cmd/blcmdl1_mknod.htm
i make: $mknod /dev/tty1 c 2 0 and now: root@mini6410:/dev ls block mtd0 rtc0 char mtd0ro shm console mtd1 stderr core mtd1ro stdin cpu_dma_latency mtd2 stdout disk mtd2ro tty fb0 mtdblock0 tty1 fd mtdblock1 ttySAC0 full mtdblock2 ttySAC1 input network_latency ttySAC2 kmem network_throughput ttySAC3 kmsg null urandom mem ptmx zero mmcblk0 pts mmcblk0p1 random but if restart the board tty1 disappear. O.o
Because most of the people, including me, use PTXdist on the mini2440?? /etc/profile.environment is run everytime you boot the board. If that command: $mknod /dev/tty1 c 2 0 is in it, then tty1 should appear in /dev Why you need to do this, when I don't have to do it on a mini2440, I can not answer.
Ah, sorry . . . you now get tty1 appearing in /dev and want to know how does the hardware know that is (or should be the) the display. Can't answer that either. Have other people had this problem on the tiny6410?
i dont't know... i want only a normal linux kernel working on my board...i don't understand what is wrong , I repeated operations with ptxdist dozens of times, with different combinations of kernelconfig, but I can not see the terminal on the LCD, I can not see tty0 tty1 etc .... who can help me?
I have added one line for Qt in /etc/init.d/rcS file now after restarting Terminal is not coming display is white(Tiny6410) .What to do nw..
Maybe, tell people what the line is. Can we assume if you remove the line normal operation is restored?
The only thing I can offer is to look at udev, assuming that you are using it to populate the /dev/ tree. If you are not seeing tty0, tty1, etc, you might need to add them to /lib/udev/defaults/ (IIRC) ... udev makes the devices that are in that folder as part of the /dev/ tree on startup. I had to do this to get my SD card to show up on my Mini6410 (2.6.38); once I added the entry in /lib/udev/defaults/, I was able to access it normally from /dev/. Had to do this to access the NAND file system as well. Hope this helps
Just to ammend my last post now that I got into the board ... the folder is /lib/udev/devices/, not /lib/udev/defaults/. And I am seeing the same thing as you are - tty1 - tty6 are non-existent on my from source build (stock kernel 3.8.7 + patches). Going to try a few things and post back if I get any good results.
Did you enable devtmpfs in your kernel config? And "Automount devtmpfs at /dev, after the kernel mounted the rootfs"? Both is required for recent kernels and recent udev.
@Juergen I have both of those enabled, but still had to manually create the nodes. I am also seeing where agetty is "respawning too fast; disabling for 5 minutes". My inittab contains 1:2345:respawn:/sbin/agetty tty1 38400 2:2345:respawn:/sbin/agetty tty2 38400 3:2345:respawn:/sbin/agetty tty3 38400 4:2345:respawn:/sbin/agetty tty4 38400 5:2345:respawn:/sbin/agetty tty5 38400 6:2345:respawn:/sbin/agetty tty6 38400 I originally had the baud rate at 9600, but saw it set to 38400 on most of my other machines, so I figured I would try that instead; same result. Just as an aside, I am also not seeing the touchscreen in the /dev/ folder. I do have a framebuffer device (fb0), but nothing related to the touchscreen or the backlight devices, and both are compiled into the kernel.
Just noticed that "Virtual Terminal" (CONFIG_VT) support under character devices is presently unchecked. I had not really gone through the kernel before building it, going with the stock settings from the PTXdist 3.8 kernel setup. I wonder if this is why I am not getting my tty's to come up.
That was it. Enabling "Virtual Terminal" gave me tty0 - tty63 without having to make the nodes first, so that should solve @Luigi's problem, too. I also enabled pty support (saw that it was enabled in the FA config for 2.6.38) which gave me ptyp0 - ptypf and ttyp0 - ttypf as devices. I also am no longer getting the "respawning too fast" error. I still cannot get the touchscreen to come up and be a console; display is all white, then fades to greyscale snow. There is still no /dev/touchscreen nor /dev/touchscreen-1wire in my /dev/ folder.
What kernel do you use? Mainline from kernel.org? If yes, the Mini6410 support isn't feature complete. And '/dev/touchscreen' is very FA specific. Regular kernels supporting a touchscreen via the "input subsystem" ("/dev/event/...")
3.8.7 from kernel.org, plus patches from ptxdist. I have /dev/input/event{0,1,2}, but no input from the touchscreen. I also have no display on the touchscreen; basically a screenful of snow. There has to be something that I am overlooking, and for knowing as little as I do about kernel development, this has been a real crash course for me. I know the touchscreen is getting added to the kernel, but it is listed in the kernel as "Tiny6410", not "Mini6410". My assumption is that this makes no difference, but is that a flawed assumption? Should there be a "mini6410-ts" instead of "tiny6410-ts"?
For what it's worth ... I have the following enabled in the kernel: Device Drivers Input device support Mouse interface Provide legacy /dev/psaux device Horizontal screen resolution (800) Vertical screen resolution (480) Event interface Keyboards GPIO Buttons Touchscreens Samsung S3C2410/generic touchscreen input driver Tiny6410 1-wire Touchscreen Miscellaneous devices PWM beeper support Character devices Virtual terminal Enable character translations in console Support for console on virtual terminal Unix98 PTY support Legacy (BSD) PTY support Serial drivers Samsung SoC serial support Support for console on Samsung SoC serial port Graphics support Support for frame buffer devices Samsung S3C framebuffer support Backlight & LCD device support Lowlevel Backlight controls Generic PWM based Backlight Driver Backlight driver for Tiny6410 board LCD module Console display driver support Framebuffer Console support Map the console to the primary display device Select compiled-in fonts VGA 8x8 font VGA 8x16 font Mini 4x6 font As I was going through all this, I noticed that the lowlevel LCD controls are not selected, nor are any of the Samsung drivers beneath it ... going to give that a try and see what happens.
Not sure if this was needed, but I did notice that the display went from gray snow to all white when I added these ... Device drivers Graphics support Backlight & LCD device support Lowlevel LCD controls Samsung LMS283GF05 LCD Samsung LTV350QV LCD Panel I use the 7" A70 display ... not sure if either of the ones listed above equate out to that. I noticed that there is an "extended" setup for the Samsung S3C framebuffer support in the FA 2.6 kernel; this does not exist in the stock 3.8 ... will have to see what module/support gets compiled in as part of the 2.6 kernel by enabling those settings ... What finally got the screen to display properly took some perusing of the dmesg log .... the kernel needs to be told "mini6410=1" to get my display to be chosen. Otherwise, it assumes "mini6410=0", which appears to be the 4.3" display (480x372, IIRC). Forcing it to 1 makes it select the 7" display (800x480). Hope this winds up helping someone out there who is having a similar issue ... I'm done 'til Monday :) Cheers and have a great weekend to all.
> [...] > Lowlevel LCD controls > Samsung LMS283GF05 LCD > Samsung LTV350QV LCD Panel This is not from the current 3.8.8 kernel. It seems to be from the FA pached kernel. If you are using my kernel patches for the Mini6410 (or S3C6410 SoC) the 'mini6410' kernel parameter is relevant. If you had read my PDF for the Min6410 BSP you already had known what the correct kernel parameter for your display is... BTW: maybe you will find the missing clock (or what else) to make the USB work in the Mini/Tiny6410. :) Happy hacking
Actually, I did read the PDF for the Mini6410 BSP, but amongst all the documentation I've gone through the past couple of weeks, I am sure I simply missed that little tidbit. :) I'm just glad I have a display at this point. I will be looking into the USB on Monday; I have a USB keyboard attached to the board which has been working great with the Debian install I had on the board, but it is not working at the moment with this build. With luck, it will be simple enough to fix. Granted, the couple of problems fixed in this thread were simple enough looking back ... Hindsight and knowing what the problem actually was always makes things appear more simple than they were when you were trying to fix it in the first place. :P