skip menu and go to main content

body start

ODROID-T -S -7

Wiki

Project News

Project Info

  • This project has not yet categorized Software Map
  • Member count : 5
  • Registered:  : 2010.05.10
  • Activity Percentile:  : 100%

activity viewforum,download view

1 Preface

This page will explain how to compile Linux Kernel for Odroid.

2 Build environment

Tested with Ubuntu 8.10/9.04/9.10/10.04/10.10 (Other Linux package might be fine to build Linux Kernel) 64bit version is also working well.

3 Source code download

Linux kernel source code is stored in bundled SD card. But, this one may be an old version.

Please use this link to get the latest source code.


4 Kernel compile

To start Kernel compile, .config file should be made first. Odroid-T Kenel configuration file is located in arch/arm/configs/odroid_T_mmc_defconfig Odroid-S Kenel configuration file is located in arch/arm/configs/odroid_S_mmc_defconfig You can make .config with below command.

4.1 Kernel version 2.6.32

# make odroid_T_mmc_defconfig ====> Odroid-T
# make odroid_S_mmc_defconfig ====> Odroid-S
# make odroid_7_mmc_defconfig ====> Odroid-7
Or you can copy manually odroid_?_mmc_defconfig to .config in linux directory.

Let's start compile !
# make zImage

4.2 Kernel version 2.6.35

Now, Odroid -7 $ -E7 latest kernel version is 2.6.35.
# make ARCH=arm odroid_7_defconfig ====> Odroid-7
# make ARCH=arm odroid_e7_defconfig ====> Odroid-e7

Let's start compile !
# make ARCH=arm CROSS_COMPILE=arm-none-eabi- zImage

If you can build kernel successfully, you will have "arch/arm/boot/zImage" (approximately 2Mbytes).

5 Transfer kernel image to target board

5.1 For Windows(XP) PC Users

1) Turn on Odroid and you can see below booting message. You need to press any key quickly to stop the OS booting process.
OK

U-Boot 1.3.4 (Jul 30 2010 - 00:02:08) for HKDKC110 D Type


CPU:  S5PC110@1000MHz
        APLL = 1000MHz, HclkMsys = 200MHz, PclkMsys = 100MHz
	MPLL = 667MHz, EPLL = 80MHz
		       HclkDsys = 166MHz, PclkDsys = 83MHz
		       HclkPsys = 133MHz, PclkPsys = 66MHz
Serial = CLKUART 
Board:   HKDKC110
I2C:   pres(1), div(3) 
ready
DRAM:    256 MB
Flash:   1 MB
SD/MMC:  1936MB
Muxed OneNAND 512MB 1.8V 16-bit (0x50)
OneNAND version = 0x013e
*** Warning - OneNAND read mode: async.
Scanning device for bad blocks
Bad eraseblock 267 at 0x042c0000
Bad eraseblock 318 at 0x04f80000
Bad eraseblock 364 at 0x05b00000
OneNAND: 512 MB
pres(1), div(3) 
In:      serial
Out:     serial
Err:     serial
checking mode for fastboot ...
Hit any key to stop autoboot:  0 
HKDKC110 #
 


2) With "run dnwk" command, you can download any binary file to Odroid RAM from PC via USB.
HKDKC100 # run dnwk
Insert a OTG cable into the connector! 
 


3) If you plug USB Cable, you are ready to send binary file to Odroid.
HKDKC110 # run dnwk
Insert a OTG cable into the connector!
OTG cable Connected! 
Now, Waiting for DNW to transmit data
 


4) It's time to execute DNW utility. But, you should install USB driver first.
Driver installation is required only for first time of USB connection.
Driver file and installation can be found in this link.
5) Execute DNW utility software and set download address as u-boot wiki 6) You can start download with menu for USB Port -> Download to select file(zImage) to send.

7) After downloading and write the binary image to T-flash, Serial terminal will show below message.

Download Done!! Download Address: 0x30008000, Download Filesize:0x22c14c
Checksum is being calculated...
Checksum O.K.
writing kernel.. 1073, 8192 
MMC write: dev # 0, block # 1073, count 8192 ... 8192 blocks written: OK
completed
HKDKC110 # 
 


8) After writing, Serial terminal will show below message. And you can boot with boot command.
MMC write: dev # 0, block # 1073, count 8192 ... 8192 blocks written: OK
completed
HKDKC100 # boot
 


1) Run moviNAND_Fusing_Tool.exe and select drive of the card reader and Browse button near by Kernel Image file and choose "zImage"

2) Click "START" button and writing process will be done quickly.

Note) Do not change other parameters. Changing will cause malfunction.

5.2 For Linux (Ubuntu) PC Users

1) With "run dnwk" command, you can download any binary file to Odroid RAM from PC via USB.
HKDKC110 # run dnwk
Insert a OTG cable into the connector!
 


2) If you plug USB Cable, you are ready to send binary file to Odroid.
HKDKC110 # run dnwk
Insert a OTG cable into the connector!
OTG cable Connected! 
Now, Waiting for DNW to transmit data
 


3)To start download, use smdk-usbdl command.
# smdk-usbdl -f arch/arm/boot/zImage -a 0x30008000
 


4) After downloading, PC will show below message.
# smdk-usbdl -f arch/arm/boot/zImage -a 0x30008000
SMDK42XX,S3C64XX USB Download Tool
Version 0.20 (c) 2004,2005,2006 Ben Dooks <ben-linux@fluff.org>

S3C64XX Detected!
=> found device: bus 002, dev 024
=> loaded 2292348 bytes from arch/arm/boot/zImage
=> Downloading 2292358 bytes to 0x30008000
=> Data checksum 997c
=> usb_bulk_write() returned 2292358
#
 


5) After downloading and write the binary image to T-flash, Serial terminal will show below message.
Download Done!! Download Address: 0x30008000, Download Filesize:0x22fa7c
Checksum is being calculated...
Checksum O.K.
writing kernel.. 1081, 8192 
MMC write: dev # 0, block # 1081, count 8192 ... 8192 blocks written: OK
completed
HKDKC110 # 
 


6) You can test the kernel without physical writing on T-Flash. Useful only for testing.
HKDKC100 # bootm 30008000 30A00000
 


7) After writing, Serial terminal will show below message. And you can boot with boot command.
writing kernel.. 1073, 8192 
MMC write: dev # 0, block # 1073, count 8192 ... 8192 blocks written: OK
completed
HKDKC110 # boot
 


6 How to check zImage update

  • While Linux kernel boots, you can see build date/time with Serial terminal.
Starting kernel ...

Uncompressing Linux.................................................................................................................................................... done, booting the kernel.
Initializing cgroup subsys cpu
Linux version 2.6.29 (user@desktop) (gcc version 4.3.1 (for S3C64XX Samsung Electronics AP Development Team) ) #10 Thu May 13 17:09:28 KST 2010

7 How to be a developer for this project

If you want to join this project, please email me(ruppi.kim at hardkernel.com) your id.

Or, leave a message on the board with the following information.

Title: Want to be a member.

ID: (Your login ID)

Description: Brief introduction

After the registration process, you can commit source with git and modify Wiki pages