While doing the early console set up, there is a function call to drivers/serial/8250_early.c/serial8250_find_port_For_earlycon()
The above function always returns with an error condition. It does checks on the early_device and these checks fail (it fails because the early_device.port is un-initialized). I checked the code and see that early_device (which is a static variable) is never intialzed any where in the code drivers/serial/8250_early.c. I wonder if the earlycon support has been added for 2.6.32 kernel? any suggestions? On Thu, Sep 30, 2010 at 9:18 PM, kunal singh <[email protected]> wrote: > Tried with earlyprintk, but the problem persists > > > On Thu, Sep 30, 2010 at 8:45 PM, kunal singh <[email protected]>wrote: > >> Hi Hemant, >> >> No I have not added the earlyprintk. I will investigate this. Shall I >> add earlyprintk=serial,uart0 ? >> >> BTW, I tried to trace down the printk code flow in kernel/printk.c. >> (1) in the function _call_console_drivers(), __call_console_drivers() >> never gets called [the if() condition is never met]. >> (2) May be it probably explains why nothing gets printed on serial? Is >> this because there is no earlyprintk in bootargs? >> >> Regards, >> kunal >> >> >> >> >> >> On Thu, Sep 30, 2010 at 8:19 PM, Pedanekar, Hemant <[email protected]>wrote: >> >>> Just to check: have you added "earlyprintk" to your bootargs? >>> >>> - >>> Hemant >>> >>> >>> >>> ------------------------------ >>> *From:* kunal singh [mailto:[email protected]] >>> *Sent:* Thursday, September 30, 2010 7:40 PM >>> *To:* Raffaele Recalcati; Nori, Sekhar; Pedanekar, Hemant >>> >>> *Cc:* [email protected] >>> *Subject:* Re: problem with serial console >>> >>> Hi All, >>> >>> >>> Thanks a lot for posting the comments here. >>> >>> (1) I have added some printascii() statements in function >>> init/main.c/start_kernel() to trace the boot sequence >>> (a) printascii() to print the command line arguments >>> (b) printascii() before doing the console_init() >>> (c) printascii() after doing the console_init() >>> >>> (2) The log (posted below) suggests that the boot sequence goes beyond >>> console_init(). Since console_init is done I would expect that all my printk >>> messages should start to appear on the console . But it does not. (however >>> the printascii still works, as you can see messages in the bootlog, hence I >>> would assume that hardware is fine) >>> >>> I would appreciate if you can give some suggestion on how to debug >>> this issue further. >>> >>> Thanks, >>> kunal >>> >>> >>> /************* HERE IS THE BOOT LOG ****************************/ >>> run devboot >>> TFTP from server 10.0.0.1; our IP address is 10.0.0.3 >>> Filename '/home/kunal/xcaster/ingenient-bsp/images/uImage'. >>> Load address: 0x82000000 >>> Loading: #T >>> ################################################################ >>> >>> ################################################################# >>> #################T >>> ################################################ >>> >>> ################################################################## >>> ###################T ##########T >>> #################################### >>> ##########################################T #### >>> done >>> Bytes transferred = 1898780 (1cf91c hex) >>> ## Booting image at 82000000 ... >>> Image Name: Linux-2.6.32-rc2-davinci1 >>> Image Type: ARM Linux Kernel Image (uncompressed) >>> Data Size: 1898716 Bytes = 1.8 MB >>> Load Address: 80008000 >>> Entry Point: 80008000 >>> Verifying Checksum ... OK >>> OK >>> >>> Starting kernel ... >>> >>> Uncompressing >>> Linux........................................................................................................................... >>> done, booting the kernel. >>> >>> console=ttyS0,115200n8 root=/dev/nfs rw >>> nfsroot=10.0.0.1:/home/kunal/xcaster/ingenient-bsp/rootfs/fs,udp,v3,rsize=4096,wsize=1400 >>> ip=10.0.0.3:10.0.0.1:10.0.0.1:255.255.255.0:XCASTER5000::off mem=128M >>> mtdparts=davinci-nand.0:96k(ubl),736k(uboot),64k(uboot-env),2m(kernel),61568k(app) >>> eth=80:4C:EF:54:87:0A >>> doing console init now >>> finished console init >>> >>> /***************************************************************/ >>> >>> >>> On Thu, Sep 30, 2010 at 6:26 PM, Raffaele Recalcati < >>> [email protected]> wrote: >>> >>>> On Thu, Sep 30, 2010 at 2:35 PM, kunal singh <[email protected]> >>>> wrote: >>>> > Hi Raffaele, >>>> > >>>> > Thanks for the suggestion. >>>> > >>>> > (1) Console is fine. I am able to communicate with the u-boot >>>> (115200,n8). >>>> > Also if I use printascii (a kernel function) I am able to output on >>>> console. >>>> > (2) There is no message, after the kernel decompression (because >>>> console is >>>> > not up). Here is what I see. >>>> > >>>> > Load address: 0x82000000 >>>> > Loading: ####T ###################T >>>> > ########################################## >>>> > >>>> ################################################################## >>>> > ######################T >>>> > ############################################ >>>> > >>>> ################################################################# >>>> > ###################T >>>> > ##############################################T ## >>>> > ######T ######################################## >>>> > done >>>> > Bytes transferred = 1898828 (1cf94c hex) >>>> > ## Booting image at 82000000 ... >>>> > Image Name: Linux-2.6.32-rc2-davinci1 >>>> > Image Type: ARM Linux Kernel Image (uncompressed) >>>> > Data Size: 1898764 Bytes = 1.8 MB >>>> > Load Address: 80008000 >>>> > Entry Point: 80008000 >>>> > Verifying Checksum ... OK >>>> > OK >>>> > >>>> > Starting kernel ... >>>> > >>>> > Uncompressing >>>> > >>>> Linux........................................................................................................................... >>>> > done, booting the kernel. >>>> > >>>> > /* AND THEN NOTHING BECAUSE CONSOLE IS NOT FUNCTIONAL, but booting >>>> goes on >>>> > */ >>>> >>>> How can you say that boot goes on? >>>> Can you check mem inside bootargs? >>>> For instance I have 128MB RAM and I use these bootargs. >>>> >>>> set bootargs 'console=ttyS0,115200n8 rw >>>> ip=10.39.10.183:10.39.10.169:10.39.8.1:255.255.248.0:::off >>>> root=/dev/nfs nfsroot=10.39.10.169:/home/NFS/ARAGO_DEMO_IMAGE-raf/ >>>> mem=128M video=davincifb:output=lcd:format=rgb:vid0=240x...@0 >>>> ,0:vid1=240x...@0,0:osd0=240x...@0,0:osd1=240x...@0,0 >>>> ' >>>> >>>> Don't copy my bootargs, only do some tests. >>>> I saw your behaviour when mem was wrong. >>>> >>> >>> >> >
_______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
