Leapster Explorer: Testing Kernels via USB Boot

From eLinux.org
Revision as of 11:06, 4 August 2010 by Nirvous (talk | contribs) (Created page with '==Background== The Leapster Explorer (LX) differs from Didj in many ways. Among the most siginificant is the USB recovery function, designed to be used in conjunction with LFConn…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Background

The Leapster Explorer (LX) differs from Didj in many ways. Among the most siginificant is the USB recovery function, designed to be used in conjunction with LFConnect to recover the LX to a known-working state.

We can leverage this USB recovery function to transfer kernels we want to test to the LX without having to do a destructive write of the new kernel to the LX nand (which can be dangerous). The result is an ability to test kernels on LX using USB booting, just like we test kernels using UART or SD kernel booting on the Didj.

Implementation

1. Modify lines 999-1008 of linux2.6/drivers/nand/lf1000.c as follows:

//if (gpio_get_boot_source_config() == SCRATCH_BOOT_SOURCE_USB)
//{
//	base_parts = partition_info_recovery;
//	base_parts_nb = ARRAY_SIZE(partition_info_recovery);
//}
//else
//{
    base_parts = partition_info;
    base_parts_nb = ARRAY_SIZE(partition_info);
//}

2. Once you have made this modification, go to the linux2.6 directory and build the kernel:

$make

3. Create the 'cbf' file that can be used for usb boot. in the scripts directory, type:

$make_cbf.py

4. Put the LX into recovery mode via powering up while pressing LS-RS-Hint.

5. Use pager.sh to transfer the kernel (more info on pager.sh).