No logo on the screen while booting!!

tamamontu
Attachment: rootfs_booting_log (8.17 KB)
Hi All,

After buidling a rootfs and recompiling the kernel, the boards boots but
there is no logo on the screen.
My board has 7inch lcd. U-boot option is set to mini2440=1tb. But there is
no activity on the screen.

I have built a rootfs using busybox1.13.4 using following link.
http://wiki.iface.ch/index.php/Basic_rootfs_for_Mini2440
http://code.google.com/p/friendlyarm/wiki/Linux_Tutorial

Also recompiled the kernel with A70 configuration. 
I set the board to boot from SDcard as per this link
http://bill.station51.net/index.php?post/2010/01/30/HOWTO%3A-Booting-fro...

I have also attached a kernel boot log file. How to get the screen working?
Can some one please reply.

Thanks
Tama

davef
And what did you get with my reply to your other post?

http://www.friendlyarm.net/forum/topic/3845

There is more to come when you answer that question.

tamamontu
/sys directory is empty. There is nothing in side it.

tamamontu
Did i miss something while building the kernel or in the file system

Juergen Beisert
Did you mount the sysfs to sys/ prior you took a look into it?

tamamontu
Hi Juergen, Thanks for pointing out mounting of sysfs. I managed to solve
the issue now I can see the screen comming up with the logo and login in
screen. 

While compiling the kerenl, backlight driver support and console on frame
buffer was not enabled. There was also an issue with my init.d/rcS, fstab
files and dev directory. Initially I followed this link
"http://wiki.iface.ch/index.php/Basic_rootfs_for_Mini2440"; to create these
files. 

But I am getting permission error with /dev/null, /dev/ttySAC0.I wa
manually creating /dev/tty .... etc. I even changed chmod 666 to all the
nods in /dev folder. But i was still getting a error saying couldnt open
<node> no such file or folder. 

Then I found another inittab script on
"http://cchia-cwp.blogspot.com.au/2010/03/build-root-file-system.html";. I
even modified rcS script so that i creates the nodes and directories.

How to assign different console to touch screen and serial port. my
bootargs has console=ttySAC0,115200.

tamamontu
Hi Guys, 

I am getting syntax error with tslib binaries when i install them on
mini2440

1) ts_calibrate: line 1: syntax error: end of file unexpected.
2) ts_harvest: line 1: syntax error: word unexpected (expecting")")
3) ts_print: line 1: syntax error: word unexpected (expecting")")
4) ts_test : line 3: syntax error: "(" unexpected
5) ts_print_raw: some unicode characters cant even read them. 


I followed the link to compile tslib and qt.
http://mini2440vietnam.blogspot.com.au/2011/04/upgrade-qt462-in-mini2440...
http://billforums.station51.net/viewtopic.php?f=8&t=15&p=44#p44

After I run "./autogen.sh" on host pc I get following output. Is this
correct or some thing went wrong?
------------------------------------------------------------------------
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./config.guess'
libtoolize: copying file `./config.sub'
libtoolize: copying file `./install-sh'
libtoolize: copying file `./ltmain.sh'
libtoolize: putting macros in `m4/internal'.
libtoolize: copying file `m4/internal/libtool.m4'
libtoolize: copying file `m4/internal/ltoptions.m4'
libtoolize: copying file `m4/internal/ltsugar.m4'
libtoolize: copying file `m4/internal/ltversion.m4'
libtoolize: copying file `m4/internal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros
in-tree.
configure.ac:7: installing `./missing'
------------------------------------------------------------------------

Then i ran 
./configure --host=arm-linux --prefix=/usr/tslib --enable-shared=yes
--enable-static=yes

followed by make and make install.

Didnt get any errors. 

Did i miss any step or the cross compile went wrong. Can some one please
help me to get tslib working.

thanks
tama

Juergen Beisert
> 1) ts_calibrate: line 1: syntax error: end of file unexpected.

$ file tests/ts_calibrate
tests/ts_calibrate: POSIX shell script text executable

> 2) ts_harvest: line 1: syntax error: word unexpected (expecting")")

$ file tests/ts_harvest
tests/ts_harvest: POSIX shell script text executable

and so on...
I guess you installed the "tests/ts_*" to your mini. PEBCAK. Use the
"tests/.libs/ts_*" instead. Or run "make install" which shows you, what
files are really have to be installed to your target.

tamamontu
Attachment: tslib_logs.zip (8.35 KB)
Hi Juergen,

Thanks for your tip.  I installed files from /usr/local/tslib (host-pc) to
mini2440 /usr/local/tslib. There is no such folder as .libs inside
tslib/tests (host-pc). 
 
I recompiled tslib as I was not sure whether it was compiled correctly. 
After going through
"http://billforums.station51.net/viewtopic.php?f=8&t=15&start=130...; 

My steps were as follows:=> 
1) export PATH=/usr/local/arm/4.4.3/bin:$PATH
export CROSS_COMPILE=arm-none-linux-gnueabi-
export CC="${CROSS_COMPILE}gcc -march=armv4t -mtune=arm920t"
export CXX=${CROSS_COMPILE}"g++"
export AR=${CROSS_COMPILE}"ar"
export AS=${CROSS_COMPILE}"as"
export RANLIB=${CROSS_COMPILE}"ranlib"
export LD=${CROSS_COMPILE}"ld"
export STRIP=${CROSS_COMPILE}"strip"

2)./autogen-clean.sh

3) export ac_cv_func_malloc_0_nonnull=yes

4) ./autogen.sh

5)CC=/usr/local/arm/4.4.3/bin/arm-none-linux-gnueabi-gcc CFLAGS="-O0
-msoft-float -D__GCC_FLOAT_NOT_NEEDED -march=armv4t -mtune=arm920t"

6)CXX="/usr/local/arm/4.4.3/bin/arm-none-linux-gnueabi-g++ -O0 -msoft-float
-D__GCC_FLOAT_NOT_NEEDED -march=armv4t -mtune=arm920t"

7)./configure --host=arm-none-linux-gnueabi --target=arm-none-linux-gnueabi
-enable-static=no -enable-shared=yes -prefix /usr/local/tslib

8) make
9) sudo make install
-------------------------------------------------------------------------

After make install tslib was installed at /usr/local/tslib (host-pc). 
I tested the binaries(/usr/local/tsclib/bin on host pc) as you suggested in
earlier post.
>file ts_calibrate 
>ts_calibrate: ELF 32-bit LSB executable, ARM, version 1 (SYSV),   
 dynamically linked (uses shared libs), for GNU/Linux 2.6.32, not stripped

then I tried to read the libraries being used using readelf command
------------------------------------------------------------------------
root@:"$CROSS_COMPILE"readelf -a ts_calibrate | grep lib
      [Requesting program interpreter: /lib/ld-linux.so.3]
 0x00000001 (NEEDED)                     Shared library: [libts-1.0.so.0]
 0x00000001 (NEEDED)                     Shared library: [libdl.so.2]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]
0001401c  00000c16 R_ARM_JUMP_SLOT   00008adc   __libc_start_main
    12: 00008adc     0 FUNC    GLOBAL DEFAULT  UND
__libc_start_main@GLIBC_2.4 (2)
    62: 00000000     0 FILE    LOCAL  DEFAULT  ABS ts_calibrate.c
   176: 0000b3ec     4 FUNC    GLOBAL DEFAULT   13 __libc_csu_fini
   179: 00008adc     0 FUNC    GLOBAL DEFAULT  UND
__libc_start_main@@GLIBC_
   233: 0000b3f0   112 FUNC    GLOBAL DEFAULT   13 __libc_csu_init
   249: 00008ce0  1656 FUNC    GLOBAL DEFAULT   13 perform_calibration
  000000: Version: 1  File: libc.so.6  Cnt: 1
------------------------------------------------------------------------
I get same result for all the binaries. 

Then I did the same test in tests folder inside tslib folder from where
tslib was installed.

file ts_calibrate
ts_calibrate: Bourne-Again shell script text executable

I installed tslib from /usr/local/tslib(host pc) to mini2440 rootfs
/usr/local/tslib. I also had to copy libdl.so.2 from cross compiler folder
to mini2440 /usr/lib.

I have a profile file with variables which is loaded by /etc/init.d/rcS. 
The variables are as follows:
export LD_LIBRARY_PATH=/usr/local/tslib/lib
#export QWS_MOUSE_PROTO=tslib:/dev/input/event0
export TSLIB_CALIBFILE=/etc/pointercal        
export TSLIB_CONFFILE=/usr/etc/ts.conf
export TSLIB_CONSOLEDEVICE=none               
export TSLIB_FBDEVICE=/dev/fb0              
export TSLIB_PLUGINDIR=/usr/local/tslib/lib/ts
export TSLIB_TSDEVICE=/dev/event0
export TSLIB_TSEVENTTYPE=INPUT                
export QWS_DISPLAY=LinuxFB:mmWidth=800:mmHeight=480
export QTDIR=/usr/local/Qt                 

I have not yet installed qt on mini2440. I am just running ts_calibrate
from /usr/local/tslib/bin(mini2440) to check if that is working first.

I am getting a new error now.
./ts_calibrate
ts_open: no such file or directory. 

I did cat /dev/event0 to see if touch screen drivers are working. I get
strange characters after I touch the screen. Is it correct? also while the
kernel is booting I can see
--------------------------------------------------------  
Console: switching to colour frame buffer device 100x30
fb0: s3c2410fb frame buffer device
backlight  initialized

mice: PS/2 mouse device common for all mice
s3c2410 TouchScreen successfully loaded
input: s3c2410 TouchScreen as /devices/virtual/input/input0
--------------------------------------------------------

I am struggling to get tslib working. If you dont mind can you please have
a look at the attached logs and tell me what might be going wrong in my
steps. 

thanks
tama

Juergen Beisert
You should google around for the usage of DESTDIR when you cross compile
packages. Simply running "sudo make install" for a cross compiled package
is a risk for your host. I thought you are aware of that.

Run your "./ts_calibrate" with "strace" on your Mini2440 to see, what it
tries to open and get an idea what's missing.

davef
"I thought you are aware of that."

Yikes ... doesn't

--prefix /usr/local/tslib

ensure you don't mess with your host?

Or is 

--prefix /home/davef/install-arm/tslib

a lot safer?

Juergen Beisert
Using --prefix is sometimes run-time critical. If you define "--prefix
/home/davef/install-arm/tslib" some packages compile in this path and try
to load other components at run-time from this path and fail.
But the autotools are DESTDIR aware. So, you can still define "--prefix
/usr" for run-time and DESTDIR to "/home/davef/install-arm/tslib". This
will result into an install path when you run "make install" to
"/home/davef/install-arm/tslib/usr". This doesn't conflict with your host
and at run-time the package still searches at "/usr" which is also correct
(PTXdist uses this mechanism to let all packages install their results to
"<your-platform>/packages/<package>/" for example).

davef
Thank you, I had better read up on DESTDIR as well!

tamamontu
Hi Juergen, Thanks for pointing to DESTDIR option.

I tried running strace on mini2440, but i get a "-bin/sh: strace: not
found"

I even checked busybox 1.13 options using make menuconfig. Didnt find any
option as strace. Does strace need to be installed separately? How to
install this tool?

My work place also have a mini2440 with 7inch screen. I tried to run
./ts_calibrate on that board. But I get the same error as ts_open not
found. This board has the factory installed kernel and rootfs. Still
ts_calibrate dosent work on this board. Then how can qtopia works with
touch screen on this board.

Any ideas as in how to resolve tslib.

Thanks
Tama

Juergen Beisert
I do not use the original root filesystem coming with the board, nor I use
their kernel. Sorry, I cannot help you with your software installation you
have.

tamamontu
Hi Jurgen, Thanks for being patient and going through my threads. I managed
to resolve the issue. It was my bad, it was because of wrong environment
variable.

Now ts_calibrate is working fine. 

Thanks
Tama

Winston
hey  tamamontum,
   could u please tell me what were the environmental variables that u
passed to get ts_calibrate ???

  Even I am getting the same error "ts_open: No such file or directory"

I have set.....

export TSLIB_TSDEVICE=/dev/input/ts0 
export TSLIB_CALIBFILE=/etc/pointercal 
export TSLIB_CONFFILE=/usr/etc/ts.conf  

QWS_MOUSE_PROTO=tslib:/dev/input/ts0


 Please help me..

 Thanks

 Winston

davef
First do:

cd /
find -name ts_open -print

Simon
I could get the touchscreen working following this link (I didn't do any of
the QT stuff):

http://linuxandstuff.blogspot.com/2012/05/mini6410-debian-with-touch-scr...

The driver I used can be found here: ftp://ftp.friendlyarm.net/src/

And also, I found what I needed to export here:
http://www.friendlyarm.net/forum/topic/4101

Good luck!
-S

Simon
btw, I'm using a mini6410