i want to update kernel version in LTIB for imx25

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

i want to update kernel version in LTIB for imx25

Jump to solution
3,346 Views
priti1z
Contributor II

Hi ,

We are using 2.6.31 linux kernel provided by freescale for I.mx25. we want to update the kernel and the versanion is 3.0.

1)Has any one worked on updating linux kernel with Ltib?

2)what changed needs to be done in LTIB  in order to integrate the updated kernel and porting back to the I.mx25?

Regards,

Priti

Labels (1)
1 Solution
1,363 Views
fabio_estevam
NXP Employee
NXP Employee

You only need to add SPI to the mx25_3ds board. Take a look at:

arch/arm/mach-imx/eukrea_mbimxsd25-baseboard.c for a reference.

Regards,

Fabio Estevam

View solution in original post

0 Kudos
10 Replies
1,363 Views
fabio_estevam
NXP Employee
NXP Employee

No need to use LTIB for using a more recent kernel.

Just get it from kernel.org, export your toolchain and then:

make imx_v4_v5_defconfig

make -j4 uImage

Regards,

Fabio Estevam

0 Kudos
1,363 Views
priti1z
Contributor II

Hi Fabio,

Thank you so much for your help ..Yes partition table was missing for IMX25 board .

i have added following mtd partition data in mx25 board file :

static struct mtd_partition mxc_nand_partitions[] = {

{

  .name = "nand.bootloader",

  .offset = 0,

  .size = 3 * 1024 * 1024},

{

  .name = "nand.kernel",

  .offset = MTDPART_OFS_APPEND,

  .size = 5 * 1024 * 1024},

{

  .name = "nand.rootfs",

  .offset = MTDPART_OFS_APPEND,

  .size = 256 * 1024 * 1024},

{

  .name = "nand.configure",

  .offset = MTDPART_OFS_APPEND,

  .size = 8 * 1024 * 1024},

{

  .name = "nand.userfs",

  .offset = MTDPART_OFS_APPEND,

  .size = MTDPART_SIZ_FULL},

};

now i can see the paritions message and it is motunting but still i am facing some write issue with file system .

same file system i am using with 2.6.31 kernel on my board and it works fine. But same is not working with 3.4.9 kernel.

even tho  i am using the same command to building  the file system

mkfs.jffs2 -r rootfs -e 0x20000  -s 0x800 -n -o rootfs.jffs2

Please find the log attached for your reference .

Please advise if you have any pointers.

Thanks in Advance.

Regards,

Priti

0 Kudos
1,363 Views
fabio_estevam
NXP Employee
NXP Employee

Please post the detailed error messages to the linux-arm-kernel and linux-mtd lists.

Regards,

Fabio Estevam

0 Kudos
1,363 Views
priti1z
Contributor II


Hi,

i am working on SPI device . in 3.4.9 kernel i dont see SPI support for I,MX25.

i have found one file linux-3.4.9/drivers/spi/spi-imx.c , i can see

static const struct of_device_id spi_imx_dt_ids[] = {

{ .compatible = "fsl,imx1-cspi", .data = &imx1_cspi_devtype_data, },

{ .compatible = "fsl,imx21-cspi", .data = &imx21_cspi_devtype_data, },

{ .compatible = "fsl,imx27-cspi", .data = &imx27_cspi_devtype_data, },

{ .compatible = "fsl,imx31-cspi", .data = &imx31_cspi_devtype_data, },

{ .compatible = "fsl,imx35-cspi", .data = &imx35_cspi_devtype_data, },

{ .compatible = "fsl,imx51-ecspi", .data = &imx51_ecspi_devtype_data, },

{ /* sentinel */ }

};

and also there is no Spi Device initialization in mx25 board file( mach-mx25_3ds.c) .

Does it mean this main line kernel does not support I.mx25 SPi interface or i only need to add I,mx25 SPI controller data here?

0 Kudos
1,364 Views
fabio_estevam
NXP Employee
NXP Employee

You only need to add SPI to the mx25_3ds board. Take a look at:

arch/arm/mach-imx/eukrea_mbimxsd25-baseboard.c for a reference.

Regards,

Fabio Estevam

0 Kudos
1,363 Views
syedahmed
Contributor I

I am working on BSP for imx25. I had included 3.4.9 mainline kernel to ltib. I am trying to boot the board as per the imx 25 defconfig. I am trying to flash on from NAND. 

But jffs2 root file system is not mounting. Comparing booting logs of 2.6.31 kernel and 3.4.9 kernel on imx25 pdk, I observerd that mtd driver partitions table is missing even though all the drivers are enabled.  I had gone through config files and few kernel files. But unable to find partition table code in 3.4.9 kernel. Can anyone tell me where I can find mtd partition table code in 3.4.9 kernel? Or is there any other way to specify partition table settings. Please refer to the link.

Thanks in advance.

0 Kudos
1,361 Views
fabio_estevam
NXP Employee
NXP Employee

Original code does not define any partition in NAND for mx25pdk.

You can do it by defining a mtd_partition struct in arch/arm/mach-imx/mach-mx25_3ds.c.

Take a look at arch/arm/mach-imx/mach-armadillo5x0.c as reference.

Regards,

Fabio Estevam

0 Kudos
1,361 Views
daiane_angolini
NXP Employee
NXP Employee

Are you sure partition table (or NAND support) is supported on kernel 3.4.9 for imx25?

0 Kudos
1,361 Views
daiane_angolini
NXP Employee
NXP Employee

I do not understand what do you want.

1- Upgrade the kernel version for your board. (For example, have any 3.0 kernel to be loaded on your board)

2- Change LTIB configuration files to include another kernel source code.

Please, let me know what is your goal.

0 Kudos
1,361 Views
andrew_questps
Contributor III

1) Have a look at http://pengutronix.de/index_en.html  their kernel goes up to 3.2 or something around that in their git repository, and it supports the imx25 nicely.

Freescale also have a git repository at git.freescale.com that supports 3.x kernels, not sure about the imx25 support there.

However not all the peripherals of the iMX25 are supported, for instance I built a 3.2 kernel for the imx25 but haven't managed to get the ADC touchscreen to work.

2) That's not terribly difficult, I just configured ltib to build a kernel from a directory which is where the kernel source resides using the ./ltib -m config command. You configure it on the page where you select the option to configure what user packages are in the kernel. It will then cross-compile the kernel for you and place all the output files in the correct directories.

There is also a thread on this on the community here https://community.freescale.com/thread/261632 that may provide some more information.