22 years ago(26-Aug-1991), a young student in Finland announced Unix/Minix based Operating System.
Yes, it is Linux OS and his name is Linus Tovalds.
He released Kernel 3.11-rc7 today with the celebration of 22nd birthday of Linux.
We’ve just ported it to Exynos-5410 based ODROID-XU.
Here is the booting log.
U-Boot 2012.07 (Aug 20 2013 - 18:02:57) for Exynos5410
CPU: Exynos5410 Rev2.3 [Samsung SOC on SMP Platform Base on ARM CortexA15]
APLL = 900MHz, KPLL = 600MHz
MPLL = 532MHz, BPLL = 800MHz
DRAM: 2 GiB
WARNING: Caches not enabled
TrustZone Enabled BSP
BL1 version:
PMIC VER : 0, CHIP REV : 6
VDD MIF : 1.00000V
VDD ARM : 1.00000V
VDD INT : 1.00000V
VDD G3D : 1.00000V
VDD KFC : 1.00000V
Checking Boot Mode ... EMMC4.41
MMC: S5P_MSHC0: 0, S5P_MSHC2: 1
MMC Device 0: 58.2 GiB
MMC Device 1: [ERROR] response error : 00000006 cmd 8
[ERROR] response error : 00000006 cmd 55
[ERROR] response error : 00000006 cmd 2
In: serial
Out: serial
Err: serial
Net: No ethernet found.
Press 'Enter' or 'Space' to stop autoboot: 0
>>> Load Boot Script from mmc 0:1 <<<
reading boot.scr
530 bytes read
## Executing script at 40008000
reading uImage
2121720 bytes read
reading uInitrd
3169476 bytes read
reading exynos5410-odroidxu.dtb
28603 bytes read
## Booting kernel from Legacy Image at 40007000 ...
Image Name: Linux-3.11.0-rc7-00060-g4521a9d
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2121656 Bytes = 2 MiB
Load Address: 40008000
Entry Point: 40008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 42000000 ...
Image Name: Ubuntu ramdisk 3.0.75-odroidx2
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 3169412 Bytes = 3 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 41f00000
Booting using the fdt blob at 0x41f00000
Loading Kernel Image ... OK
OK
Using Device Tree in place at 41f00000, end 41f09fba
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.11.0-rc7-00060-g4521a9d (ruppi@ruppi-desktop) (gcc version 4.3
[ 0.000000] Machine: SAMSUNG EXYNOS5 (Flattened Device Tree), model: Hardkernel Odroid-xu0
[ 0.000000] PERCPU: Embedded 7 pages/cpu @c15d2000 s7488 r8192 d12992 u32768
[ 0.000000] Kernel command line: console=ttySAC2,115200n8 fb_x_res=1920 fb_y_res=1080 hdmo
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xf0000000 - 0xff000000 ( 240 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xef800000 ( 760 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc050bfa0 (5136 kB)
[ 0.000000] .init : 0xc050c000 - 0xc0538d40 ( 180 kB)
[ 0.000000] .data : 0xc053a000 - 0xc0574d40 ( 236 kB)
[ 0.000000] .bss : 0xc0574d40 - 0xc05af300 ( 234 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] samsung_clk_register_gate: failed to register clock ac97
[ 0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286s
[ 0.000000] Console: colour dummy device 80x30
[ 0.060000] Calibrating delay loop... 1790.77 BogoMIPS (lpj=8953856)
[ 0.060000] pid_max: default: 32768 minimum: 301
[ 0.060000] Mount-cache hash table entries: 512
[ 0.060000] CPU: Testing write buffer coherency: ok
[ 0.060000] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.060000] Setting up static identity map for 0xc03aef10 - 0xc03aef68
[ 0.120000] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.200000] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[ 0.280000] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[ 0.280000] Brought up 4 CPUs
[ 0.280000] SMP: Total of 4 processors activated (7163.08 BogoMIPS).
[ 0.280000] CPU: All CPU(s) started in SVC mode.
[ 0.280000] devtmpfs: initialized
[ 0.290000] pinctrl core: initialized pinctrl subsystem
[ 0.290000] regulator-dummy: no parameters
[ 0.290000] NET: Registered protocol family 16
[ 0.290000] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.310000] EXYNOS: PMU not supported
[ 0.310000] EXYNOS: Initializing architecture
[ 0.320000] bio: create slab <bio-0> at 0
[ 0.330000] usbcore: registered new interface driver usbfs
[ 0.330000] usbcore: registered new interface driver hub
[ 0.330000] usbcore: registered new device driver usb
[ 0.340000] max77xxx 4-0009: device found
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO2
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO7
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO9'
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO18
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO19'
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO21
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO23
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO24
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO25
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO26
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO27'
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO28'
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO29'
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO30
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at LDO32
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO33'
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO34'
[ 0.360000] max77xxx-pmic max77802-pmic: No matching regulator for 'LDO35'
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at EN32KHZ_AP
[ 0.360000] max77xxx 4-0009: no regulator-op-mode property property at EN32KHZ_CP
[ 0.410000] vdd_1v0: 1000 mV
[ 0.460000] vdd_1v2: 1200 mV
[ 0.520000] vdd_1v8_3: 1800 mV
[ 0.580000] vdd_sd: 2800 mV
[ 0.640000] vdd_1v8_5: 1800 mV
[ 0.700000] vdd_1v8_6: 1800 mV
[ 0.740000] vdd_1v8_7: 1800 mV
[ 0.800000] vdd_ldo8: 1000 mV
[ 0.820000] LDO9: at 1800 mV
[ 0.880000] vdd_ldo10: 1800 mV
[ 0.940000] vdd_ldo11: 1800 mV
[ 1.000000] vdd_ldo12: 3000 mV
[ 1.060000] vdd_ldo13: 1800 mV
[ 1.120000] vdd_ldo14: 1800 mV
[ 1.180000] vdd_ldo15: 1000 mV
[ 1.220000] ldo_17: 1200 mV
[ 1.260000] ldo_18: 1800 mV
[ 1.280000] LDO19: at 1800 mV
[ 1.330000] ldo_20: 1800 mV
[ 1.400000] ldo_21: 2850 mV
[ 1.460000] ld0_23: 3300 mV
[ 1.500000] ldo_24: 2800 mV
[ 1.560000] ldo_25: 3300 mV
[ 1.620000] ldo_26: 3300 mV
[ 1.640000] LDO27: at 1200 mV
[ 1.660000] LDO28: at 1800 mV
[ 1.680000] LDO29: at 1800 mV
[ 1.730000] ldo_30: 1200 mV
[ 1.800000] ldo_32: 3300 mV
[ 1.820000] LDO33: at 2200 mV
[ 1.840000] LDO34: at 3000 mV
[ 1.860000] LDO35: at 1200 mV
[ 1.920000] vdd_mif: 800 <--> 1300 mV at 1000 mV
[ 1.980000] vdd_arm: 800 <--> 1500 mV at 1000 mV
[ 2.040000] vdd_int: 800 <--> 1400 mV at 1000 mV
[ 2.100000] vdd_g3d: 800 <--> 1400 mV at 1000 mV
[ 2.140000] vdd_1v2: 800 <--> 1500 mV at 1200 mV
[ 2.150000] vdd_1v2: Failed to create debugfs directory
[ 2.200000] vdd_kfc: 800 <--> 1500 mV at 1000 mV
[ 2.250000] vdd_1v35: 1350 mV
[ 2.310000] vdd_emmc: 2850 mV
[ 2.360000] vdd_2v: 2000 mV
[ 2.430000] vdd_1v8: 1800 mV
[ 2.450000] en32khz_ap: no parameters
[ 2.450000] en32khz_cp: no parameters
[ 2.470000] cfg80211: Calling CRDA to update world regulatory domain
[ 2.470000] Switched to clocksource mct-frc
[ 2.480000] NET: Registered protocol family 2
[ 2.480000] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[ 2.480000] TCP bind hash table entries: 8192 (order: 5, 163840 bytes)
[ 2.480000] TCP: Hash tables configured (established 8192 bind 8192)
[ 2.480000] TCP: reno registered
[ 2.480000] UDP hash table entries: 512 (order: 2, 24576 bytes)
[ 2.480000] UDP-Lite hash table entries: 512 (order: 2, 24576 bytes)
[ 2.480000] NET: Registered protocol family 1
[ 2.480000] Trying to unpack rootfs image as initramfs...
[ 2.650000] Freeing initrd memory: 3088K (c2001000 - c2305000)
[ 2.660000] VFS: Disk quotas dquot_6.5.2
[ 2.660000] msgmni has been set to 1474
[ 2.660000] io scheduler noop registered
[ 2.660000] io scheduler deadline registered
[ 2.660000] io scheduler cfq registered (default)
[ 2.770000] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[ 2.770000] 12c00000.serial: ttySAC0 at MMIO 0x12c00000 (irq = 83) is a S3C6400/10
[ 2.770000] 12c10000.serial: ttySAC1 at MMIO 0x12c10000 (irq = 84) is a S3C6400/10
[ 2.770000] 12c20000.serial: ttySAC2 at MMIO 0x12c20000 (irq = 85) is a S3C6400/10
[ 3.450000] console [ttySAC2] enabled
[ 3.460000] 12c30000.serial: ttySAC3 at MMIO 0x12c30000 (irq = 86) is a S3C6400/10
[ 3.470000] brd: module loaded
[ 3.480000] loop: module loaded
[ 3.480000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 3.490000] ehci-platform: EHCI generic platform driver
[ 3.490000] ehci-s5p: EHCI s5p driver
[ 3.500000] unable to find transceiver of type USB2 PHY
[ 3.500000] s5p-ehci 12110000.usb: no platform data or transceiver defined
[ 3.510000] platform 12110000.usb: Driver s5p-ehci requests probe deferral
[ 3.520000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 3.520000] unable to find transceiver of type USB2 PHY
[ 3.530000] exynos-ohci 12120000.usb: no platform data or transceiver defined
[ 3.530000] platform 12120000.usb: Driver exynos-ohci requests probe deferral
[ 3.550000] usb3503 4-0008: switched to HUB mode
[ 3.560000] usb3503 4-0008: usb3503_probe: probed on hub mode
[ 3.560000] samsung-usb3phy 12100000.usbphy: Can't get usb-phy sysreg cfg register
[ 3.570000] samsung-usb3phy 12500000.usbphy: Can't get usb-phy sysreg cfg register
[ 3.580000] mousedev: PS/2 mouse device common for all mice
[ 3.580000] max77xxx-rtc max77802-rtc: max77xxx_rtc_probe
[ 3.600000] max77xxx-rtc max77802-rtc: rtc core: registered max77xxx-rtc as rtc0
[ 3.610000] sdhci: Secure Digital Host Controller Interface driver
[ 3.610000] sdhci: Copyright(c) Pierre Ossman
[ 3.620000] Synopsys Designware Multimedia Card Interface Driver
[ 3.620000] dwmmc_exynos 12200000.dwmmc0: no vmmc regulator found: -19
[ 3.630000] dwmmc_exynos 12200000.dwmmc0: Using internal DMA controller.
[ 3.630000] dwmmc_exynos 12200000.dwmmc0: Version ID is 241a
[ 3.640000] dwmmc_exynos 12200000.dwmmc0: DW MMC controller at irq 107, 64 bit host data o
[ 3.670000] mmc_host mmc0: Bus speed (slot 0) = 100000000Hz (slot req 400000Hz, actual 40)
[ 3.690000] dwmmc_exynos 12200000.dwmmc0: 1 slots initialized
[ 3.690000] dwmmc_exynos 12220000.dwmmc2: no vmmc regulator found: -19
[ 3.700000] dwmmc_exynos 12220000.dwmmc2: Using internal DMA controller.
[ 3.700000] dwmmc_exynos 12220000.dwmmc2: Version ID is 241a
[ 3.710000] dwmmc_exynos 12220000.dwmmc2: DW MMC controller at irq 109, 64 bit host data o
[ 3.740000] mmc_host mmc1: Bus speed (slot 0) = 100000000Hz (slot req 400000Hz, actual 40)
[ 3.760000] dwmmc_exynos 12220000.dwmmc2: 1 slots initialized
[ 3.760000] usbcore: registered new interface driver ushc
[ 3.770000] ledtrig-cpu: registered to indicate activity on CPUs
[ 3.770000] TCP: cubic registered
[ 3.770000] NET: Registered protocol family 17
[ 3.780000] NET: Registered protocol family 15
[ 3.780000] mmc0: BKOPS_EN bit is not set
[ 3.790000] VFP support v0.3: [ 3.790000] mmc_host mmc0: Bus speed (slot 0) = 10000000)
[ 3.790000] mmc0: new high speed DDR MMC card at address 0001
[ 3.790000] mmcblk0: mmc0:0001 064G93 58.2 GiB
[ 3.790000] mmcblk0boot0: mmc0:0001 064G93 partition 1 4.00 MiB
[ 3.790000] mmcblk0boot1: mmc0:0001 064G93 partition 2 4.00 MiB
[ 3.790000] mmcblk0rpmb: mmc0:0001 064G93 partition 3 4.00 MiB
[ 3.790000] mmcblk0: p1 p2
[ 3.800000] mmcblk0boot1: unknown partition table
[ 3.800000] mmcblk0boot0: unknown partition table
implementor 41 architecture 4 part 30 variant f rev 0
[ 3.850000] ThumbEE CPU extension supported.
[ 3.850000] Registering SWP/SWPB emulation handler
[ 3.860000] vdd_1v8_7: disabling
[ 3.860000] s5p-ehci 12110000.usb: EHCI Host Controller
[ 3.870000] s5p-ehci 12110000.usb: new USB bus registered, assigned bus number 1
[ 3.870000] s5p-ehci 12110000.usb: irq 103, io mem 0x12110000
[ 3.900000] s5p-ehci 12110000.usb: USB 2.0 started, EHCI 1.00
[ 3.900000] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 3.910000] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 3.910000] usb usb1: Product: EHCI Host Controller
[ 3.920000] usb usb1: Manufacturer: Linux 3.11.0-rc7-00060-g4521a9d ehci_hcd
[ 3.930000] usb usb1: SerialNumber: 12110000.usb
[ 3.930000] hub 1-0:1.0: USB hub found
[ 3.930000] hub 1-0:1.0: 3 ports detected
[ 3.940000] samsung-usb2phy 12130000.usbphy: Already power on PHY
[ 3.940000] exynos-ohci 12120000.usb: EXYNOS OHCI Host Controller
[ 3.950000] exynos-ohci 12120000.usb: new USB bus registered, assigned bus number 2
[ 3.960000] exynos-ohci 12120000.usb: irq 103, io mem 0x12120000
[ 4.020000] usb usb2: New USB device found, idVendor=1d6b, idProduct=0001
[ 4.020000] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 4.030000] usb usb2: Product: EXYNOS OHCI Host Controller
[ 4.040000] usb usb2: Manufacturer: Linux 3.11.0-rc7-00060-g4521a9d ohci_hcd
[ 4.040000] usb usb2: SerialNumber: 12120000.usb
[ 4.050000] hub 2-0:1.0: USB hub found
[ 4.050000] hub 2-0:1.0: 3 ports detected
[ 4.060000] max77xxx-rtc max77802-rtc: setting system clock to 2013-08-26 05:30:52 UTC (1)
[ 4.080000] Freeing unused kernel memory: 176K (c050c000 - c0538000)
Loading, please wait...
[ 4.130000] udevd[1174]: starting version 175
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
[ 4.260000] usb 1-2: new high-speed USB device number 2 using s5p-ehci
Begin: Running /scripts/local-premount ... done.
[ 4.300000] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
Begin: Running /scripts/local-bottom ... done.
Begin: Running /scripts/init-bottom ... done.
[ 4.410000] usb 1-2: New USB device found, idVendor=0424, idProduct=9730
[ 4.410000] usb 1-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 4.540000] usb 1-3: new high-speed USB device number 3 using s5p-ehci
[ 4.550000] init: ureadahead main process (1272) terminated with status 5
[ 4.690000] usb 1-3: New USB device found, idVendor=0424, idProduct=3503
[ 4.690000] usb 1-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 4.700000] hub 1-3:1.0: USB hub found
[ 4.700000] hub 1-3:1.0: 3 ports detected
[ 4.730000] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
Last login: Sat Jan 1 01:00:12 UTC 2000 on tty1
Welcome to Linaro 13.07 (GNU/Linux 3.11.0-rc7-00060-g4521a9d armv7l)
root@localhost:~# uname -a
Linux localhost.localdomain 3.11.0-rc7-00060-g4521a9d #90 SMP PREEMPT Mon Aug 26 14:27:04 KSx
root@localhost:~#
</bio-0>
UART/USB2.0/eMMC/Cortex-A15/DRAM/Ethernet are working now.
We need to port USB3.0, GPU and many other devices on the board.
You can download the full Kernel source code via this link.
https://github.com/hardkernel/linux/tree/odroid-3.11-rc7