On Tue, Feb 17, 2009 at 05:34:22PM +0000, 郑伟 wrote: > > Hi All, > I downloaded the latest binary of kernel from > http://downloads.freesmartphone.org/fso-stable/milestone5/om-gta01/ and the > kernel runs well on qemu. I noticed that the kernel’s version is 2.6.24. > But the kernel 2.6.29 failed on qemu when I downloaded the latest source code > of openmoko kernel like this: > git clone git://git.openmoko.org/git/kernel.git linux-2.6 > cd linux-2.6 > git checkout origin/andy-tracking > cp arch/arm/configs/gta01-moredrivers_defconfig .config > make ARCH=arm menuconfig //I unselected the EABI option from kernel features. > make ?Cj2 ARCH=arm CONFIG_DEBUG_SECTION_MISMATCH=y EXTRAVERSION=GTA01_stable; > ${CROSS_COMPILE}objcopy -O binary -R .note -R .comment -S > arch/arm/boot/compressed/vmlinux linux.bin > rm -f linux.bin.gz > gzip -9 linux.bin > ../u-boot/tools/mkimage -A arm -O linux -T kernel -C gzip -a > $START -e $START -n "OM $PRODUCT $BRANCH""_$HEAD" -d linux.bin.gz > uImage-$PRODUCT.bin > > Please tell me why. Thanks. I have spent a lot of time on it. > The kernel's output is below : > > PC is at 0x0 > LR is at jbt_probe+0x1a8/0x22c > pc : [<00000000>] lr : [<c02dc884>] psr: 60000013 > sp : c7819b08 ip : c7a78630 fp : c7819b28 > r10: 00000000 r9 : 00000000 r8 : c02e0fec > r7 : c71dda44 r6 : c71ff400 r5 : c71dda00 r4 : 00000000 > r3 : 00000000 r2 : 00000000 r1 : c71ff418 r0 : c71dda00 > Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel > Control: c0007177 Table: 30004000 DAC: 00000017 > Process swapper (pid: 1, stack limit = 0xc7818260) > Stack: (0xc7819b08 to 0xc781a000) > 9b00: c71dda00 00000000 00000000 c03cea60 c04279c8 c7819b38
Looks like mach_gta01.c does not define probe_completed for jbt6k74. Andy, can you please apply it ? Signed-off-by: Balaji Rao <[email protected]> diff --git a/drivers/video/display/jbt6k74.c b/drivers/video/display/jbt6k74.c index 9a8ae1b..6b6526e 100644 --- a/drivers/video/display/jbt6k74.c +++ b/drivers/video/display/jbt6k74.c @@ -683,7 +683,8 @@ static int __devinit jbt_probe(struct spi_device *spi) goto err_sysfs; } - (jbt6k74_pdata->probe_completed)(&spi->dev); + if (jbt6k74_pdata->probe_completed) + jbt6k74_pdata->probe_completed(&spi->dev); return 0;
