Ma proprio perché il kernel è estremizzato che hai bisogno di modificarlo. Normalmente in un computer il kernel gestisce sì la RAM, ma questa non viene "intaccata" da altro hardware (come videocamera, led, ...), a meno che non sia una scheda video integrata (e lì c'è il modulo che si carica o meno dipendentemente dalla GPU). Su cellulari come questi invece ogni singolo componente hardware ha diretto accesso alla sua porzione di RAM. Essendo estremamente ottimizzato il kernel ha dei preset su dove ogni singolo componente deve metter mani. Cambiando il supporto RAM ovviamente devi cambiare gli offset.
Il kernel di Android funziona perfettamente con il G1 perché è il cellulare ufficialmente supportato, sul G2 funziona perché è praticamente un G1, la HTC ha voluto creare un cellulare con più RAM, allora il problema non è tanto della Google che deve per forza supportare tutti i cellulari, quando dei singoli distributori che dovrebberlo rilasciare sempre e subito i dettagli tecnici.