For older Android phones like the G1, it has been difficult if not impossible to upgrade to 2.1 because the devices do not have enough space in ROM to store the entire firmware
and userspace applications. There are a few custom firmwares that use an "Apps2SD" method of running applications from the SD card, but it tends to be flaky, and requires special partitioning from the user.
If 2.2 makes the Apps2SD method a reliable part of the core firmware, combined with the JIT/V8 performance boosts, it should be quite possible to breath new life into an older model with 2.2.