The AM1808/OMAP-L138 silicon of revision 2.0+ does not boot with the Linux kernel code, why not?
A: The new revision 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",
},
|