This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

L138/ AM1808 silicon 2.0+ does not boot with 2.6.33 Linux kernel

Other Parts Discussed in Thread: AM1808, OMAP-L138

The AM1808/OMAP-L138 silicon of revision 2.0+ does not boot with the Linux kernel code, why not?

A: The new revision EVM boards were getting stuck in setup_arch() when the CPU ID is determined. There were accommodations in 2.6.33 for silicon revisions up to 1.1 but not for 2.0+ as there are in 2.6.37. To account for this, Below is a patch for the following change:

In kernel linux-2.6.33/arch/arm/mach-davinci/da850.c, add a definition to da850_id list which is needed for OMAP-L138 silicon revision 2.0+

 /* Contents of JTAG ID register used to identify exact cpu type */
 
 static struct davinci_id da850_ids[] = {
               {
                               .variant = 0x0,
                               .part_no        = 0xb7d1,
                               .manufacturer   = 0x017,   /* 0x02f >> 1 */
                               .cpu_id         = DAVINCI_CPU_ID_DA850,
                               .name           = "da850/omap-l138",
               },
/* Added definition for variant 0x01 which is needed for silicon revision 2.0+ */
               {
                               .variant = 0x1,
                               .part_no        = 0xb7d1,
                               .manufacturer   = 0x017,   /* 0x02f >> 1 */
                               .cpu_id         = DAVINCI_CPU_ID_DA850,
                               .name           = "da850/omap-l138/am18x",
               },