i.MX53 Quick Start Board needed working kernel

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX53 Quick Start Board needed working kernel

978 Views
Ananth
Contributor III
Hi all, I had tried following kenrels and facing some bottleneck on each kernels 1. linux-linaro-natty taken from git clone git://git.linaro.org/bsp/freescale/linux-linaro-natty.git problem : Not able to build mxc camera drivers CC [M] drivers/media/video/mxc/capture/ov5642.o drivers/media/video/mxc/capture/ov5642.c: In function 'ioctl_s_power': drivers/media/video/mxc/capture/ov5642.c:1503: error: dereferencing pointer to incomplete type drivers/media/video/mxc/capture/ov5642.c:1504: error: dereferencing pointer to incomplete type 2. linux-2.6.35.3 got from ltib menu config problem : In booting the board with this kernel it sends junk data at working uart after configuring the uart0. mxc_ipu mxc_ipu: Channel already uninitialized 10 Serial: MXC Internal UART driver mxcintuart.0: ttymxc0 at MMIO 0x53fbc000 (irq = 31) is a Freescale i.MX �����ކ憘� >�&���&ޘ8�&���8�����>枞����8��&���x��枞������ >�&���؆&ؘ�8����� &8&��& Suggest me some working kernel for IMX53 Quick Start Board. Thanks and regards, Ananth.
Labels (1)
0 Kudos
5 Replies

615 Views
rlorriaux
Contributor I

The defconfig is good but you need to amend it with the modifications mentioned in the debug output.

0 Kudos

616 Views
Ananth
Contributor III

Hi Phil,

 

 Thanks for your post, I was most concern about the camera related stuff on kernels.

Unfortunately, Linaro kernels (2.6.38) able to boot on my QSB with imx5_defconfig. But it fails to compile the camera related support :-(, So i downgraded my working kernel version to 2.6.35.3 (After pll patch) it have camera related stuff and it satisfy my current basic needs.

 

Currently i am using imx5_defconfig for QSB. I suspect that is not the correct .config for the QSB

because i was getting following errors from the Board boot up. Can any one share the correct .config file for QSB.

 

****************************** NOTICE *****************************
You have seen this notice as you have enabled OTG driver for mx53 LOCO board
For mx53 loco board, the OTG function is unavailable due to hardware limitation
So, Only one usb function (device or host) can be available for certain image
Please config your kernel to disable OTG and the usb function you don't want to use
And remain the other usb function you would like to use

Below OTG configs should be removed:
CONFIG_MXC_OTG, CONFIG_USB_OTG

Choose one of below configs for host or device function
But DO NOT choose them together

OTG host config
CONFIG_USB_EHCI_ARC_OTG

OTG device config
CONFIG_USB_GADGET

 

Thanks and regards,

Ananth.

0 Kudos

616 Views
PhilEndecott
Contributor II
Hi Ananth, The UART junk is because uboot sets up some clocks, but different versions of uboot set them up in different ways. Some kernel versions expect one setup and others require another setup. It looks to me as if you need a newer kernel than 2.6.35.3 for this to work. My experience with the Linaro kernels was that they don't support many of the i.MX53 peripherals, e.g. SATA. The "incomplete type" error that you report looks to me like a .config issue: you need to find a config setting to turn on that will enable whatever file contains the definition of that type. Ideally, the Kconfig files indicate the dependencies between settings so that turning on one feature automatically turns on the things that it depends on, but in my experience the Freescale Kconfigs don't do this. I have written up my attempts at building a kernel for this board here: http://chezphil.org/tvcomputer/kernel.html . This may not be much use to you, though, as I have the older uboot.
0 Kudos

616 Views
Ananth
Contributor III

Hi Remi ,

Thanks, the pointed link have this patch and it works for me

diff --git a/arch/arm/mach-mx5/clock.c b/arch/arm/mach-mx5/clock.c
index d68d706..1139136 100644
--- a/arch/arm/mach-mx5/clock.c
+++ b/arch/arm/mach-mx5/clock.c
@@ -2126,7 +2126,7 @@ static int _clk_uart_set_parent(struct clk *clk, struct clk *parent)

 static struct clk uart_main_clk = {
        __INIT_CLK_DEBUG(uart_main_clk)
-       .parent = &pll2_sw_clk,
+       .parent = &pll3_sw_clk,
        .get_rate = _clk_uart_get_rate,
        .set_parent = _clk_uart_set_parent,
 };

Thanks and regards,
Ananth.

0 Kudos

616 Views
rlorriaux
Contributor I
0 Kudos