> I was curious about what would happen if I tried to put linux
> on one of the new 3900 series iPaqs. My reading of the
> 3950/3970 thread suggests that:
>
> 1. The new XScale chip is binary compatible with the older
> StrongARM chip and most of the surrounding hardware
> (chipsets, etc.) hasn't changed much so it should mostly
> work, with the caveat that not many people (if any) have
> tried this yet so there may be unexpected issues.
Mostly work in the sense that Linux will work. Nicolas Pitre and others
have been working on Linux support of the Xscale chip. They have most,
but not all, of the Xscale functionality working (for example, the last
post I saw from him indicated they were still working on
suspend/resume).
But even having Linux working is of little use to a
3900-owner....because there are really _three_ categories of "working"
that must be done before you will have a usable iPAQ:
#1: Working Bootloader. Bootloaders do a lot of initial tweaking to
the hardware to get everything running. The current bootloader does
SA-1100 specific tweaking. Jamey and Brian are working on a bootloader
that does the PXA-specific tweaking.
#2: Working Linux on PXA (this is what Nicholas and gang have been
doing). You need support for a bunch of different parts of the chip -
GPIO, MMU, UARTs, Video controller, memory interface, RTC,
suspend/resume, USB, etc. There are a lot of parts in here. Getting
the OS running is only the first step; getting all the peripherals
running is a lot of work.
#3: Support for the iPAQ 3900-specific hardware. Now you need to add
support for twiddling the correct lines to turn on and off the video
screen, backlight, battery charger, PCMCIA to expansion packs, buttons,
touchscreen, microphone, audio speaker, SD/MMC slot, Bluetooth, etc. As
is normal in handheld computers, most of these "extra" bits of
functionality are controlled through a memory-mapped interface to custom
ASICs. In the case of the 3900, it's (mostly) the same ASIC set as used
in the 3800, so we have some hope that much of the 3800 code can be
re-used in the 3900. But one still has to remap all of the GPIO lines
and get the memory space set up correctly.
To paraphrase Alan, the userspace applications should mostly just work.
> 2. Just like WinCE is seeing performance issues running on
> the XScale without XScale-optimized code, there will be
> performance issues with StrongARM-targeted code for linux,
> but that those issues are being actively worked on.
They are being worked on. The kernel will be compiled with Xscale
optimizations. Nick is setting up an autobuild system that compiles all
of the base parts of the standard distribution for both StrongArm and
Xscale (libc is probably the most important part). If we can add in Qt
& X to the optimized mix, we should see good performance.
- Andrew
Received on Thu Jul 11 13:05:14 2002
This archive was generated by hypermail 2.1.8 : Tue May 04 2004 - 09:44:53 EDT