Both are Tegra2 devices
Both are using the same Wifi chips
Both are GSM/HSPA devices
Plan of action:
Then you should have a binary compatible Atrix-fied Xoom kernel, running on the Atrix. Which enables you to
Both are using the same Wifi chips
Both are GSM/HSPA devices
Plan of action:
- Get Xoom kernel for 2.6.32 (same level as the kernel we've got for Atrix)
- Diff the two for platform specific changes
- Get Xoom kernel for 4.1.2 release (http://www.xda-developers.com/android/motorola-xoom-gets-stock-rooted-android-4-1-2/)
- Put in platform specific changes learned from diff
Then you should have a binary compatible Atrix-fied Xoom kernel, running on the Atrix. Which enables you to
- Use Xoom hardware acceleration
- Have a propper Project Butter experience
- Have a kernel that doesn't run on the compatibility mode of bionic libraries
- A more modern and mature Linux kernel (and libs)
board-*.c differencesXoom Device specifics
git clone https://android.googlesource.com/device/moto/stingray
Xoom Kernel
git clone https://android.googlesource.com/kernel/tegra
Xoom Sourceforge page
http://sourceforge.net/projects/xoom.motorola/files/
Wiki entry for the SOC
http://en.wikipedia.org/wiki/Tegra (note the difference, we're using Ventana, Xoom is using Harmony => we are using different chips - surprise...)
ATRIX STARTUP (tegra_olympus_init)
Nothing weird here.
- Tegra common init
- Programming jig on GPIO PV6 disable
- Pin multiplexing
- Clock init
- Setup debug UART on UART B
- Start DSI clock
- Start 3D clock, make sure it is at correct speed
- Register platform devices
- Keypad
- I2C
- LCD Panel
- SDHCI/MMC
- WLAN
XOOM STARTUP
- Tegra common init
- Tegra init suspend
- EMC
- Setup Tap delay on wifi chip to 6
- Programming jig on GPIO PV4 disable
- USB OTG setup
- Setup GPIO for charging circuitry on GPIO PV5
- Enable charge LEDS
- Dynamic voltage and frequency scaling disabling on P1 hardware
- Enable power rail on Wifi/BT chip BCM4329
- Pin mux edit
- Clock init
- Setup debug through UART B (! same as Atrix)
- Init Digital->Audio converter 1
- Init Digital->Audio converter 2
- Setup device structs on platform struct
- Audio init
- RAM Console start
- Weird memory carve outs (for what, firmware later on?)
- Register platform devices with kernel
- I2C
- Power off (?) init
- Keypad
- Touch
- Power
- W1
- WLAN
- GPS
- USB
Marked are things that are different and / or weird in the init phase.
Last edited: