The ODROID-X is a 3.5“ floppy disk sized single-board computer developed in South Korea by Hardkernel Co.,LTD. You can plug in your TV and keyboard and many other devices.
The ODROID-X2 is a upgrade version of ODROID-X. It comes with 1.7Ghz CPU and 2GByte DRAM. Other specification is exactly same as ODROID-X.
The ODROID-Q is a potential development device for powerful developers with 3G MODEM, GPS, Dual band WiFi, and zillion of sensors. Both are based on Samsung Electronics Exynos4412 system on chip. The ODROID-X board has been available to the public at US$ 129. The ODROID-X2 is US$135. It is a community supported development platform. We want to see it being used by developers.
Features | ||
---|---|---|
Product | ODROID-X | ODROID-Q |
Processor | CortexA9 Quad | |
AP | Exynos4412 | |
GPU | Mali-400 | |
POP memory | Samsung 8Gb LPDDR2 800Mbps | |
Storage support | optional eMMC 16GB , optional SD | builtin eMMC 16GB, optional microSD |
PMIC | MAX77686 | |
Audio codec | MAX98090 | MAX98095 |
Debug support | USB-UART based CP2104 | JTAG , USB-UART based CP2104 |
Base PCB spec | 1.2T 4layer 94 X 90mm | 1T Buildup A type 6layer 259 X 105mm |
Camera | optional MIPI 5M pixel | builtin front parallel 1.3M pixel and rear MIPI 5M pixel |
Video | HDMI, RGB, optional RGB to LVDS board | HDMI, builtin 10.1” 1280×800 LCD |
Power source | optional 5V 2A power adapter | builtin 5V 2A power adapter |
Audio outputs | 3.5mm headphone jack, Micro-D type HDMI | |
Audio inputs | external microphone | builtin microphone |
Connectivity | 10/100Mbps Ethernet (Auto-MDIX) | WiFi based BCM4330, Erisson HSDPA+ Modem |
USB device | 1 Micro USB | |
USB 2.0 external host ports | 6 (4 proved by LAN9514, 2 proved by USB3503) | 1 (provided by USB3503) |
Real-time-clock | supported | |
Expansion | 2.54mm 50p connector | 1.27mm 30p connector |
Others |
Exynos4412 is a 32-bit RISC cost-effective, low power, performance optimized Cortex-A9 Quad Core based micro-processor solution for smart phone applications. It has been built to provide optimized hardware performance for the mobile telecommunication services and general applications on smart phones. Exynos4412 adopts a 64-bit/128-bit internal bus architecture and many powerful hardware accelerators for different tasks. These tasks, for example motion video processing, image signal processing, display control and scaling. An integrated Multi Format Codec (MFC) supports encoding and decoding of MPEG-2/4, H.263, H.264 and decoding of VC1. The hardware encoder/decoder supports real-time video conferencing and digital TV out. The memory system has dedicated DRAM ports and a static memory port. The dedicated DRAM ports support the LPDDR2 interface for high bandwidth. The static memory port supports NOR flash and ROM type external memory and components.
To reduce the total system cost and enhance the overall functionality, Exynos4412 includes many hardware peripherals, such as a TFT 24-bit true color LCD controller, camera interface, MIPI DSI, CSI-2, a system manager for power management, embedded GPS and GLONASS, MIPI slimbus interface, MIPI HSI, four UARTs, 24-channel DMA, timers, general I/O Ports, three I2S, S/PDIF, eight IIC-BUS interfaces, three HS-SPI, USB Host 2.0, and USB 2.0 devices operating at high speed (480Mbps), two USB HSIC, four SD Host and a high-speed Multimedia Card interface, a chip to chip interface, and four PLLs for clock generation. A package on package (POP) option with MCP is available for small form factor applications.
Exynos4412 has 1GB low power DDR memory. Exynos4412-Prime has 2GB low power DDR memory.
Base Address | Limit Address | Size | Description |
---|---|---|---|
0x0000_0000 | 0x0001_0000 | 64 KB | iROM |
0x0200_0000 | 0x0201_0000 | 64 KB | IROM (mirror of 0x0 to 0x10000) |
0x0202_0000 | 0x0206_0000 | 256 KB | IRAM |
0x0300_0000 | 0x0302_0000 | 128 KB | Data memory or general purpose for Samsung Reconfigurable Processor SRP |
0x0302_0000 | 0x0303_0000 | 64 KB | I-cache or general purpose for SRP |
0x0303_0000 | 0x0303_9000 | 36 KB | Configuration memory (write only) for SRP |
0x0381_0000 | 0x0383_0000 | - | AudioSS'w SFR region |
0x0400_0000 | 0x0500_0000 | 16 MB | Bank0 of Static Read Only Memory Controller (SMC) (16-bit only) |
0x0500_0000 | 0x0600_0000 | 16 MB | Bank1 of SMC |
0x0600_0000 | 0x0700_0000 | 16 MB | Bank2 of SMC |
0x0700_0000 | 0x0800_0000 | 16 MB | Bank3 of SMC |
0x0800_0000 | 0x0C00_0000 | 64 MB | Reserved |
0x0C00_0000 | 0x0CD0_0000 | - | Reserved |
0x0CE0_0000 | 0x0D00_0000 | - | SFR region of Nand Flash Controller (NFCON) |
0x1000_0000 | 0x1400_0000 | - | SFR region |
0x4000_0000 | 0xA000_0000 | 1.5 GB | Memory of Dynamic Memory Controller (DMC)-0 |
0x1000_0000 | 0x0000_0000 | 1.5 GB | Memory of DMC-1 |
MAX77686 has 9 buck converters and 26 LDOs.
50pin x 8pcs B2B connectors B2B connector specification : b2b_spec.pdf
Note that we don't use J7 and J8 in ODROID-X/ODROID-X2/ODROID-Q.
pin# | Pin name | Function-X | Function-Q | CMT |
J1-1 | - | GND | GND | - |
J1-2 | - | GND | GND | - |
J1-3 | XVVD_16 | LCD_VD_16 | LCD_VD_16 | - |
J1-4 | XVVD_22 | LCD_VD_22 | LCD_VD_22 | - |
J1-5 | XVVD_13 | LCD_VD_13 | LCD_VD_13 | - |
J1-6 | XVVD_1 | LCD_VD_1 | LCD_VD_1 | - |
J1-7 | XVVD_4 | LCD_VD_4 | LCD_VD_4 | - |
J1-8 | XVVD_9 | LCD_VD_9 | LCD_VD_9 | - |
J1-9 | XVVSYNC_LDI | VSYNC_LDI | GPF3_4 | - |
J1-10 | XVVD_23 | LCD_VD_23 | LCD_VD_23 | - |
J1-11 | XVVD_14 | LCD_VD_14 | LCD_VD_14 | - |
J1-12 | - | GND | GND | - |
J1-13 | - | GND | GND | - |
J1-14 | XVVD_5 | LCD_VD_5 | LCD_VD_5 | - |
J1-15 | XVVD_10 | LCD_VD_10 | LCD_VD_10 | - |
J1-16 | XVVDEN | LCD_VDEN | LCD_VDEN | - |
J1-17 | XVVD_20 | LCD_VD_20 | LCD_VD_20 | - |
J1-18 | XVVD_7 | LCD_VD_7 | LCD_VD_7 | - |
J1-19 | XVVD_8 | LCD_VD_8 | LCD_VD_8 | - |
J1-20 | XVVD_2 | LCD_VD_2 | LCD_VD_2 | - |
J1-21 | XVVD_21 | LCD_VD_21 | LCD_VD_21 | - |
J1-22 | XVVD_19 | LCD_VD_19 | LCD_VD_19 | - |
J1-23 | OUT25 | - | - | PMIC |
J1-24 | OUT13 | - | - | PMIC |
J1-25 | - | GND | GND | - |
J1-26 | - | GND | GND | - |
J1-27 | XVVD_15 | LCD_VD_15 | LCD_VD_15 | - |
J1-28 | XVVD_0 | LCD_VD_0 | LCD_VD_0 | - |
J1-29 | XVVCLK | LCD_VCLK | LCD_VCLK | - |
J1-30 | XVVD_18 | LCD_VD_18 | LCD_VD_18 | - |
J1-31 | XVSYS_OE | SYS_OE | GPF3_5 | - |
J1-32 | XVVD_11 | LCD_VD_11 | LCD_VD_11 | - |
J1-33 | XVVSYNC | LCD_VSYNC | LCD_VSYNC | - |
J1-34 | XVVD_6 | LCD_VD_6 | LCD_VD_6 | - |
J1-35 | XVHSYNC | LCD_HSYNC | LCD_HSYNC | - |
J1-36 | XVVD_12 | LCD_VD_12 | LCD_VD_12 | - |
J1-37 | XVVD_3 | LCD_VD_3 | LCD_VD_3 | - |
J1-38 | XVVD_17 | LCD_VD_17 | LCD_VD_17 | - |
J1-39 | XSBUSCLK | SLIMbusClk | SLIMbusClk | - |
J1-40 | XSBUSDATA | SLIMbusData | SLIMbusData | - |
J1-41 | - | GND | GND | - |
J1-42 | XHDMITX2P | HDMI_TX2P | HDMI_TX2P | - |
J1-43 | XHDMITX2N | HDMI_TX2N | HDMI_TX2N | - |
J1-44 | XHDMITX1P | HDMI_TX1P | HDMI_TX1P | - |
J1-45 | XHDMITX1N | HDMI_TX1N | HDMI_TX1N | - |
J1-46 | XHDMITX0P | HDMI_TX0P | HDMI_TX0P | - |
J1-47 | XHDMITX0N | HDMI_TX0N | HDMI_TX0N | - |
J1-48 | XHDMITXCP | HDMI_TXCP | HDMI_TXCP | - |
J1-49 | XHDMITXCN | HDMI_TXCN | HDMI_TXCN | - |
J1-50 | - | GND | GND | - |
J2-1 | - | GND | GND- | - |
J2-2 | XI2S2LRCK | GPC1_2 | GPC1_2 | - |
J2-3 | XI2S2SDO | - | GPC1_4 | - |
J2-4 | XI2S1SCLK | - | GPC0_0 | - |
J2-5 | XI2S2SDI | - | - | - |
J2-6 | XI2S2CDCLK | - | GPC1_1 | - |
J2-7 | XI2S1LRCK | - | GPC0_2 | - |
J2-8 | XI2S1CDCLK | - | GPC0_1 | - |
J2-9 | XI2S1SDO | - | - | - |
J2-10 | XI2S1SDI | - | - | - |
J2-11 | XI2C1SCL | I2C_1_SCL | I2C_1_SCL | - |
J2-12 | XURXD_1 | UART_1_RXD | UART_1_RXD | - |
J2-13 | XSPICLK_0 | - | I2C_4_SDA | - |
J2-14 | - | GND | GND | - |
J2-15 | - | GND | GND | - |
J2-16 | - | GND | GND | - |
J2-17 | XPWMTOUT_2 | - | I2C_7_SDA | - |
J2-18 | XPWMTOUT_3 | - | I2C_7_SCL | - |
J2-19 | XSPIMOSI_1 | SPI_1_MOSI | GPB_7 | - |
J2-20 | XURXD_2 | - | GPA1_0 | - |
J2-21 | XSPIMOSI_0 | I2C_5_SCL | I2C_5_SCL | - |
J2-22 | XUTXD_1 | UART_1_TXD | UART_1_TXD | - |
J2-23 | XI2C0SDA | - | - | - |
J2-24 | XSPICSN_1 | SPI_1_CSN | GPB_5 | - |
J2-25 | - | GND | GND | - |
J2-26 | - | GND | GND | - |
J2-27 | XURTSN_2 | GPA1_3 | GPA1_3 | - |
J2-28 | XSPICSN_0 | - | I2C_4_SCL | - |
J2-29 | XUTXD_0 | - | UART_0_TXD | - |
J2-30 | XPWMTOUT_0 | - | TOUT_0 | - |
J2-31 | XSPICLK_1 | SPI_1_CLK | GPB_4 | - |
J2-32 | XPWMTOUT_1 | LCD_PWM | LCD_PWM | - |
J2-33 | XURXD_3 | UART_3_RXD | UART_3_RXD | - |
J2-34 | XI2C0SCL | - | - | - |
J2-35 | - | GND | GND | - |
J2-36 | - | GND | GND | - |
J2-37 | - | GND | GND | - |
J2-38 | XURTSN_0 | - | UART_0_RTSn | - |
J2-39 | XSPIMISO_0 | I2C_5_SDA | I2C_5_SDA | - |
J2-40 | XSPIMISO_1 | SPI_1_MISO | GPB_6 | - |
J2-41 | XUCTSN_2 | GPA1_2 | GPA1_2 | - |
J2-42 | XI2C1SDA | I2C_1_SDA | I2C_1_SDA | - |
J2-43 | XUCTSN_1 | I2C_2_SDA | I2C_2_SDA | - |
J2-44 | XUCTSN_0 | - | UART_0_CTSn | - |
J2-45 | XUTXD_3 | UART_3_TXD | UART_3_TXD | - |
J2-46 | XURXD_0 | - | UART_0_RXD | - |
J2-47 | XURTSN_1 | I2C_2_SCL | I2C_2_SCL | - |
J2-48 | XUTXD_2 | GPA1_1 | GPA1_1 | - |
J2-49 | XI2S2SCLK | GPC1_0 | GPC1_0 | - |
J2-50 | - | GND | GND | - |
J3-1 | - | GND | GND | - |
J3-2 | - | GND | GND | - |
J3-3 | XI2S0SDO_1 | I2S_0_SDO_1 | I2S_0_SDO_1 | - |
J3-4 | XI2S0SCLK | I2S_0_SCLK | I2S_0_SCLK | - |
J3-5 | XI2S0SDO_0 | I2S_0_SDO_0 | I2S_0_SDO_0 | - |
J3-6 | XI2S0SDO_2 | I2S_0_SDO_2 | I2S_0_SDO_2 | - |
J3-7 | XI2S0CDCLK | I2S_0_CDCLK | 2S_0_CDCLK | - |
J3-8 | XI2S0LRCK | I2S_0_LRCK | I2S_0_LRCK | - |
J3-9 | XI2S0SDI | I2S_0_SDI | I2S_0_SDI | - |
J3-10 | P32KH | - | - | PMIC |
J3-11 | 32KHCP | - | - | PMIC |
J3-12 | PWRON | - | - | PMIC |
J3-13 | JIGONB | - | - | PMIC |
J3-14 | ACOKB | - | - | PMIC |
J3-15 | MRSTB2 | - | - | PMIC |
J3-16 | MRSTB1 | - | - | PMIC |
J3-17 | XOM_1 | XOM_1 | XOM_1 | - |
J3-18 | XOM_5 | XOM_5 | XOM_5 | - |
J3-19 | XOM_3 | XOM_3 | XOM_3 | - |
J3-20 | XOM_2 | XOM_2 | XOM_2 | - |
J3-21 | XOM_4 | XOM_4 | XOM_4 | - |
J3-22 | XOM_0 | XOM_0 | XOM_0 | - |
J3-23 | - | GND | GND | - |
J3-24 | - | GND | GND | - |
J3-25 | - | GND | GND | - |
J3-26 | - | BATT | BATT | - |
J3-27 | - | BATT | BATT | - |
J3-28 | - | BATT | BATT | - |
J3-29 | OUT4 | - | - | PMIC |
J3-30 | OUT25 | - | - | PMIC |
J3-31 | OUT5 | - | - | PMIC |
J3-32 | OUT26 | - | - | PMIC |
J3-33 | OUT19 | - | - | PMIC |
J3-34 | OUT23 | - | - | PMIC |
J3-35 | OUT12 | - | - | PMIC |
J3-36 | OUT24 | - | - | PMIC |
J3-37 | OUT16 | - | - | PMIC |
J3-38 | OUT20 | - | - | PMIC |
J3-39 | OUT9 | - | - | PMIC |
J3-40 | OUT11 | - | - | PMIC |
J3-41 | BUCK8 | - | - | PMIC |
J3-42 | BUCK8 | - | - | PMIC |
J3-43 | BUCK8 | - | - | PMIC |
J3-44 | OUT10 | - | - | PMIC |
J3-45 | OUT13 | - | - | PMIC |
J3-46 | BUCK9 | - | - | PMIC |
J3-47 | BUCK9 | - | - | PMIC |
J3-48 | - | GND | GND | - |
J3-49 | - | GND | GND | - |
J3-50 | - | GND | GND | - |
J4-1 | - | GND | GND | - |
J4-2 | - | GND | GND | - |
J4-3 | OUT22 | - | - | PMIC |
J4-4 | OUT21 | - | - | PMIC |
J4-5 | XMMC3CMD | - | SD_3_CMD | - |
J4-6 | XMMC3CLK | - | SD_3_CLK | - |
J4-7 | XMMC3DATA_1 | - | SD_3_DATA_1 | - |
J4-8 | XMMC3CDN | - | GPK3_2 | - |
J4-9 | XMMC3DATA_2 | - | SD_3_DATA_2 | - |
J4-10 | XMMC3DATA_3 | - | SD_3_DATA_3 | - |
J4-11 | XMMC3DATA_0 | - | SD_3_DATA_0 | - |
J4-12 | PWRREQ | PMIC | PMIC | - |
J4-13 | - | VDD33_BYP | USB_HUB | - |
J4-14 | - | OCS_N | USB_HUB | - |
J4-15 | - | PRTPWR | USB_HUB | - |
J4-16 | - | GND | GND | - |
J4-17 | - | USBDN2_DM | USB_HUB | - |
J4-18 | - | USBDN2_DP | USB_HUB | - |
J4-19 | - | GND | GND | - |
J4-20 | - | USBDN3_DM | USB_HUB | - |
J4-21 | - | USBDN3_DP | USB_HUB | - |
J4-22 | - | GND | GND | - |
J4-23 | - | USBDN1_DM | USB_HUB | - |
J4-24 | - | USBDN1_DP | USB_HUB | - |
J4-25 | - | GND | GND | - |
J4-26 | - | GND | GND | - |
J4-27 | XMMC1DATA_1 | SD_1_DATA_1 | SD_1_DATA_1 | - |
J4-28 | XMMC1CLK | - | - | - |
J4-29 | XMMC1DATA_2 | SD_1_DATA_2 | SD_1_DATA_2 | - |
J4-30 | XMMC1CDN | SD_1_CDn | SD_1_CDn | - |
J4-31 | XMMC1DATA_0 | SD_1_DATA_0 | SD_1_DATA_0 | - |
J4-32 | XMMC1CMD | - | - | - |
J4-33 | XMMC1DATA_3 | SD_1_DATA_3 | SD_1_DATA_3 | - |
J4-34 | XMMC0DATA_0 | SD_0_DATA_0 | SD_0_DATA_0 | - |
J4-35 | XMMC0DATA_1 | SD_0_DATA_1 | SD_0_DATA_1 | - |
J4-36 | XMMC0CLK | SD_0_CLK | SD_0_CLK | - |
J4-37 | XMMC0DATA_2 | SD_0_DATA_2 | SD_0_DATA_2 | - |
J4-38 | XMMC0DATA_3 | SD_0_DATA_3 | SD_0_DATA_3 | - |
J4-39 | XMMC0CDN | - | GPK0_1 | - |
J4-40 | XMMC0CMD | SD_0_CMD | SD_0_CMD | - |
J4-41 | XMMC2DATA_3 | SD_2_DATA_3 | SD_2_DATA_3 | - |
J4-42 | XMMC2CLK | SD_2_CLK | SD_2_CLK | - |
J4-43 | XMMC2DATA_1 | SD_2_DATA_1 | SD_2_DATA_1 | - |
J4-44 | XMMC2DATA_2 | SD_2_DATA_2 | SD_2_DATA_2 | - |
J4-45 | XMMC2CMD | SD_2_CMD | SD_2_CMD | - |
J4-46 | XMMC2DATA_0 | SD_2_DATA_0 | SD_2_DATA_0 | - |
J4-47 | XMMC2CDN | SD_2_CDn | SD_2_CDn | - |
J4-48 | - | BATT | BATT | - |
J4-49 | - | BATT | BATT | - |
J4-50 | - | BATT | BATT | - |
J5-1 | - | GND | GND | - |
J5-2 | - | GND | GND | - |
J5-3 | XHSICDATA_1 | XhsicDATA_1 | XhsicDATA_1 | - |
J5-4 | XHSICSTROBE_1 | XhsicSTROBE_1 | XhsicSTROBE_1 | - |
J5-5 | - | GND | GND | - |
J5-6 | XEINT_25 | GPX3_1 | GPX3_1 | - |
J5-7 | XEINT_23 | - | GPX2_7 | - |
J5-8 | XEINT_30 | WAKEUP_INT3_5 | WAKEUP_INT3_5 | - |
J5-9 | XEINT_8 | - | GPX1_0 | - |
J5-10 | XEINT_14 | GPX1_6 | GPX1_6 | - |
J5-11 | XEINT_13 | - | GPX1_5 | - |
J5-12 | XEINT_0 | GPX0_0 | GPX0_0 | - |
J5-13 | XEINT_27 | WAKEUP_INT3_3 | WAKEUP_INT3_3 | - |
J5-14 | XEINT_31 | WAKEUP_INT3_7 | WAKEUP_INT3_7 | - |
J5-15 | XEINT_9 | - | GPX1_1 | - |
J5-16 | XEINT_22 | - | - | - |
J5-17 | XEINT_17 | GPX2_1 | GPX2_1 | - |
J5-18 | XEINT_16 | - | WAKEUP_INT2_0 | - |
J5-19 | XEINT_10 | - | WAKEUP_INT1_2 | - |
J5-20 | XEINT_12 | WAKEUP_INT1_4 | WAKEUP_INT1_4- | - |
J5-21 | XNRSTOUT | - | - | - |
J5-22 | XEINT_15 | - | WAKEUP_INT1_7 | - |
J5-23 | XNWRESET | - | - | - |
J5-24 | - | GND | GND | - |
J5-25 | - | GND | GND | - |
J5-26 | - | GND | GND | - |
J5-27 | XEINT_1 | - | GPX0_1 | - |
J5-28 | XEINT_2 | - | GPX0_2 | - |
J5-29 | XEINT_5 | - | GPX0_5 | - |
J5-30 | XEINT_4 | - | WAKEUP_INT0_4 | - |
J5-31 | XEINT_7 | - | GPX0_7 | - |
J5-32 | XEINT_6 | - | GPX0_6 | - |
J5-33 | XUHOSTOVERCUR | - | - | - |
J5-34 | XJTMS | - | XjTMS | - |
J5-35 | XEINT_3 | GPX0_3 | GPX0_3 | - |
J5-36 | XEINT_18 | GPX2_2 | GPX2_2 | - |
J5-37 | XJTRSTN | - | XjTRSTn | - |
J5-38 | XUHOSTPWREN | - | - | - |
J5-39 | XJTDI | - | XjTDI | - |
J5-40 | XJTCK | - | XjTCK | - |
J5-41 | XJTDO | - | XjTDO | - |
J5-42 | - | GND | GND | - |
J5-43 | XUOTGDP | XuotgDP | XuotgDP | - |
J5-44 | XUOTGDM | XuotgDM | XuotgDM | - |
J5-45 | - | GND | GND | - |
J5-46 | XUOTGDRVVBUS | XuotgDRVVBUS | XuotgDRVVBUS | - |
J5-47 | XNRESET | - | XnRESET | - |
J5-48 | XUOTGVBUS | XuotgVBUS | XuotgVBUS | - |
J5-49 | XUOTGID | XuothID | XuothID | - |
J5-50 | - | VIO | PMIC | - |
J6-1 | - | GND | GND | - |
J6-2 | XISPMCLK | CAM_BAY_MCLK | CAM_BAY_MCLK | - |
J6-3 | ENB8 | - | - | PMIC |
J6-4 | ENL21 | - | - | PMIC |
J6-5 | ENL20 | - | - | PMIC |
J6-6 | XADCAIN_3 | XadcAIN_3 | XadcAIN_3 | - |
J6-7 | XADCAIN_0 | - | XadcAIN_0 | - |
J6-8 | XADCAIN_2 | XadcAIN_2 | XadcAIN_2 | - |
J6-9 | XADCAIN_1 | - | XadcAIN_1 | - |
J6-10 | - | GND | GND | - |
J6-11 | XCIFIELD | - | CAM_A_FIELD | - |
J6-12 | XCIDATA_3 | - | CAM_A_DATA_3 | - |
J6-13 | XCIVSYNC | - | CAM_A_VSYNC | - |
J6-14 | XCICLKENB | - | CAM_A_CLKOUT | - |
J6-15 | XCIDATA_6 | - | CAM_A_DATA_6 | - |
J6-16 | XCIDATA_0 | - | CAM_A_DATA_0 | - |
J6-17 | XCIDATA_2 | - | CAM_A_DATA_2 | - |
J6-18 | XCIPCLK | - | CAM_A_PCLK | - |
J6-19 | XCIDATA_7 | - | CAM_A_DATA_7 | - |
J6-20 | XCIDATA_4 | - | CAM_A_DATA_4 | - |
J6-21 | XCIDATA_1 | - | CAM_A_DATA_1 | - |
J6-22 | XCIDATA_5 | - | CAM_A_DATA_5 | - |
J6-23 | XCIHREF | - | CAM_A_HREF | - |
J6-24 | - | GND | GND | - |
J6-25 | - | GND | GND | - |
J6-26 | - | GND | GND | - |
J6-27 | OUT17 | - | - | PMIC |
J6-28 | XMIPIMDN0 | - | - | - |
J6-29 | XMIPIMDP0 | - | - | - |
J6-30 | XMIPIMDN1 | - | - | - |
J6-31 | XMIPIMDP1 | - | - | - |
J6-32 | XMIPIMDNCLK | - | - | - |
J6-33 | XMIPIMDPCLK | - | - | - |
J6-34 | XMIPIMDN2 | - | - | - |
J6-35 | XMIPIMDP2 | - | - | - |
J6-36 | XMIPIMDN3 | - | - | - |
J6-37 | XMIPIMDP3 | - | - | - |
J6-38 | - | GND | GND | - |
J6-39 | XMIPISDN0 | MIPI_SDN_0 | MIPI_SDN_0 | - |
J6-40 | XMIPISDP0 | MIPI_SDP_0 | MIPI_SDP_0 | - |
J6-41 | XMIPISDN1 | MIPI_SDN_1 | MIPI_SDN_1 | - |
J6-42 | XMIPISDP1 | MIPI_SDP_1 | MIPI_SDP_1 | - |
J6-43 | XMIPISDNCLK | MIPI_CLK_RX_N | MIPI_CLK_RX_N | - |
J6-44 | XMIPISDPCLK | MIPI_CLK_RX_P | MIPI_CLK_RX_P | - |
J6-45 | XMIPISDN2 | - | - | - |
J6-46 | XMIPISDP2 | - | - | - |
J6-47 | XMIPISDN3 | - | - | - |
J6-48 | XMIPISDP3 | - | - | - |
J6-49 | - | VIO | PMIC | - |
J6-50 | - | GND | GND | - |
J7-1 | XM0DATA_13 | - | - | - |
J7-2 | XM0CSN_3 | - | - | - |
J7-3 | XM0DATA_9 | - | - | - |
J7-4 | XM0FALE | - | - | - |
J7-5 | XM0ADDR_7 | - | - | - |
J7-6 | XM0DATA_7 | - | - | - |
J7-7 | XMOADDR_1 | - | - | - |
J7-8 | XM0DATA_4 | - | - | - |
J7-9 | XM0DATA_8 | - | - | - |
J7-10 | XM0FRNB_0 | - | - | - |
J7-11 | XM0FRNB_1 | - | - | - |
J7-12 | XM0OEN | - | - | - |
J7-13 | XM0DATA_12 | - | - | - |
J7-14 | XM0ADDR_3 | - | - | - |
J7-15 | XM0ADDR_13 | - | - | - |
J7-16 | XM0ADDR_14 | - | - | - |
J7-17 | XM0ADDR_9 | - | - | - |
J7-18 | XM0ADDR_10 | - | - | - |
J7-19 | XM0ADDR_8 | - | - | - |
J7-20 | XM0ADDR_11 | - | - | - |
J7-21 | XM0ADDR_12 | - | - | - |
J7-22 | XM0ADDR_15 | - | - | - |
J7-23 | XM0DATA_11 | - | - | - |
J7-24 | XM0DATA_15 | - | - | - |
J7-25 | - | GND | GND | - |
J7-26 | - | GND | GND | - |
J7-27 | XM0DATA_5 | - | - | - |
J7-28 | XM0BEN_1 | - | - | - |
J7-29 | XM0BEN_0 | - | - | - |
J7-30 | XM0FRNB_3 | - | - | - |
J7-31 | XM0DATA_RDN | - | - | - |
J7-32 | XM0ADDR_5 | - | - | - |
J7-33 | XM0CSN_2 | - | - | - |
J7-34 | XM0FCLE | - | - | - |
J7-35 | XM0ADDR_0 | - | - | - |
J7-36 | XM0FRNB_2 | - | - | - |
J7-37 | XM0DATA_2 | - | - | - |
J7-38 | XM0DATA_14 | - | - | - |
J7-39 | XM0DATA_1 | - | - | - |
J7-40 | XM0ADDR_2 | - | - | - |
J7-41 | XM0DATA_3 | - | - | - |
J7-42 | XM0DATA_10 | - | - | - |
J7-43 | XM0WEN | - | - | - |
J7-44 | XM0DATA_0 | - | - | - |
J7-45 | XM0WAITN | - | - | - |
J7-46 | XM0ADDR_6 | - | - | - |
J7-47 | XM0ADDR_4 | - | - | - |
J7-48 | XM0CSN_1 | - | - | - |
J7-49 | XM0CSN_0 | - | - | - |
J7-50 | XM0DATA_6 | - | - | - |
J8-1 | - | GND | GND | - |
J8-2 | OUT18 | - | - | PMIC |
J8-3 | XISPRGB_12 | - | - | - |
J8-4 | - | GND | GND | - |
J8-5 | XISPGP2 | - | - | - |
J8-6 | XISPVSYNC | - | - | - |
J8-7 | XISPGP3 | - | - | - |
J8-8 | OUT14 | - | - | PMIC |
J8-9 | - | GND | GND | - |
J8-10 | XISPGP5 | - | - | - |
J8-11 | XISPGP8 | - | - | - |
J8-12 | XISPI2C1SDA | - | - | - |
J8-13 | XISPRGB_2 | - | - | - |
J8-14 | XISPGP0 | - | - | - |
J8-15 | XISPRGB_6 | - | - | - |
J8-16 | XISPRGB_1 | - | - | - |
J8-17 | XISPRGB_3 | - | - | - |
J8-18 | - | GND | GND | - |
J8-19 | XMIPI2LSDP1 | - | - | - |
J8-20 | XMIPI2LSDN1 | - | - | - |
J8-21 | XMIPI2LSDPCLK | - | - | - |
J8-22 | XMIPI2LSDNCLK | - | - | - |
J8-23 | XMIPI2LSDP0 | - | - | - |
J8-24 | XMIPI2LSDN0 | - | - | - |
J8-25 | - | GND | GND | - |
J8-26 | - | GND | GND | - |
J8-27 | XISPRGB_9 | - | - | - |
J8-28 | XISPRGB_0 | - | - | - |
J8-29 | XISPRGB_4 | - | - | - |
J8-30 | XISPRGB_11 | - | - | - |
J8-31 | XISPRGB_10 | - | - | - |
J8-32 | XISPI2C1SCL | - | - | - |
J8-33 | XISPSPICSN | - | - | - |
J8-34 | XISPRGB_5 | - | - | - |
J8-35 | XISPSPICLK | - | - | - |
J8-36 | XISPSPIMOSI | - | - | - |
J8-37 | XISPGP7 | - | - | - |
J8-38 | XISPSPIMISO | - | - | - |
J8-39 | XISPI2C0SDA | - | - | - |
J8-40 | XISPGP6 | - | - | - |
J8-41 | XISPGP4 | - | - | - |
J8-42 | XISPPCLK | - | - | - |
J8-43 | XISPHSYNC | - | - | - |
J8-44 | XISPGP1 | - | - | - |
J8-45 | XISPGP9 | - | - | - |
J8-46 | XISPRGB_8 | - | - | - |
J8-47 | XISPI2C0SCL | - | - | - |
J8-48 | XISPRGB_13 | - | - | - |
J8-49 | XISPRGB_7 | - | - | - |
J8-50 | - | GND | GND | - |
The ODROID-X has quite a few expansion header pins - much like beagle board. Expansion header of ODROID-X has a 24bit RGB IF, a Hardware SPI, an I2C, a PWM, an UART and two ADCs. All GPIOs of the expansion port can be used as input, output, interrupts, and special functions except for the ADCs.
PIN# | Expansion net name for ODROID-X | Pin name of Exynos4412 | Function | Description |
---|---|---|---|---|
1 | T_INT | XEINT[27] | GPX3[3]/WAKEUP_INT3[3]/KP _ROW[11]/ALV_DBG[23] | |
2 | BL_EN | UXuRTSn[2] | GPA1[3]/UART_2_RTSn/I2C_3_SCL | |
3 | SDA | Xi2c1SDA | GPD1[2]/I2C_1_SDA | |
4 | T_RST | XEINT[17] | GPX2[1]/WAKEUP_INT2[1]/KP _ROW[1]/ALV_DBG[13] | |
5 | SCL | IXi2c1SCL | GPD1[3]/I2C_1_SCL | |
6 | SPI_1.CLK | XspiCLK[1] | GPB[4]/SPI_1_CLK/IEM_SCLK | |
7 | T_SCL | XspiMOSI[0] | GPB[3]/SPI_0_MOSI/I2C_5_SCL | |
8 | T_SDA | XspiMISO[0] | GPB[2]/SPI_0_MISO/I2C_5_SDA | |
9 | XE.INT12 | XEINT[12] | GPX1[4]/WAKEUP_INT1[4]/KP _COL[4]/ALV_DBG[8] | |
10 | SPI_1.CSN | XspiCSn[1] | GPB[5]/SPI_1_nSS/IEM_SPWI | |
11 | SPI_1.MOSI | XspiMOSI[1] | GPB[7]/SPI_1_MOSI | |
12 | VDDQ_LCD | LDO25 of MAX77686 | ||
13 | PWM_BRT | XpwmTOUT[1] | GPD0[1]/TOUT_1/LCD_PWM | |
14 | RXD | XuRXD[3] | GPA1[4]/UART_3_RXD/UART_AUDIO _RXD | |
15 | SPI_1.MISO | XspiMISO[1] | GPB[6]/SPI_1_MISO | |
16 | TXD | XuTXD[3] | GPA1[1]/UART_3_TXD/UART_AUDIO _TXD | |
17 | VD19 | XvVD[19] | GPF2[7]/LCD_VD[19] | |
18 | VD21 | XvVD[21] | GPF3[1]/LCD_VD[21] | |
19 | VD2 | XvVD[2] | GPF0[6]/LCD_VD[2] | |
20 | VD8 | XvVD[8] | GPF1[4]/LCD_VD[8] | |
21 | VD15 | XvVD[15] | GPF2[3]/LCD_VD[15] | |
22 | VD0 | XvVD[0] | GPF0[4]/LCD_VD[0] | |
23 | VCLK | XvVCLK | GPF0[3]/LCD_VCLK | |
24 | VD7 | XvVD[7] | GPF1[3]/LCD_VD[7] | |
25 | VD18 | XvVD[18] | GPF2[6]/LCD_VD[18] | |
26 | VD11 | XvVD[11] | GPF1[7]/LCD_VD[11] | |
27 | VSYNC | XvVSYNC | GPF0[1]/LCD_VSYNC | |
28 | VD6 | XvVD[6] | GPF1[2]/LCD_VD[6] | |
29 | VDEN | XvVDEN | GPF0[2]/LCD_VDEN | |
30 | VD20 | XvVD[20] | GPF3[0]/LCD_VD[20] | |
31 | HSYNC | XvHSYNC | GPF0[0]/LCD_HSYNC | |
32 | GND | Ground | ||
33 | VD3 | XvVD[3] | GPF0[7]/LCD_VD[3] | |
34 | VD12 | XvVD[12] | GPF2[0]/LCD_VD[12] | |
35 | VD5 | XvVD[5] | GPF1[1]/LCD_VD[5] | |
36 | VD10 | XvVD[10] | GPF1[6]/LCD_VD[10] | |
37 | VD14 | XvVD[14] | GPF2[2]/LCD_VD[14] | |
38 | VD17 | XvVD[17] | GPF2[5]/LCD_VD[17] | |
39 | VD9 | XvVD[9] | GPF1[5]/LCD_VD[9] | |
40 | VD23 | XvVD[23] | GPF3[3]/LCD_VD[23] | |
41 | VD1 | XvVD[1] | GPF0[5]/LCD_VD[1] | |
42 | VD4 | XvVD[4] | GPF1[0]/LCD_VD[4] | |
43 | VD22 | XvVD[22] | GPF3[2]/LCD_VD[22] | |
44 | VD13 | XvVD[13] | GPF2[1]/LCD_VD[13] | |
45 | VD16 | XvVD[16] | GPF2[4]/LCD_VD[16] | |
46 | SYS | DC Jack +5V | ||
47 | ADC.AIN2 | XadcAIN[2] | XadcAIN[2] | |
48 | VDD_IO | LDO3 of MAX77686 | ||
49 | ADC.AIN3 | XadcAIN[3] | XadcAIN[3] | |
50 | GND | Ground |
PIN# | Expansion net name f ODROID-Q | Pin name of Exynos4412 | Function | Description |
---|---|---|---|---|
1 | GND | Ground | ||
2 | GND | Ground | ||
3 | GND | Ground | ||
4 | GPK3.2 | Xmmc3CDn | GPK3[2]/SD_3_CDn/GNSS_GPIO[11] | |
5 | ADC.AIN2 | XadcAIN[2] | XadcAIN[2] | |
6 | ADC.AIN3 | XadcAIN[3] | XadcAIN[3] | |
7 | GND | Ground | ||
8 | GND | Ground | ||
9 | USBHOST_D_N | USB port 1 data- of USB3503 | ||
10 | USBHOST_D_P | USB port 1 data+ of USB3503 | ||
11 | GND | Ground | ||
12 | XE.INT12 | XEINT[12] | GPX1[4]/WAKEUP_INT1[4]/KP _COL[4]/ALV_DBG[8] | |
13 | GND | Ground | ||
14 | GND | Ground | ||
15 | GPF3.5 | XvSYS_OE | GPF3[5]/SYS_OE | |
16 | GPF3.4 | XvVSYNC_LDI | GPF3[4]/VSYNC_LDI | |
17 | SLIMBUS.DATA | XsbusDATA | ETC1[0]/SLIMbusData | |
18 | SLIMBUS.CLK | XsbusCLK | ETC1[1]/SLIMbusClk | |
19 | GND | Ground | ||
20 | GND | Ground | ||
21 | SDA | Xi2c1SDA | GPD1[2]/I2C_1_SDA | |
22 | SCL | IXi2c1SCL | GPD1[3]/I2C_1_SCL | |
23 | RXD | XuRXD[3] | GPA1[4]/UART_3_RXD/UART_AUDIO _RXD | |
24 | TXD | XuTXD[2] | GPA1[1]/UART_2_TXD/UART_AUDIO _TXD | |
25 | SYS | system load out Pin 23,24 of MAX8903C | ||
26 | SYS | system load out Pin 23,24 of MAX8903C | ||
27 | VDD_IO | LDO3 of MAX77686 | ||
28 | VDDQ_MMC2 | LDO4 of MAX77686 | ||
29 | GND | Ground | ||
30 | GND | Ground |
Refer this link. http://www.hardkernel.com/?b128
You can select the booting device from the following list on ODROID-X,Q:
* eMMC
* SDHC card
On ODROID-X the boot type is determined by a jumper. The jumper socket is called “JP2” on the ODROID-X board. When it is inserted, it will boot from SD card. When it is removed, the device will boot from eMMC.
The boot type for ODROID-Q is determined by second DIP S/W of USB-to-Serial debug board. when it is on, the Micro SD will boot. when it is off that is default, the eMMC will boot.
The board takes fixed 5V input. Generally, power input range can be from 4.8V to 5.2V. The actual power required by the ODROID-X will vary depending on how busy it is and what peripherals are connected. Power rating of optional adapter is 2A at 5V
The following table lists how much power is drawn over the 5V power cable whilst performing various tasks.
Task | Power use (mA) Min ~ Max | Notes |
Only DC jack connected without peripherals | under 100uA | |
Video output on Ubuntu with USB keyboard and mouse | 380mA | |
Booting | 300 ~ 980mA | Taken from power supply readings |
Idling (HDMI on, network on) | 380mA | |
WLAN enabled, LCD Display | 430~600mA | without B/L power |
Works for file transfer, adb and fastboot. See also http://dottech.org/tipsntricks/21534/how-to-install-adb-and-fastboot-on-your-windows-computer-for-use-with-your-android-phone/
Press and hold Power switch for 0.5~1 seconds on the ODROID-X board to power it up.
Reset time is programmable from 3~11s, with 1s increments by I2C of MAX77686. On ODROID-X, -X2 and -Q it is set to 3 sec. so the power switch should be pressed for 3 seconds to activate a hardware reset.
You can use the user mode switch on ODROID-X/X2 to enter fastboot mode. If you push this user switch button, and then power on the board enters fastboot mode.
There are three LEDs around the DC jack on the ODROID-X/X2. The power is off when all the LED's on the board except the D4 LED are off. * the D4 LED turns on when DC jack is supplied by power. * the D5 LED blinks during the boot sequence when the bootloader is entered normally. It means the Exynos4412 has read and executes the code from eMMC or SD. * D6 LED turns during boot when ODROID enters the kernel.
The picture below shows the HDMI connector, it has 23 pins, although you can only see the odd numbered pins there.
The other pins hide under the connector. On the left side of HDMI Connector there is pin number 1, next to it are 3, 5, and so on until 19 on the right.
It is connected to the Exynos4412 via Common Mode ESD filter L3 and L4.
Here is pin map for the HDMI connector of ODROID-X/X2 and ODROID-Q.
PIN# | Pin name of HDMI CON | Pin name of Exynos4412 board |
---|---|---|
1 | Hot Plug Detect | XEINT_31 |
2 | Utility | - |
3 | TMDS Data2+ | XHDMITX2P |
4 | TMDS Data2 Shield | - |
5 | TMDS Data2- | XHDMITX2N |
6 | TMDS Data1+ | XHDMITX1P |
7 | TMDS Data1 Shield | - |
8 | TMDS Data1- | XHDMITX1N |
9 | TMDS Data0+ | XHDMITX0P |
10 | TMDS Data0 Shield | - |
11 | TMDS Data0- | XHDMITX0N |
12 | TMDS Clock+ | XHDMITXCP |
13 | TMDS Clock Shield | - |
14 | TMDS Clock- | XHDMITXCN |
15 | CEC | AA1 |
16 | DDC/CEC Ground | - |
17 | SCL | XURTSN_1 |
18 | SDA | XUCTSN_1 |
19 | +5V Power | - |
20 | GND | - |
21 | GND | - |
22 | GND | - |
23 | GND | - |
As you can see in the picture below there is a 5MP camera connector. Both ODROID-X/X2 and -Q use that camera via a MIPI interface.
The circle on the top right indicates pin 1 on the connector.
Following is a pin map for the camera connector of ODROID-X and -Q.
PIN# | Pin for Camera | Pin on Exynos4412 board | CMT |
---|---|---|---|
1 | GND | Ground | - |
2 | NC | Not Connect | - |
3 | GND | Ground | - |
4 | DVDD_1.2V | BUCK9 | PMIC |
5 | DVDD_1.2V | BUCK9 | PMIC |
6 | VDDIO_1.8V | OUT17(VDDQ_CAM) | PMIC |
7 | GND | Ground | - |
8 | AVDD_2.8V | OUT23(TOUCH) | PMIC |
9 | GND | Ground | - |
10 | GND | Ground | - |
11 | AF_2.8V | OUT23(TOUCH) | PMIC |
12 | GND | Ground | - |
13 | RESET | XEINT_25 | - |
14 | GND | Ground | - |
15 | GND | Ground | - |
16 | SCL | XSPIMOSI_0 | - |
17 | SDA | XSPIMISO_0 | - |
18 | GND | Ground | - |
19 | MCLK | XISPMCLK | - |
20 | GND | Ground | - |
21 | MIPI_CLK_N | XMIPISDNCLK | - |
22 | MIPI_CLK_P | XMIPISDPCLK | - |
23 | GND | Ground | - |
24 | MIPI_DATA_N | XMIPISDN0 | - |
25 | MIPI_DATA_P | XMIPISDP0 | - |
26 | GND | Ground | - |
27 | MIPI_DATA1_N | XMIPISDN1 | - |
28 | MIPI_DATA1_P | XMIPISDP1 | - |
ODROID-X/X2 has six USB2.0 host ports. Two ports use the USB3503 chip on the CPU board. The other four ports are provided by a LAN9514 chip on the base board.
ODROID-Q has only one USB2.0 external host port. You can use USB keyboards, mouses and other USB gadgets on this USB Port. By the way, the CPU board has three USB2.0 hosts. Two are internal. One is connected to the expansion port. The other is connected to the 3G module.
* LinPack
* ioquake3
We tested an USB card reader with SAMSUNG Class 10 8GB SD-card. ODROID-X can achieve about 12.9 MB/s
#dd if=/dev/sda of=/dev/null bs=32M count=10 iflag=direct
* IOZone Benchmarks contributed by the user spicypixel
cmdline: iozone -e -I -a -s 50M -r 4k -r 512k -r 16M -i 0 -i 1 -i 2
Sandisk Ultra 30MB/s SDHC | |||||||
---|---|---|---|---|---|---|---|
- | - | - | - | - | - | random | random |
KB | reclen | write | rewrite | read | reread | read | write |
51200 | 4 | 931 | 1056 | 4499 | 4502 | 3724 | 601 |
51200 | 512 | 6926 | 5974 | 21761 | 21755 | 21552 | 1846 |
51200 | 16384 | 3913 | 6652 | 22303 | 22304 | 22295 | 6961 |
ODROID eMMC 64GB | |||||||
---|---|---|---|---|---|---|---|
- | - | - | - | - | - | random | random |
KB | reclen | write | rewrite | read | reread | read | write |
51200 | 4 | 5362 | 5428 | 14184 | 14315 | 12586 | 4752 |
51200 | 512 | 23016 | 23400 | 28792 | 28929 | 28752 | 23647 |
51200 | 16384 | 26262 | 27119 | 39017 | 39066 | 39078 | 26496 |
Storage media Read / Write throughput
x | Storage | Capacity | Read (MB/s) Min,Avg,Max | Write (MB/s) Min,Avg,Max | Distro | Kernel | Notes |
---|---|---|---|---|---|---|---|
1 | eMMC Toshiba | 16GB | 19, 24.5, 28.4 | 19.2, 22.8, 24.7 | linaro ubuntu 12.07 | 3.0.15 | |
2 | SDHC C10 Samsung plus | 8GB | 12.7, 14.8, 26.2 | 2.3, 3.8, 14.3 | linaro ubuntu 12.07 | 3.0.15 | |
3 | SDHC C10 Transcend | 8GB | 12.7, 14.9,16.4 | 2.3, 3.6, 15.5 | linaro ubuntu 12.07 | 3.0.15 | |
4 | Extreme SDXC SanDisk | 16GB | 13.1, 15.1, 16.5 | 3.1, 5.9, 16.0 | linaro ubuntu 12.07 | 3.0.15 | |
5 | Extreme SDXC SanDisk | 64GB | 13.3, 15.3, 17 | 3.7, 6.2, 15.3 | linaro ubuntu 12.07 | 3.0.15 | |
6 | USB 2.0 to SATA 2.5“ HDD | 500GB | 11.5, 14.6, 20.3 | ? | linaro ubuntu 12.07 | 3.0.15 |
* System→Admin→Disk Utility→Benchmark results.
Test setup on LAN test server:
iperf -s -u
On ODROID-X:
iperf -t 60 -u -c <SERVER_IP_ADDRESS> -d
Results
Bandwidth | CPU usage (top) | Distro | kernel | note |
84Mbits/sec | Linaro Ubuntu 12.04 | 3.0.15 |
* ODROID-X/X2 or ODROID-Q * 2A@5V DC Adaptor * Bootable SD-card or eMMC * USB to UART board * Micro USB cable * Micro HDMI cable and monitor or LCD module kit * USB keyboard and mouse * Optional Ethernet LAN cable * PC
This is a list of operating systems running, ported or in the process of being ported to ODROID-X,Q,U Full OS:
[http://dev.odroid.com/projects/ics/#s-6.4]
Exynos-4412 boot loader information. [http://dev.odroid.com/projects/4412boot/]
Note: That u-boot can be used for Ubuntu.
You can easily install the Linaro ARM cross-compiler on Ubuntu 12.04 or 12.10 as follows: Add this PPA with the following commands:
sudo add-apt-repository ppa:linaro-maintainers/toolchain sudo apt-get update
#for cross compiler sudo apt-get install gcc-arm-linux-gnueabihf #for native compiler sudo apt-get install gcc
This will install the latest GCC 4.7 cross-toolchain to compile the latest kernel which works with ODROID-X.
You can also perform above steps in Ubuntu on ODROID-X, if you want to use a native GCC compiler.
If you build the kernel on board(native), skip this step.
Inject some variables into .bashrc to setup kernel compilation.
cat >> ~/.bashrc <<EOF export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf- EOF
First, download the latest Linux kernel source code for ODROID-X from github,then build the new kernel and modules as shown below.
sudo apt-get install xz-utils git clone https://github.com/hardkernel/linux.git cd linux # Optional. This line can skip if you want to use "odroid-3.0.y" branch, because it is the default branch. git checkout odroid-3.8.y -b odroid-3.8.y make odroidx_ubuntu_defconfig make zImage -j4 make modules -j4 make modules_install INSTALL_MOD_PATH=/media/rootfs
* for ODROID-X2 * make odroidx2_ubuntu_defconfig
* for ODROID-U2 * make odroidu2_ubuntu_defconfig
If you want to build the kernel on your board, just remove “INSTALL_MOD_PATH=/media/rootfs” in the last line.
If you want to send an updated/compiled uImage to your SD-card, use the command below with a card reader on your host PC:
cp arch/arm/boot/zImage /media/boot/
'Changing boot.scr
'
Change the boot script (boot.txt) then create a u-boot image with:
mkimage -A arm -T script -C none -n "Boot.scr for odroid-x" -d /media/boot/boot.txt /media/boot/boot.scr
'Updating Initramfs
'
Copy over your kernel configuration file to the /boot directory into a file called config-<kernel-version> like below. (Perform this process on your ODROID-X not host PC)
cp .config /media/boot/config-`uname -r`
The Linaro boot script (boot.scr) passes an initramfs image to the kernel at boot up. This image includes kernel modules that may be used at start up. You may create this image on the target system after you first boot into it with:
# Generate a file named /boot/initrd.img-<kernel-version> update-initramfs -c -k `uname -r` # Generate uInitrd and copy it into your boot partition with: mkimage -A arm -T ramdisk -C none -n "uInitrd" -d /boot/initrd.img-`uname -r` /media/boot/uInitrd
* Please note we are using the zImage instead of uImage from middle of Dec 2012.
See [http://dev.odroid.com/projects/odroid-xq/wiki?ubuntu How to burn prebuilt image and Building a custom Image]
ODROID-X and -Q are projects driven by a community of passionate and intelligent volunteers. If you have the ability, please contribute to our cause. Odroid's ambitions far exceed the resources available.
If you want to get involved, leave a message on the board with the following information:
Title: Want to be a member.
ID: (Your login ID)
Project name: (U-boot, Kernel, Android system and so on)
Description: Brief introduction
After the registration process, you can commit source (git access) and modify Wiki pages.