You are on page 1of 430

X-Hyper270-TKU Manual

Revision History
Date
2005. 11. 9

Version
R1.0

Updates
First Edition(Editor: Heo Young Wook)

Copyright 2001 by HyBus Co., Ltd


All right reserved. Printed in Republic of Korea

HyBus Co., Ltd


#1005, Woorim E-biz Center 2nd, 184-1
Gu-ro 3Dong, Gu-ro,
Seoul, Korea 152-050
Tel : 02-890-5678
Fax : 02-890-5686
Homepage : www.hybus.net

X-Hyper270-TKU Manual

Table of Contents
1. Embedded System
.....7

1.1 Embedded System ..................7


1.2 Embedded System O/S...8
1.3 Embedded Linux System......29

2. X-Hyper270-TKU Hardware ..33

2.1 PXA27X ...33


2.2 FPGA (Cyclone) .56
2.3 X-Hyper270-TKU ......58
2.4 X-Hyper270-TKU Package Contents..82
2.5 X-Hyper270-TKU Layout.....87
2.5 X-Hyper270-TKU Connecting....89

3. ......94

3.1 Toolchain ..94


3.2 JTAG ....102
3.3 Bootloader .106
3.4 minicom ....111
3.5 bootp-tftp ..122

4. .....144

4.1 Bootloader......144
4.2 Kernel compile...149
4.3 File System..212

X-Hyper270-TKU Manual

5. ..224

5.1 Linux Device Driver ..225


5.2 Frame Buffer (TFT LCD) 250
5.3 Ethernet .254
5.4 Sound.....258
5.5 UARTs....262
5.6 USB Slave..264
5.7 PCMCIA & CF...266
5.8 USB Host ..270
5.9 MMC/SD/SDIO...273
5.10 RTC.277
5.11 Touch(ADS7843)....278
5.12 Dot Matrix..279
5.13 FND......283
5.14 Char LCD....288
5.15 KeyScan...293
5.16 Stepper Motor ....299
5.17 DC Motor....305
5.18 LED.311

6. .....316

6.1 QT ..316
6.2 Web Server (GoAhead) ...336
6.3 Web Browser (Dillo) ..348
6.4 NAT ..353
6.5 NFS .....367

X-Hyper270-TKU Manual
6.6 MPEG Player Porting...372
6.7 USB Host ...381

7. ....415

7.1 Pin Description...415


7.2 External Pin Description....423

X-Hyper270-TKU Manual

X-Hyper270-TKU Manual

1. Embedded System

1.1. Embedded System



(embedded system)
.
, , ,
,

.
.

.

, , , ,
.
TV, , ,
, PDA,
, , , ,
, (ATM), , ,
, , Post PC

.

X-Hyper270-TKU Manual
1.2. Embedded System
O/S
(embedded system)

.
(OS : Operation System)
.
,

.

(real time)
.
RTOS ,
(embedded)
.

(embedded

operation

software)

RTOS(Real Time OS) GPOS(General Purpose OS) .

X-Hyper270-TKU Manual

1.2.1. Real Time OS)


RTOS .

, RTOS
(response speed), (interrupt), Efficiency, Scalability,
Portability . RTOS
, , ,
.
Hard Real-Time System Soft Real-Time System
. Hard Real-Time System
,
,

. Soft Real-Time System
Hard Real-Time System
. Soft Real-Time System
(system error)
.

Real Time ?
RT . RT Linux
. RT
RT .

X-Hyper270-TKU Manual

1.2.1

GPOS(General Purpose OS)


GPOS Window NT, Window 95/98/2000, DOS, UNIX,
Macintosh OS, OS/2
. ROM , Local File
System, Paged Virtual Memory MMU(Memory Management
Unit) . Response Speed, Interrupt
Handling RTOS

(porting)


PC
. Xinu, uC/OS

pSOS, VxWORKs Cisco

IOS

.
.

.

,
.

10

X-Hyper270-TKU Manual

,

.


,

.


.
.

, .
TCP/IP , ,

.

(license)


, (machine) .

.

11

X-Hyper270-TKU Manual

.

,
. (embedded
linux)
. PC
GNU/Linux . PC

Glibc C
(utility)

,
C
. ,

.
,
.

12

X-Hyper270-TKU Manual
1.2.2

Embedded System OS


.

Xinu
Xinu Purdue Douglas E. Comer
.
. TCP/IP
. Xinu ,
, (semaphore), , I/O
TCP/IP . ,

, Intel,

Motorola, Sparc CPU .



.

13

X-Hyper270-TKU Manual

uC/OS uC/OS-II
Jean J. Labrosse POSIX(1) uC/OS-II
.
.
,
. uC/OS uC/OS-II 4 C
CPU Intel,
Motorola, ARM, Sparc, Hitachi SH 32 CPU (Zilog) Z80
8 CPU, TI DSP . C

(preemptive) .
, , .
TCP/IP
uC/OS, uC/OS-II
.

(1) POSIX, Portable Operating Systems based on Unix

14

X-Hyper270-TKU Manual

eCOS
eCOS

.
Power PC, Sparc, ARM, Mips CPU
GUI .
C EL/IX
API EL/IX
eCOS . ITRON
TCP/IP . TCP/IP
(beta)
.
.
1-1 eCOS .

15

X-Hyper270-TKU Manual

Embedded Application
ISO C Library
Native C API
Internal
Kernel API

EL/IX API
UTTRON
API

Davice Drivers

Kernel
- pluggable schedulers
- memory allocation
- synchronization
- timers
- interrupt and DSR support
- threads

Multithreaded
Support

HAL
- timers - interrupts
- general state manipulation
- init arch/cpu/platform
- thread state manipulation
- exceptions

Hardware

1- 1 eCOS

16

GDB
stubs

ROM
monitor

X-Hyper270-TKU Manual

1.2.3

Embedded System OS
100 TCP/IP

50 .
Motorola, ARM, Mips

(OS)
6 .

pSOS+
pSOS (WindRiver)
(Integrated Systems) (Kernel).
pSOSystem .
/ (module)
. (thread)
, (context switching)

.
.
pSOS+m ,
,
. pSOS+m
x86 Master/Slave

17

X-Hyper270-TKU Manual

. (priority) 256
. FIFO (Round Robin)
. MMU
4KB .

.

. TCP/IP
FTP, Telnet, TFTP, NFS, HTTP
. pSOSystem pRISM+
95/98, NT .
pRISM+
. pROBE+ GUI .
1.2 pSOSystem .

System
Task

User
Task

User
Task

C, C++ Interface

pSOS+

pHILE+

pRPC+

pROBE+

pNA+

pREPC+

other
components

Interrupt
Handlers

Drivers

1- 2 pSOS (Architecture)

18

X-Hyper270-TKU Manual

QNX
QNX QNX
/
.
QNX , , , IPC

. ,
, ,

. ,
CPU
.
QNX IPC
(process) (message)
.
QNX

QNX .

. . QNX 32
2 .
FIFO, (Round Robin), adaptive
. QNX MMU
4KB (virtual memory)
.

19

X-Hyper270-TKU Manual

.
. TCP/IP
.
1-3 QNX .

Application

Application

Photon

I/O
Manager

Others

Memory protected
MircoKernel

File
Systems

Memory protected

Device
Drivers

Network
Drivers

Graphic
drivers

Hardware

1- 3 QNX (Architecture)

20

X-Hyper270-TKU Manual

VRTX
VRTX (Mentor Graphics) (RTOS)
VRTXoc(on-chip)
VRTX sa(scalable architecture)
.
, POSIX/ANSI
, MS-DOS .
TCP/IP
. SNMP TMN/CMIP . , I/O,
(stream) . MMU
MMU .
XRAY (debugger) . XRAY

. ,


. 1.4 VRTX .

21

X-Hyper270-TKU Manual

Embedded Shell

C and C++ Running Libraries

VRTX
Interfaces

TCP/IP
network

File
System

POSIX
Interfaces

VRTX NanoKernel

Hardware Abstration Layer


Board Support Package

1- 4 VRTX (Architecture)

22

X-Hyper270-TKU Manual

VxWORKs
VxWORKs VRTX pSOSystem
.
. VxWORKs
/ VxWORKs
Wind , ,
/, .
..

VxVMI
.
256 .
POSIX Wind . MMU VxVMI
8KB VxVMI
.
. , ,
. VxWORKs JVM, ,
,
(Tornado) . Tcl
.
VxSim .
VxWORKs
.
VxMP

23

X-Hyper270-TKU Manual

.

. TCP/IP
. 1.5 VxWORKs .

Real-time Embedded Application

Graphics

Internet
Support

Multiprocessing
Support

Java
Support

POSIX
Library

File
Systems

WindNet Networking

Core OS
Wind Kernel

1- 5 VxWORKs (Architecture)

24

X-Hyper270-TKU Manual

Nucleus PLUS
Nucleus Accelerated Technology
Nucleus
PLUS. Necleus NET
TCP/IP . Nucleus
PLUS ANSI C
, , ,
. Nucleus NET
TCP/IP
Telnet, FTP, WWW .
Nucleus NET TCP/IP 60KB
. Nucleus PLUS

.
CPU
.
. Nucleus PLUS
, ,
. MMU
.

25

X-Hyper270-TKU Manual

Window CE
Window CE .
, GUI
.

Windows CE

32
. ,
. (thread)
(thread) .
.
. Windows
CE . ,
Windows CE ,
, , . ,

(poll) . Windows CE
.

. Windows CE .
, , .

Windows CE
API . WinInet
API FTP HTTP 1.0 .
Secure Sockets Layer(SSL) 2.0, Secure Sockets Layer(SSL) 3.0 Private

26

X-Hyper270-TKU Manual

Communication Technology(PCT) 1.0


. WinInet API Common Internet File System(CIFS)
. Windows CE
IrDA
IrSock . Windows CE
RAS . TCP/IP
.
Windows CE .
. ,
TCP/IP
.
, Windows CE TCP/IP
. Windows CE
LAN .
Windows CE
. Windows CE
Serial Line Internet Protocol(SLIP) Point-to-Point Protocol(PPP)
.
Password Authentication Protocol(PAP), Challenge Handshake Authentication
Protocol(CHAP) Microsoft CHAP
. LAN Windows CE NDIS(2) 4.0
. , .
Windows CE
(2) NDIS, Network Driver Interface Specification

27

X-Hyper270-TKU Manual

.
, , , Windows CE
.

28

X-Hyper270-TKU Manual
1.3

Embedded

Linux System


(Minix)
(Linus Torvalds)
.
. (Richard Stallman)
(FSF: Free Software Foundation) GNU
GPL(General Public License) .

, 1994 5 (3) 1.0.0
1996 6 2.0.0 . 2001 1
2.4.0 .
. ,
.

. ,
.
.


.

(3) (odd) , (even) .

29

X-Hyper270-TKU Manual

,
.

TCP/IP,PPP,X.25,HDLC,FDDI

.



.
.

PC

. ,

.

30

X-Hyper270-TKU Manual

(real time) OS Real Time


.

(embedded Linux)
. OS
.

(embedded Linux)
. (micro process),
, (tool)
.

31

X-Hyper270-TKU Manual

32

X-Hyper270-TKU Manual

2. X-Hyper270-TKU Hardware

2.1. PXA27X
PXA27X

2.1.1.

PXA27X
,

peripheral

Intel

XscaleTM

micro

architecture systemon-chip .
PXA27X 32-bit memory data bus peripheral 23X23mm
256-pin PBGA . memory interface
memory 800x600 pixel 1, 2, 4, 8-bit gray scale 8,16,18-bit color pixel
display .

PXA27X Block Diagram

33

X-Hyper270-TKU Manual

2.1.2.

Intel Xscale Micro architecture


- ARM* Architecture Version 5TE ISA
- ARM* Thumb Instruction Support
- ARM* DSP Enhanced Instruction
-
- Intel Wireless MMX technology.
- designed for high-performance multimedia, 3-D games and advanced video
- Intel Media Processing Technology
- Extend 16-bit Multiply
- 40- bit Accumulator
- 32-KByte instruction Cache
- 32-KByte Data Cache.
- 2-KByte Mini Data Cache.
- 2-KByte Mini Instruction Cache.
- Instruction and Data Memory Management Units(MMU)
- Branch Target Buffer.
- Jtag port Debug .

Intel XScale micro architecture peripheral .


RISC core , multimedia application lcd controller,
multi-media controller, memory .

34

X-Hyper270-TKU Manual

Xscale micro architecture

35

X-Hyper270-TKU Manual

2.1.3.

PXA27X

1. Memory Controller

Memory controller . Memory controller 4


SDRAM partition , SRAM, SSRAM, Flash, ROM, SROM 6 static
chip select 2 PCMCIA Compact flash slot .

General Memory Interface Configuration

36

X-Hyper270-TKU Manual

2. Clock and Power Controllers

13MHz 32.768KHz crystal . 13MHz crystal


Core PLL(Phase Locked Loop) Peripheral PLL PLL
. 32.768KHz crystal
RTC(Real Time Clock), Power Management Controller Interrupt Controller
. 32.768KHz crystal sleep
power .
Power management control turn/run, idle, sleep .

Clock Management Block Diagram

37

X-Hyper270-TKU Manual

3. Universal Serial Bus(USB) Client

USB client Module Universal Serial Bus Specification, Revision1.1 .


16 endpoint CPU 48MHz . USB
Device Controller DMA Memory Memory DMA access FIFO
.

Self Power Device

38

X-Hyper270-TKU Manual

4. DMA Controller(DMAC)

DMAC peripheral service transfer 16


channel 2 data transfer
.

DMAC perpheral word, half-word, byte

39

X-Hyper270-TKU Manual

5. LCD Controller
- Display mode
- Support for single- or dual-scan display modules
- Passive monochrome mode supports up to 256 gray-scale levels (8 bits)
- Active color mode supports up to 16777216 colors (24 bits)
- Passive color mode supports a total of 16777216 colors (24 bits)
- Support for LCD panels with an internal frame buffer
- Support for 8-bit (each) passive dual-scan color displays
- Support for up to 18-bit per pixel single-scan color displays without an
internal framebuffer
- Support for up to 24-bit per pixel single-scan color displays with an internal
frame buffer
- Support for display sizes from 1x1 to 800 x 600 pixels.
- Programmable pixel clock from 52.0 MHz to 25.4 kHz.
- Supports pixel depths of 2, 4, 8, 16, 18, and 24 bits per pixel (bpp) in RGB format
- Overlays supported with pixel depths of 16, 19, 24, and 25 bpp in RGBT format

40

X-Hyper270-TKU Manual

41

X-Hyper270-TKU Manual

6. AC97 Controller

AC97 Controller AC97Rev2.0 CODEC CODEC 48KHz sample rate


. Controller 16 PCM In PCM out,
Modem In, Modem Out . memory DMA access
FIFO .

AC97 Connection

42

X-Hyper270-TKU Manual

7. Inter-IC Sound(I2S) Controller


I2C Controller I2C Codec , NomalI2C MSB-Justified I2C format , I2C CODEC 4 signal
. I2C Controller signal AC97 controller multiplex. controller
memory DMA access FIFO .

43

X-Hyper270-TKU Manual

8. Multimedia Card/SD/SDIO Controller


MMC/SD/SDIO Controller memory card serial interface .
Controller MMC SPI mode 2 . MMC controller
memory DMA access FIFO .

MMC System Interaction

SD/SDIO System Interaction

44

X-Hyper270-TKU Manual

9. Fast Infrared(FIR) Communication Port


FIR Communication Port 4Mbps IrDA(Infrared Data Association)

. Half-duplex , memory DMA access FIFO . FIR


STUART tx, rx IRDA LED .

45

X-Hyper270-TKU Manual

10. Synchronous Serial Protocol Controller(SSPC)


SSPC Port 7.2KHz 1.84MHz full-duplex serial interface.
SSPC memory DMA access FIFO .

46

X-Hyper270-TKU Manual

11. Inter-Integrated Circuit(I2C)Bus Interface Unit


I2C Bus interface 2-pin serial communication port.
data/address clock .

I2C Bus Configuration Example

I2C Bus Interface Unit Block Diagram

47

X-Hyper270-TKU Manual

12. GPIO

GPIO output input input rising


falling edge interrupt . Primary GPIO pin peripheral
Secondary GPIO peripheral mapping alternate function
.

48

X-Hyper270-TKU Manual

13. UARTs
A.

Full Function UART (FFUART)


FFUART 230Kpbs baud rate modem control pin:
nCTS, nRTS, nDSR, nSTR, nRImnDCD . memory memory
DMA access FIFO .

B.

Bluetooth UART(BTUART)
BTUART 921Kbps baud rate modem control pin :
nCTS, nRTS . modem control pin GPIO
memory memory DMA access FIFO .

C.

Standard UART(STUART)
STUART 230Kbps baud rate modem control pin
GPIO pin . memory memory DMA
access FIFO . STUART transmit receive pin IRDA port
mux .

49

X-Hyper270-TKU Manual

14. Real-Time Clock(RTC)


Real Time Clock crystal .
13MHz system Sleep 32.768KHz crystal
power . 32.768kh crystal .
RTC programmable alarm register output alarm register processor
Sleep mode .

50

X-Hyper270-TKU Manual

15. OS Timers
OS Timer 4 match register 3.25-MHz reference counter

. register reference counter interrupt .


match register watch dog reset .

51

X-Hyper270-TKU Manual

16. Pulse-Width Modulator(PWM)


PWM 4 . Frequency duty cycle
. PWM LCD LCD
.

52

X-Hyper270-TKU Manual

17. Interrupt Control


Interrupt Controller core IRQ FIQ interrupt input . Mask Register
interrupt enable disable.

53

X-Hyper270-TKU Manual

18. USB Host Controller


PXA27X processor Host Computer Peripherals Serial Data USB
Host .
-

USB Rev 1.1 Compatible

Low-speed and full-speed USB Device

OHCI Rev 1.0a Compatible

USB Host Controller Block Diagram

54

X-Hyper270-TKU Manual

19. QUICK CAPTURE INTERFACE


- Parallel interface support for 8, 9, and 10 bits
- Serial interface support for 4-bit and 5-bit device connections
- Support for ITU-R BT.656-4 SAV and EAV embedded synchronization
- Pre-processed capture modes:
- RGB 8:8:8, RGBT 8:8:8, RGB 6:6:6, RGB 5:6:5, RGB 5:5:5, RGBT 5:5:5,
RGB 4:4:4 data formats
- YCbCr 4:2:2 data format
- RGB component precision reductions for RGB 8:8:8

55

X-Hyper270-TKU Manual
2.2. FPGA (Cyclone)
Cyclone FPGA family 20,060 LEs(Logic Elements) 288Kbit RAM,
1.5V, 0.14um, SRAM .

PLLs(Phase Locked Loops) DDR SDRAM FCRAM(Fast Cycle RAM)


DDR(Double Data Rate) . 640Mbps LVDS 33MHz,
64-, 32-bit PCI, ASSP ASIC .
- 2,910 ~ 20,060 Les.
- 294,912 RAM bits
- serial configuration device configuration
- LVTTL, LVCMOS, SSTL-2, SSTL-3 I/O
- 66-, 33MHz 64-, 32-bit PCI
- (640 Mbps) LVDS I/O
- (311 Mbps) LVDS I/O
- 311-Mbps RSDS I/O
- clock multiplication phase shifting 2 PLL.
- LAB(Logic Array Block) row 6 clock resource 8 global clock
line .
- DDR SDRAM(133MHz), FCRAM, SDR SDRAM .
- Altera MegaCore function AMPP(Altera Megafunction Partners Program)
IP .

56

X-Hyper270-TKU Manual

Cyclone EP1C12 Device Block Diagram

57

X-Hyper270-TKU Manual
2.3. X-Hyper270-TKU

1.

X-Hyper270-TKU Block Diagram


.

58

X-Hyper270-TKU Manual

. SDRAM(128MB), OS
Flash Memory (32MB) .

. SDRAM Data /
Address Bus Buffer CPLD
. SDRAM Address CPLD .
SDRAM Data / Address Bus SDRAM
.
FanOut .
Address Map .

59

X-Hyper270-TKU Manual

2. Power Supply

270-TKU Power Bolck Diagram .

Power Block Diagram

270-TKU . PXA270

60

X-Hyper270-TKU Manual

.
1. VCC_CORE : CPU CORE 1.45V
. 270-TKU 520MHz
.
2. VCC_SRAM : CPU SRAM 1.1V .
3. VCC_PLL

: CPU PLL 1.3V .

4. VCC_MEM

: Memory/System Bus 3.3 .

5. VCC_IO

: GPIO Peripherals 3.3V .

6. VCC_USIM : USIM 3.3V .,


7. VCC_USB : CPU USB 3.3V
.

Name

Enable

Units

Sleep-active units,

Default

Allowed

Voltage

Levels

(V)

(V)

3.0

3.0

25

3.0,3.3

10

Tolerance
(%)

VCC_BATT

None

VCC_IO

SYS_EN

Peripheral I/O

3.3

VCC_LCD

SYS_EN

LCD I/O

3.3

VCC_USB

SYS_EN

USB I/O

3.3

VCC_MEM

SYS_EN

VCC_BB

SYS_EN

Base band Interface

3.3

VCC_USIM

SYS_EN

USIM Interface

3.3

1.8,3.0,3.3

10

VCC_PLL

PWR_EN

Phase Locked Loops

1.3

1.3

10

VCC_SRAM

PWR_EN

Internal SRAM units

1.1

1.1

10

VCC_CORE

PWR_EN

All other internal units

Any

0.85 1.55

10

Oscillators

Memory Controller
Interface

61

3.3

1.8,2.5,3.0,
3.3
3.0,3.3
1.8,2.5,3.0,
3.3
1.8,2.5,3.0,
3.3

10
10
10

10

X-Hyper270-TKU Manual

PXA270 .

Voltage

Symbol

Description

Min

Typical

Max

Units

2.25

3.00

3.75

1.17

1.30

1.43

VCC_BATT Voltage
VVCC0

Voltage applied on VCC_BATT @3.0V

VCC_PLL Voltage
VVCC1

Voltage applied on VCC_PLL @1.3V

VCC_BB Voltages
VCC2a

Voltage applied on VCC_BB @1.8V

1.71

1.80

2.16

VCC2b

Voltage applied on VCC_BB @2.5V

2.25

2.50

2.75

VCC2c

Voltage applied on VCC_BB @3.0V

2.70

3.0

3.30

VCC2d

Voltage applied on VCC_BB @3.3V

2.97

3.3

3.63

VCC_LCD Voltage
VCC3a

Voltage applied on VCC_LCD @1.8V

1.71

1.80

2.16

VCC3b

Voltage applied on VCC_LCD @2.5V

2.25

2.50

2.75

VCC3c

Voltage applied on VCC_LCD @3.0V

2.70

3.0

3.30

VCC3d

Voltage applied on VCC_LCD @3.3V

2.97

3.3

3.63

VCC_IO Voltage
VCC4a

Voltage applied on VCC_IO @3.0V

2.6917

3.0

3.30

VCC4b

Voltage applied on VCC_IO @3.3V

2.97

3.3

3.63

VCC_USIM Voltage
VCC5a

Voltage applied on VCC_USIM @1.8V

1.71

1.80

2.16

VCC5b

Voltage applied on VCC_USIM @3.0V

2.70

3.0

3.30

0.99

1.10

1.21

VCC_SRAM Voltage
VCC6

Voltage applied on VCC_SRAM @1.1V

VCC_USB Voltage
VCC7a

Voltage applied on VCC_USB @3.0V

2.70

3.00

3.30

VCC7b

Voltage applied on VCC_USB @3.3V

2.97

3.30

3.65

62

X-Hyper270-TKU Manual

Memory Voltage and Frequency Electrical Specifications

Symbol

Description

Min

Typical

Max

Units

1.71

1.80

2.16

13

104

MHz

13

104

MHz

2.25

2.50

2.75

13

104

MHz

13

104

MHz

2.70

3.0

3.3

13

104

MHz

13

104

MHz

2.97

3.30

3.63

13

104

MHz

13

104

MHz

Memory Voltage and Frequency Range 1


VMEM1
fSM1A

fSM1B

Voltage applied on VCC_MEM


External

synchronous

memory

frequency, SDCLK1, SDCLK2


External synchronous memory frequency
SDCLK0

Memory Voltage and Frequency Range 2


VMEM2
fSM2A

fSM2B

Voltage applied on VCC_MEM


External

synchronous

memory

frequency, SDCLK1, SDCLK2


External synchronous memory frequency
SDCLK0

Memory Voltage and Frequency Range 3


VMEM3
fSM3A

fSM3B

Voltage applied on VCC_MEM


External

synchronous

memory

frequency, SDCLK1, SDCLK2


External synchronous memory frequency
SDCLK0

Memory Voltage and Frequency Range 4


VMEM4
fSM4A

fSM4B

Voltage applied on VCC_MEM


External

synchronous

memory

frequency, SDCLK1, SDCLK2


External synchronous memory frequency
SDCLK0

63

X-Hyper270-TKU Manual

Core Voltage and Frequency Electrical Specifications

Symbol

Description

Min

Typical

Max

Units

0.8075

0.85

1.705

13

13

MHz

0.855

0.9

1.705

91

104

MHz

0.95

1.00

1.705

156

MHz

1.12

1.18

1.705

208

MHz

0.9975

1.05

1.705

208

MHz

0.99

1.1

1.705

312

MHz

1.2825

1.35

1.705

416

MHz

1.3775

1.45

1.705

520

MHz

Min

Typical

Max

Units

1.4725

1.55

1.705

624

MHz

Core Voltage Frequency Range 1


VVCCC1

Voltage applied on VCC_CORE

fCORE1

Core operating frequency

Core Voltage Frequency Range 2


VVCCC2

Voltage applied on VCC_CORE

fCORE2

Core operating frequency

Core Voltage Frequency Range 3


VVCCC3

Voltage applied on VCC_CORE

fCORE3

Core operating frequency

Core Voltage Frequency Range 4


VVCCC4

Voltage applied on VCC_CORE

fCORE4

Core operating frequency

Core Voltage Frequency Range 4a


VVCCC4a

Voltage applied on VCC_CORE

fCORE4a

Core operating frequency

Core Voltage Frequency Range 5


VVCCC5

Voltage applied on VCC_CORE

fCORE5

Core operating frequency

Core Voltage Frequency Range 6


VVCCC6

Voltage applied on VCC_CORE

fCORE6

Core operating frequency

Core Voltage Frequency Range 7


VVCCC7

Voltage applied on VCC_CORE

fCORE7

Core operating frequency

Symbol

Description

Core Voltage Frequency Range 8


VVCCC8

Voltage applied on VCC_CORE

fCORE8

Core operating frequency

64

X-Hyper270-TKU Manual

5V 5V
3.3V 3.3V
.
270-TKU
PC ATX Power Supply .
Regulator(AME1085) 3.3V . 3.3V
LDO(MIC5219 / MIC5238), StepDown Dc-Dc Converter(TPS62000)
PXA270 . CS8900, ADS7843, CS4299
LDO(AME1085) 3.3V LCD LCD BLU
, Audio AMP Power Supply 5V .
Regulator CPU SDRAM 3.3V Regulator
3.3V .
Data Sheet .

65

X-Hyper270-TKU Manual

3. Interface

PXA270 .
PXA270 Data Sheet

1.

SDRAM : K4561632 4 EA

SDRAM Interface
PXA270 SDRAM . PXA270A or PXA272A SDRAM
. SDRAM
SDRAM
. SDRAM CAS,
RAS, CLK . CLK, RAS, CAS .
270-TKU 16MBit X 4Bank X 16Bit SDRAM 4 Data Bus 128MB
.

66

X-Hyper270-TKU Manual

2. Flash Memory : TE28F128 2 EA

Flash Interface
Flash Memory Address Map 0x0000_0000 Chip Select0 .
Data Bus, Address Bus, new, OE, CS CPLD .
System 0 SRAM
.

67

X-Hyper270-TKU Manual

3. 10 Base-T Ethernet

: CS8900

10 Base T Ethernet Controller Interface


Ethernet Chip Address/Data Bus
, Read, Write, Chip Select .
CS8900 ISA . X-Hyper255B
DMA DMA Data Sheet
. PXA270 DMA
Control Pin Register .
X-Hyper270A DMA Control Signal
.

68

X-Hyper270-TKU Manual

4. 10/100 Base-T Ethernet

LAN91C111 2EA

10/100 Base T Ethernet Controller Interface

SMSC LAN91C111 10/100 Base-T Ethernet Controller 10/100


non-PCI . Base Address 0x1400 0000, 0x1410 0000
CPLD . 32bit
Address 4KB. GPIO53, GPIO 54 .

69

X-Hyper270-TKU Manual

5. 64MB Nand Flash Memory

K9K1G08U0M

Nand Flash Memory Interface

270-TKU Nand Flash Memory 64MB CWE Address 0x1030 0000


CS Address 0x10F0 0000. Address CPLD
. Nand Flash CPLD
. NFCE, CLE, ALE, NFWP Data
bus 0 ~ 3 Nand Flash Data Bus 8bit.

70

X-Hyper270-TKU Manual

6. Mini IDE Interface

Mini IDE Interface

Mini IDE Interface Chip Select

Base Address 0x1040 0000 0x1050 0000

. Mini IDE Hard Disk IOVCC Level 5V Data, Address,


Control Signal CPLD CPU IO Vcc Level
5V

Tolerant Buffer .

71

X-Hyper270-TKU Manual

7. USB 2.0 HOST TD242LP

USB 2.0 Host Interface

TD242LP USB Host Controller USB 2.0 Host Controller


.12Mb/s Full-speed 1.5Mb/s Low-speed USB
. Base Address 0x1060 0000 16bit Data-Bus .
GPIO52 .

72

X-Hyper270-TKU Manual

8. 4PORT Full Function Controller

TL16C554

4 Port UART Controller Interface

TL16C554 4Port Full Function Uart 4 A : 0x10A0 0000


B : 0x10B0 0000, C : 0x10C0 0000, D : 0x10D0 0000 Base Address
A : GPIO 14, B : GPIO 19, C : GPIO 22, D : GPIO 85 .
A, B CON2, CON3 TTL C, D Full Function RS232
Driver DSUB-9pin Connenctor J8, J9 RS232 .

73

X-Hyper270-TKU Manual

4. FLASH Memory Map

Flash Memory Map

74

X-Hyper270-TKU Manual

5. SDRAM Memory Map

SDRAM Memory Map

75

X-Hyper270-TKU Manual

6. Static Memory MAP

* Main Board
Name

Address

Size

Description

Flash

0x00000000

0x2000000

Intel Strata Flash 16bit 16M * 2

CS8900

0x10000000

0x100000

10 Base-T Ethernet Controller

NAND CWE

0x10300000

0x100000

Nand Command CS

IDE CS 0

0x10400000

0x100000

ATA IDE CS 0

IDE CS 1

0x10500000

0x100000

ATA IDE CS 1

USB CS

0x10600000

0x100000

USB 2.0 Host TD242LP

DEVICE PWR

0x10700000

0x100000

Deivce Power ON/OFF

EXTEND PORT 0

0x10800000

0x100000

External GPIO Port 0

EXTEND PORT 1

0x10900000

0x100000

External GPIO Port 1

16C554 CS A

0x10A00000

0x100000

Serial Controller CS A

16C554 CS B

0x10B00000

0x100000

Serial Controller CS B

16C554 CS C

0x10C00000

0x100000

Serial Controller CS C

16C554 CS D

0x10D00000

0x100000

Serial Controller CS D

UART PWR

0x10E00000

0x100000

UART Power ON/OFF

NAND CS

0x10F00000

0x100000

Nand Data CS

LAN91C111 EN 1

0x14000000

0x100000

10/100 Base-T Ethernet Controller 1

LAN91C111 EN 2

0x14100000

0x100000

10/100 Base-T Ethernet Controller 2

Name

Address

Size

FND1

0x11000000

0x100000

7-segment 1

FND2

0x11100000

0x100000

7-segment 2

FND3

0x11200000

0x100000

7-segment 3

FND4

0x11300000

0x100000

7-segment 4

FND5

0x11400000

0x100000

7-segment 5

FND6

0x11500000

0x100000

7-segment 6

FND7

0x11600000

0x100000

7-segment 7

FND8

0x11700000

0x100000

7-segment 8

DOT_1 Col

0x11800000

0x100000

Dot collumn 1

DOT_2 Col

0x11900000

0x100000

Dot collumn 2

* IEB Board

76

Description

X-Hyper270-TKU Manual

DOT_3 Col

0x11A00000

0x100000

Dot collumn 3

DOT_4 Col

0x11B00000

0x100000

Dot collumn 4

DOT_5 Col

0x11C00000

0x100000

Dot collumn 5

KEY_W

0x11D00000

0x100000

Key Write

KEY_R

0x11E00000

0x100000

Key Read

DAC

0x11F00000

0x100000

Digital to Alalog Convertor

ADC

0x12000000

0x100000

Alalog to Digital Convertor

STEP Motor

0x12100000

0x100000

Step Motor controller

DC Motor

0x12200000

0x100000

DC Motor controller

Character LCD

0x12300000

0x100000

Character LCD Control

LED

0x12400000

0x100000

LED

77

X-Hyper270-TKU Manual

7. GPIO MAP

Alternate value
A The corresponding GPIO pin (GPIO[x]) is used as a general purpose I/O.
B The corresponding GPIO pin (GPIO[x]) is used for its alternate function 1(In).
C The corresponding GPIO pin (GPIO[x]) is used for its alternate function 2(In).
D The corresponding GPIO pin (GPIO[x]) is used for its alternate function 3(In).
E The corresponding GPIO pin (GPIO[x]) is used for its alternate function 1(Out).
F The corresponding GPIO pin (GPIO[x]) is used for its alternate function 2(Out).
G The corresponding GPIO pin (GPIO[x]) is used for its alternate function 3(Out).

GPIO Pin

PIN Name

Alternate

Description

value

GPIO<0>

No Use.

GPIO<1>

No Use.

SYS_EN

Reversed.

GPIO<3>

No Use.

GPIO<4>

No Use.

PWR_CAP<0>

Reversed.

PWR_CAP<1>

Reversed.

PWR_CAP<2>

Reversed.

PWR_CAP<3>

Reversed.

GPIO<9>

PCMCIA_IREQ

10

GPIO<10>

ADS7843-IRQ

11

GPIO<11>

CF_IREQ

12

GPIO<12>

CF_CD

13

GPIO<13>

PCMCIA_CD

14

GPIO<14>

TL16C554_INTA

15

GPIO<15>

nCS<1> (Active low chip select 1)

16

GPIO<16>

ADC_INT

17

GPIO<17>

BHDD_INT

18

GPIO<18>

RDY

19

GPIO<19>

TL16C554_INTB

20

GPIO<20>

nSDCS2

78

X-Hyper270-TKU Manual

21

GPIO<21>

nSDCS3

22

GPIO<22>

TL16C554_INTC

23

GPIO<23>

CIF_MCLK

24

GPIO<24>

CIF_FV

25

GPIO<25>

CIF_LV

26

GPIO<26>

CIF_PCLK

27

GPIO<27>

CS8900-INT

28

GPIO<28>

AC97_BITCLK (CS4299 ABITCLK)

29

GPIO<29>

AC97_SDATA_IN_0 (CS4299 ASDOUT)

30

GPIO<30>

AC97_SDATA_OUT (CS4299 ASDIN)

31

GPIO<31>

AC97_SYNC(CS4299 ASUNC)

32

GPIO<32>

MMCLK

33

GPIO<33>

nCS<5> (Active low chip select 5)

34

GPIO<34>

FFRXD (FFUART Receive Data)

35

GPIO<35>

FFCTS (FFUART Clear to send)

36

GPIO<36>

FFDCD (FFUART Data carrier detect)

37

GPIO<37>

FFDSR (FFUART Data set ready)

38

GPIO<38>

RADIO_SI/TX2

39

GPIO<39>

FFTXD (FFUART Transmit Data)

40

GPIO<40>

RADIO_SO/RX2

41

GPIO<41>

FFRTS (FFUART Request to send)

42

GPIO<42>

BTRXD (BTUART Receive Data)

43

GPIO<43>

BTTXD (BTUART Transmit Data)

44

GPIO<44>

BTCTS (BTUART clear to send)

45

GPIO<45>

BTRTS (BTUART Request to send)

46

GPIO<46>

STRXD (STUART Receive Data)

47

GPIO<47>

STTXD (STUART Transmit Data)

48

GPIO<48>

nPOE

49

GPIO<49>

nPWE

50

GPIO<50>

nPLOIR

51

GPIO<51>

nPLOIW

52

GPIO<52>

USB_INT

53

GPIO<53>

nSMSC_INT2

54

GPIO<54>

nSMSC_INT1

79

X-Hyper270-TKU Manual

55

GPIO<55>

nPREG

56

GPIO<56>

nPWAIT

57

GPIO<57>

nIOIS16

58

GPIO<58>

LDD<0> (LCD data pin 0)

59

GPIO<59>

LDD<1> (LCD data pin 1)

60

GPIO<60>

LDD<2> (LCD data pin 2)

61

GPIO<61>

LDD<3> (LCD data pin 3)

62

GPIO<62>

LDD<4> (LCD data pin 4)

63

GPIO<63>

LDD<5> (LCD data pin 5)

64

GPIO<64>

LDD<6> (LCD data pin 6)

65

GPIO<65>

LDD<7> (LCD data pin 7)

66

GPIO<66>

LDD<8> (LCD data pin 8)

67

GPIO<67>

LDD<9> (LCD data pin 9)

68

GPIO<68>

LDD<10> (LCD data pin 10)

69

GPIO<69>

LDD<11> (LCD data pin 11)

70

GPIO<70>

LDD<12> (LCD data pin 12)

71

GPIO<71>

LDD<13> (LCD data pin 13)

72

GPIO<72>

LDD<14> (LCD data pin 14)

73

GPIO<73>

LDD<15> (LCD data pin 15)

74

GPIO<74>

L_FCLK_RD (LCD Frame clock)

75

GPIO<75>

L_LCLK_A0 (LCD line clock)

76

GPIO<76>

L_PCLK_WR (LCD Pixel clock)

77

GPIO<77>

L_BIAS (LCD AC Bias)

78

GPIO<78>

nPCE2

79

GPIO<79>

PSKTSEL

80

GPIO<80>

81

GPIO<81>

SSPTXD3

82

GPIO<82>

SSPRXD3

83

GPIO<83>

SSPSFRM3

84

GPIO<84>

SSPSCLK3

85

GPIO<85>

TL16C554_INTD

86

GPIO<86>

LDD<16> (LCD data pin 16)

87

GPIO<87>

LDD<17> (LCD data pin 17)

88

GPIO<88>

No Use.

nCS<4> (Active low chip select 4)

80

X-Hyper270-TKU Manual

89

GPIO<89>

ARDIO_PKT_INT

90

GPIO<90>

SD_WP

91

GPIO<91>

NFRNB

92

GPIO<92>

MSBS

93

GPIO<93>

CIF_DD6

94

GPIO<94>

CIF_DD5

95

GPIO<95>

CIF_DD4

96

GPIO<96>

RTC-SDA

97

GPIO<97>

SD_CD

98

GPIO<98>

CIF_DD0

99

GPIO<99>

RADIO_SFD

100

GPIO<100>

RADIO_SCLK

101

GPIO<101>

No Use.

102

GPIO<102>

nPCE1

103

GPIO<103>

CIF_DD3

104

GPIO<104>

CIF_DD2

105

GPIO<105>

CIF_DD1

106

GPIO<106>

CIF_DD9

107

GPIO<107>

CIF_DD8

108

GPIO<108>

CIF_DD7

109

GPIO<109>

MSSDIO

110

GPIO<110>

MMCCS0

111

GPIO<111>

MMCCS1

112

GPIO<112>

MMCMD

113

GPIO<113>

AC97_RESET_n (CS4299 ARST#)

114

GPIO<114>

USBC_INT

115

GPIO<115>

IDE_DREQ

116

GPIO<116>

IDE_DACK

117

GPIO<117>

SCL

118

GPIO<118>

SDA

119

GPIO<119>

USB Client Interrupt.

120

GPIO<120>

No Use.

81

X-Hyper270-TKU Manual
2.4. X-Hyper270-TKU Package contents

1.

Hardware specification
* Main Board

CPU
Memory

PXA270(520MHz)

BULVERDE(VF-BGA)

Norflash memory 32MByte

TE28F128J3C

SDRAM 128MByte

K4S561632-TC75

Serial x 1Ports

RS-232 LEVEL

Display

6.4" TFT LCD

CMOS Camera I/F


Internal

USB Host 1.1 1Port

Peripheral

USB Slave 1Port


PCMCIA Slot
CF Slot
MMC/SD Slot
Serial x 4Ports

Full Function UART 4 Port.

USB Host 2.0 2Port

TD242LP

Nand Flash

K9F1208U0M

64MByte

IDE I/F

mini IDE

External

Analog RGB(VGA Monitor)

THS8135

Peripheral

Ethernet(10)

CS8900A

Ethernet(10/100)

SMSC91C111

Audio(CS4299)

SPEAKER

1 Port
2Port.

Touch Panel
BATTERY

RTC4513
Extension
Conn.
CPLD

160 pin

2.54mm pitch

256 pin CPLD

XC2C256-7FT256C(BGA)

* IEB Board

82

X-Hyper270-TKU Manual

FPGA

EP1C6240PQFP

Cyclone (PQFP-240)

Programming Rom

EPC2

EP2(PLCC/SOCKET)

RF Device

CC2420

CC2420(QLP48)

DC Mocter Control

L298

DIP

Step Mocter Control

L297

DIP

ADC

ADC0804

DAC

DAC0800

7-Segment

7-Segment * 8

DOT Matrix

DOT Matrix

Charicter LCD

Charicter LCD

83

X-Hyper270-TKU Manual

Software Specification

2.

* Main Board

O/S

Device
Driver

Linux

Linux 2.6.11

CS8900

10Base-T 1Port

SMC91C111

10/100Base-T 2Port

TFT LCD

6.4 inches TFT LCD Interface

ADS7843

Toch Screen Controller

16C554

Full Function UART 4 Port

CS4209

AC97 CODEC Chip

MMC/SD/SDIO Controller
USB 1.1 Host(PXA Intenal)
USB 1.1 Slave(PXA Intenal)
TD242

USB 2.0 Host 2Port(TD242)

PCMCIA/CF

FileSystem

IrDA

FIR Mode

IDE

PIO Mode Driver

JFFS2(Rootfile system)
Ext2, ext3, yaffs, ramfs, nfs
Tiny X-Server
MatchBox

Windows manager

Mp3 Player
Application

Player

MPEG1,2,4, WMV1/2/3, DivX 5

Web Brower
USB Cam

OV511 CAM

Access Pointer

802.a, 802.b

* IEB Board

Device

DC Mocter Control

L298

Driver

Step Mocter Control

L297

ADC

ADC0804

DAC

DAC0800

7-Segment

8 ea

84

X-Hyper270-TKU Manual

Application

DOT Matrix

5*7

Charicter LCD

2 * 16

IEB Test Program

85

X-Hyper270-TKU Manual

3.

Box contents

Main Board

X-Hyper270-TKU Board

CD

Linux Sources and images


Document Files

Power

Free voltage AC Adapter Connector

Cables

Serial cable
JTAG cable
Ethernet cross cable
USB cable
FPGA cable

Document

X-Hyper270-TKU

Case

Aluminum case

86

X-Hyper270-TKU Manual
2.5. X-Hyper270-TKU Layout

87

X-Hyper270-TKU Manual

88

X-Hyper270-TKU Manual
2.6. X-Hyper270-TKU Connecting
X-Hyper270-TKU , TFT LCD CPU
LCD
.

X-Hyper270-TKU .

1.

JTAG Cable .

X-Hyper270-TKU 6 Host PC parallel

port JTAG Cable .

JTAG Cable

89

X-Hyper270-TKU Manual

2.

Serial Cable .

X-Hyper270-TKU

DEBUG1 Serial Host


) .

Serial Cable

90

PC Com1(or com2

X-Hyper270-TKU Manual

3. Ethernet cross cable .

X-Hyper270-TKU Ethernet port(LAN) Host PC

RJ45(Ethernet card) Cross LAN Cable . (X-Hyper270-TKU


Ethernet hub Direct LAN cable .)

Ethernet Cross Cable

91

X-Hyper270-TKU Manual
4.

92

X-Hyper270-TKU Manual

93

X-Hyper270-TKU Manual

3.
( redhat ) PC
.

3.1. Toolchain
X-HYPER270-TKU PC .

3.1.1.

Toolchain
Embedded System Host System .
Embedded System
. Toolchain .
X-Hyper270-TKU PXA27X MPU , desktop x86
compiler(ARM cross compiler) .

compiler GNU Tool .

GNU gcc compilers for C, C++

GNU binutil

GNU C Library

GNU C header

GNU Tool GNU Tool(x86) Compiler (ARM cross compiler)


compile ARM .

94

X-Hyper270-TKU Manual

Serial, Ethernet

Host system

Target Board

Cross compiler Host PC (bootloader, kernel, application)


X-Hyper270-TKU Download. Download Serial, Ethernet .
(Download 3.5 .)
3-1 Host

95

X-Hyper270-TKU Manual

3.1.2.

Toolchain
X-Hyper270-TKU Redhat 9 PC .

.

X-Hyper270-TKU Toolchain
.

binutils-2.15.tar.gz

gcc-3.4.3.tar.gz

glibc-2.3.2.tar.gz

glibc-linuxthreads-2.3.2.tar.gz

CD . Host PC
.
Host PC CD . . (
CD . CD
.
.)

Host PC .
/XHYPER270-TKU Host PC .
( .
. XHYPER270-TKU
.)

/XHYPER270-TKU .

96

X-Hyper270-TKU Manual

/mnt/cdrom cp /XHYPER270TKU

/XHYPER270-TKU .
(: CD
.)

/XHYPER270-TKU toolchain . ls iwmmxt1.0.0.tar.gz .


iwmmxt-1.0.0.tar.gz toolchain .
cp /opt iwmmxt-1.0.0.tar.gz ,/opt
.
( /opt .)

cd iwmmxt-1.0.0 .
bin ls

97

X-Hyper270-TKU Manual

.
.
.

98

X-Hyper270-TKU Manual

3.1.3.

Toolchain Test
toolchain test .
X86 gcc ARM
.
compile , .
.

gcc arm-linux-gcc .
vi hello.c .

Hello World .

. (vi
.)
gcc o hello hello.c
arm-linux-gcc o hello-arm hello.c .

99

X-Hyper270-TKU Manual

ls .
hello-arm, hello .

//X86

# gcc o hello test.c

# /opt/iwmmxt-1.0.0/bin/arm-linux-gcc -o hello-arm test.c


# file hello
# file hello-arm

//arm

//
//

file (hello, hello-arm) .

hello Intel 80386 hello-arm ARM

100

X-Hyper270-TKU Manual

. ./hello ./hello-arm .
( shell ./hello ./
.)
hello hello-arm . hello-arm
arm Host PC .
hello-arm Xscale .
(Xscale arm core arm .)

(hello-arm) X-Hyper270-TKU
Hello World .
(Download minicom .
Minicom 3.4 .
minicom minicom
Ctrl+A, Z, S zmodem hello-arm
( ).
hello-arm ( )
. minicom help
hello-arm .)

101

X-Hyper270-TKU Manual
3.2. JTAG

JTAG

3.2.1

X-Hyper270-TKU JTAG Bootloader flash


fusing . Flash fusing .
JTAG
. JTAG
.

3.2.2

JTAG
70 bed-of-nails" PCBs(print circuit boards)
board .( )
Board test
multi layer board

. 80 Joint European Test Access
Group a serial shift register around the boundary of
the device .

JTAG Boundary-Scan JTAG


Boundary Cell
Cell
.

102

X-Hyper270-TKU Manual
3.2.3

JTAG
JTAG (CPU)
.

JTAG .

.
( )

sell serial shift regisher(boundary scan register)


.

5 .
(TDI, TMS, TCK, nTRST, TDO)

Test .

Test .

Flash memory fusing .

103

X-Hyper270-TKU Manual
3.2.4

JTAG Building
JTAG .
( CD jflashmm
. JTAG .)
Makefile make JTAG .
(Make clean clean make
.)

Jflashmm .

jflashmm .

JTAG Bootloader Flash Memory Fusing


.

Bootloader boot
. /XHYPER270-TKU/images/ .

104

X-Hyper270-TKU Manual

JTAG images bootloader


fusing .

. , Fusing .
Verification successful! Fusing .
ON JTAG
. .

105

X-Hyper270-TKU Manual
3.3. Bootloader

3.3.1

Bootloader Building

Embedded System PC CMOS


BIOS . bootloader .
Bootloader H/W(MPU, SDRAM, FLASH, UART, GPIO) .

3.3.2

Bootloader

Bootloader .

Hardware
CPU clock, Memory timing, interrupt, UART, GPIO .

Linux Booting
Bootloader .
Kernel image SDRAM Kernel image .
Bootloader .

Image download
Kernel image filesystem SDRAM download .
Download Ethernet .
Ethernet tftp, bootp

Flash
Flash write, erase
Flash lock, unlock

106

X-Hyper270-TKU Manual
3.3.3

Bootloader compile

1. Bootloader Toolchain .
( 3.1 .)
2. /XHYPER270-TKU/

cd

XHYPER270-

TKU/bootloader/bboot-1.0.1 .

3. make boot .

107

X-Hyper270-TKU Manual

Compile , boot .
boot bootloader image.
3.2 jflashmm Flash Memory Fusing
.
bootloader Bootloader
JFlash Bootloader .
.

108

X-Hyper270-TKU Manual
3.3.4

Bootloader

jflashmm
Fusing .
jflashmm JTAG PC
Fusing .
./jflashmm pxa27x32.dat boot
Fusing .

./jflashmm pxa27x32.dat boot Fusing


.

109

X-Hyper270-TKU Manual

110

X-Hyper270-TKU Manual
3.4. Minicom

3.4.1

Minicom Setting

O/S . Windows Linux


. Windows Linux
minicom . Linux
.

Linux minicom . minicom


.

1.

minicom .
.

3-2 minicom

111

X-Hyper270-TKU Manual

2.

-s configuration .
configuration .

3-3 minicom

112

X-Hyper270-TKU Manual

3.

Serial port setup


setup .

3-4 minicom serial setup

3-4 a /dev/modem
. com port 1
Serial Device /dev/ttyS0 com port 2
/dev/ttyS1 ..

e 3-5 , ,
, . X-Hyper270-TKU -115200,
-8, -No, -1
. I .

113

X-Hyper270-TKU Manual

3-5 minicom comm. Parameters

f Hardware Flow Control Yes No .


3-6 .

3- 6 minicom

114

X-Hyper270-TKU Manual

Esc Key 3-3 .


Save setup as dfl .
Esc Key . minicom .

4.

Minicom X-Hyper270-TKU reset minicom


.
minicom setting check . ( reset
s/w LCD 4 RSTCPU .)

5.

Autobooting 3

115

X-Hyper270-TKU Manual
. hybus>
. minicom
X-Hyper270-TKU .

6.

3 Autobooting

hybus : bootloader for xhyper board


Copyright (C) 2002-2004 Hybus Co,. ltd.
support : http://www.hybus.net
flash : base=0x00000000, size=0x02000000
cs8900a chip is at 0x10000300
autoboot in progress, press any key to stop...
autoboot started.
loading kernel image from flash...
starting kernel ...
Uncompressing Linux.......................................................
Linux version 2.6.11 (root@HostPC) (gcc version 3.4.3) #5 Wed Nov 2 22:305
CPU: XScale-PXA270 [69054117] revision 7 (ARMv5TE)
CPU0: D VIVT undefined 5 cache
CPU0: I cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
CPU0: D cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
Machine: Hybus PXA270 Development Platform - Type TKU
Memory policy: ECC disabled, Data cache writeback
Run Mode clock: 208.00MHz (*16)
Turbo Mode clock: 520.00MHz (*2.5, active)
Memory clock: 104.00MHz (/2)
System bus clock: 104.00MHz
Built 1 zonelists
Kernel command line: console=ttyS0,115200 console=tty0 mem=128M root=1F02w
PID hash table entries: 1024 (order: 10, 16384 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 128MB = 128MB total
Memory: 126464KB available (2666K code, 446K data, 140K init)

116

X-Hyper270-TKU Manual

Mount-cache hash table entries: 512 (order: 0, 4096 bytes)


CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
Today is : 2165. 85. 85.

45:85:80

SCSI subsystem initialized


Linux Kernel Card Services
options:

none

usbcore: registered new driver hub


NET: Registered protocol family 23
NetWinder Floating Point Emulator V0.97 (double precision)
NTFS driver 2.1.22 [Flags: R/O].
JFFS2 version 2.2. (C) 2001-2003 Red Hat, Inc.
yaffs Nov

2 2005 21:46:26 Installing.

Initializing Cryptographic API


Console: switching to colour frame buffer device 80x30
ads7843 touch screen driver initialized
ttyS0 at MMIO 0x40100000 (irq = 22) is a FFUART
ttyS1 at MMIO 0x40200000 (irq = 21) is a BTUART
ttyS2 at MMIO 0x3ca00000 (irq = 46) is a EXT UART 0
ttyS3 at MMIO 0x3cb00000 (irq = 51) is a EXT UART 1
ttyS4 at MMIO 0x3cc00000 (irq = 54) is a EXT UART 2
ttyS5 at MMIO 0x3cd00000 (irq = 117) is a EXT UART 3
ttyS6 at MMIO 0x40700000 (irq = 20) is a STUART
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
PP_addr=0x1303
eth0: cs8900 rev K found at 0xf0000300 no EEPROM
cs89x0: No EEPROM, relying on command line....
cs89x0 media RJ-45, IRQ 59, programmed I/O, MAC 00:0b:f4:2f:9b:e5
smc91x_1.c: v1.1, sep 22 2004 by Nicolas Pitre <nico@cam.org>
eth1: SMC91C11xFD (rev 1) at 0xc8852300 IRQ 86 [nowait]
eth1: Ethernet addr: 00:cf:52:49:c3:01
smc91x_2.c: v1.1, sep 22 2004 by Nicolas Pitre <nico@cam.org>

117

X-Hyper270-TKU Manual

eth2: SMC91C11xFD (rev 1) at 0xc8854300 IRQ 85 [nowait]


eth2: Ethernet addr: 00:cf:52:49:c3:02
pxa_ir: irda driver inited
Linux video capture interface: v1.00
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=x
Probing flash0 at physical address 0x00000000 (32-bit bankwidth)
flash0: Found 2 x16 devices at 0x0 in 32-bit bank
Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
Using static partitions on flash0
Creating 3 MTD partitions on "flash0":
0x00000000-0x00040000 : "boot"
0x00040000-0x00200000 : "kernel"
0x00200000-0x02000000 : "rootfs"
Initialising XHyper255 NAND0,1 MTD devices.
NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3)
Scanning device for bad blocks
Creating 1 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x00000000-0x04000000 : "xhyper255_Nand_Flash_A_64K"
Initialising of First XHyper255 NAND MTD was successful.
pxa2xx_pcmcia_driver init
XHYPER PCMCIA INIT
pxa27x-ohci pxa27x-ohci: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.0:USB HID core driver
usbcore: registered new driver ov511
drivers/usb/media/ov511.c: v1.64 for Linux 2.5 : ov511 USB Camera Driver
pxa27x_udc: version 23-Sep-2004

118

X-Hyper270-TKU Manual

usb0: Ethernet Gadget, version: St Patrick's Day 2004


usb0: using pxa27x_udc, OUT Bulk-out-2 IN Bulk-in-1
usb0: MAC 22:1c:1b:10:5f:b8
mice: PS/2 mouse device common for all mice
ac97_codec: AC97 Audio codec, id: CRY52 (Cirrus Logic CS4299 rev D)
NET: Registered protocol family 2
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
NET: Registered protocol family 1
VFS: Mounted root (jffs2 filesystem).
Freeing init memory: 140K
yaffs: dev is 32505859 name is "(unavailable)"
yaffs: Attempting MTD mount on 31.3, "(unavailable)"
yaffs: yaffs_GutsInitialise()
yaffs: yaffs_GutsInitialise() done.

eth0: 10Base-T (RJ-45) has no cable


eth1: link down
eth2: link down

BusyBox v1.00 (2005.08.09-09:00+0000) Built-in shell (ash)


Enter 'help' for a list of built-in commands.
[root@xhyper ~]# Could not init font path element /usr/X11R6/lib/X11/font!
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
matchbox-desktop: loading /usr/lib/matchbox/desktop/tasks.so with args ( )
matchbox-desktop: loading /usr/lib/matchbox/desktop/dotdesktop.so with ar)
user_overides is (nil)
Fontconfig warning: line 245: invalid edit binding "same"

119

X-Hyper270-TKU Manual

Fontconfig warning: line 257: invalid edit binding "same"


mb-desktop-dotdesktop: failed to open /usr/local/share/applications
mb-desktop-dotdesktop: failed to open /root/.applications
mb-applet-menu-launcher: failed to open /usr/local/share/applications
mb-applet-menu-launcher: failed to open /root/.applications
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
mb-applet-menu-launcher: failed to open /usr/local/share/applications
mb-applet-menu-launcher: failed to open /root/.applications
[root@xhyper ~]#

7.

Booting LCD X .

LCD X , minicom Board


Host PC Cable .

, Board ,
.

LCD .
. ( version .)

120

X-Hyper270-TKU Manual

121

X-Hyper270-TKU Manual
3.5. Bootp tftp

3.5.1.

Bootp

1. bootp
?

Bootp tcp/ip ,
.

udp ip .

Tftp , Bootloader Kernel Image Host


PC Target . Bootp Target Tftp
Target IP Host Host PC
.

Bootp bootpd xinetd .

2. bootpd
bootpd xinetd .
xinetd rpm .

rpm -qa rpm list (q:question, a:all).


pipe grep , xinetd line
. ( man rpm . )

122

X-Hyper270-TKU Manual
i.

xinetd

xinetd xinetd .
( xinetd . xinetd
93 page bootp rpm .)

1.

xinetd rpm rpm Uvh xinetd-2.1.8.9pre15-2.i386.rpm


. (xinetd-2.1.8.9pre15-2.i386.rpm CD
. xinetd rpm .)

2.

/etc/rc.d/init.d/xinetd
.

3.

xinetd /etc/rc.d/init.d/xinetd start .

4.

xinetd .

xinetd ,

123

bootpd .

X-Hyper270-TKU Manual
ii.

bootp rpm

xinetd bootpd .
bootpd rpm .

Host PC bootp , .
Cd bootp rpm .
CD RPM .

rpm -ivh i install, h hash . #


. xinetd , xinetd
, rpm .
bootpd Upgrade -U . (U:upgrade).

rpm e . (e:erase)
-e rpm .

rpm -qa .
program .

bootp rpm /usr/sbin/bootpd .

124

X-Hyper270-TKU Manual

bootpd xinetd .
Xinetd bootpd /etc/xinetd.d/bootp
.

125

X-Hyper270-TKU Manual

/etc/xinetd.d/bootp .

.
bootp .

126

X-Hyper270-TKU Manual
iii.

bootptab

bootp Host PC bootp(bootpd)


/etc/bootptab client bootp reply packet
.
bootp /etc/bootptab client Mac Address
IP .

bootptab bootpd(the Internet Bootstrap Protocol Server)


. host ,
tag symbols .

hostname:tg=value:tg=value:tg=value:

hostname bootp client(or a "dummy entry") , tg


tag symbol. symbol value
. man bootptab .

bootptab
/etc/bootptab .

xhyper255 hostname
ht (Hardware Type) 10Mb Ethernet 1 (=Ethernet),

127

X-Hyper270-TKU Manual

ha (Hardware Address) Bootp Request Target(Bootp Client) Mac Address,


(Mac Address .
bootp Mac Address .)

ip Target IP Address,
sm (subnet mask) Host (Bootp Server) .

Host PC ip board ip .
(ex Host PC IP: 192.168.10.100, Board IP : 192.168.10.50)

Bootloader bootp , Mac


Address .

128

X-Hyper270-TKU Manual
iv.

Bootloader
bootp

xined
Host PC xinetd .
(/etc/rc.d/rc.sysinit/xinetd restart)

bootp Host PC
IP . (IP .)

61.74.264.2 ip .
tftp download .

bootp
hybus> setmyipaddr 192.168.1.3
hybus> setdestipaddr 192.168.1.216
bootp tftp .

129

X-Hyper270-TKU Manual
3.5.2.

tftp

1.

tftp ?

TFTP (Trivial File Transfer Protocol) ftp .

ip, udp .

Bootloader Kernel Image Host Target


.

2.

tftp rpm
tftp rpm . tftp rpm client server , tftp-server
rpm . CD
.

Host PC RPM , .
tftp .

tftp rpm tftp rpm .


rpm i tftp-server-0.17-9.i386.rpm
rpm qa | grep tftp .

130

X-Hyper270-TKU Manual
3.

/etc/xinet.d/tftp
tftp rpm /etc/xinetd.d/tftp .
bootp tftp xinetd .
Xinetd tftp /etc/xinetd.d/tftp
.
( /etc/xinetd.d/tftp
.)

server_args /tftpboot Bootloader Host PC


/tftpboot .
/tftpboot tftp server daemon root directory tftp
. directory subdirectory . tftp
kernel Image .
.

/tftpboot Host PC .
.

131

X-Hyper270-TKU Manual

/etc/xinetd.d/tftp (/tftpboot) zImage


copy.

CD Image
zImage( ) root() . /tftpboot
.

132

X-Hyper270-TKU Manual
4.

Bootloader
tftp image
Host PC bootpd tftpd .
bootpd, tftpd .

tftp zImage filesystem .


tftp zImage root Host PC /tftpboot
.

tftp zImage kernel .


tftp Host PC
.

133

X-Hyper270-TKU Manual

134

X-Hyper270-TKU Manual
3.5.3.

downloading

1.

downloading

bootp, tftp .
(zImage) SDRAM kernel (0xA0008000)
.

hybus> tftp zImage kernel

// SDRAM

hybus> flash kernel

// kernel

SDRAM
.
(SDRAM .
SDRAM

135

X-Hyper270-TKU Manual

.)

136

X-Hyper270-TKU Manual
2.

downloding

rootfs.img tftp .

SDRAM

hybus> tftp rootfs.img root

// SDRAM

hybus> flash root

// root

137

X-Hyper270-TKU Manual
3.

booting


boot
.

hybus : bootloader for xhyper board


Copyright (C) 2002-2004 Hybus Co,. ltd.
support : http://www.hybus.net
flash : base=0x00000000, size=0x02000000
cs8900a chip is at 0x10000300
autoboot in progress, press any key to stop...
autoboot started.
loading kernel image from flash...
starting kernel ...
Uncompressing Linux.......................................................
Linux version 2.6.11 (root@HostPC) (gcc version 3.4.3) #5 Wed Nov 2 22:305
CPU: XScale-PXA270 [69054117] revision 7 (ARMv5TE)
CPU0: D VIVT undefined 5 cache
CPU0: I cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
CPU0: D cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
Machine: Hybus PXA270 Development Platform - Type TKU
Memory policy: ECC disabled, Data cache writeback
Run Mode clock: 208.00MHz (*16)
Turbo Mode clock: 520.00MHz (*2.5, active)
Memory clock: 104.00MHz (/2)
System bus clock: 104.00MHz
Built 1 zonelists
Kernel command line: console=ttyS0,115200 console=tty0 mem=128M root=1F02w
PID hash table entries: 1024 (order: 10, 16384 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 128MB = 128MB total
Memory: 126464KB available (2666K code, 446K data, 140K init)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)

138

X-Hyper270-TKU Manual

CPU: Testing write buffer coherency: ok


NET: Registered protocol family 16
Today is : 2165. 85. 85.

45:85:80

SCSI subsystem initialized


Linux Kernel Card Services
options:

none

usbcore: registered new driver hub


NET: Registered protocol family 23
NetWinder Floating Point Emulator V0.97 (double precision)
NTFS driver 2.1.22 [Flags: R/O].
JFFS2 version 2.2. (C) 2001-2003 Red Hat, Inc.
yaffs Nov

2 2005 21:46:26 Installing.

Initializing Cryptographic API


Console: switching to colour frame buffer device 80x30
ads7843 touch screen driver initialized
ttyS0 at MMIO 0x40100000 (irq = 22) is a FFUART
ttyS1 at MMIO 0x40200000 (irq = 21) is a BTUART
ttyS2 at MMIO 0x3ca00000 (irq = 46) is a EXT UART 0
ttyS3 at MMIO 0x3cb00000 (irq = 51) is a EXT UART 1
ttyS4 at MMIO 0x3cc00000 (irq = 54) is a EXT UART 2
ttyS5 at MMIO 0x3cd00000 (irq = 117) is a EXT UART 3
ttyS6 at MMIO 0x40700000 (irq = 20) is a STUART
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
PP_addr=0x1303
eth0: cs8900 rev K found at 0xf0000300 no EEPROM
cs89x0: No EEPROM, relying on command line....
cs89x0 media RJ-45, IRQ 59, programmed I/O, MAC 00:0b:f4:2f:9b:e5
smc91x_1.c: v1.1, sep 22 2004 by Nicolas Pitre <nico@cam.org>
eth1: SMC91C11xFD (rev 1) at 0xc8852300 IRQ 86 [nowait]
eth1: Ethernet addr: 00:cf:52:49:c3:01
smc91x_2.c: v1.1, sep 22 2004 by Nicolas Pitre <nico@cam.org>
eth2: SMC91C11xFD (rev 1) at 0xc8854300 IRQ 85 [nowait]

139

X-Hyper270-TKU Manual

eth2: Ethernet addr: 00:cf:52:49:c3:02


pxa_ir: irda driver inited
Linux video capture interface: v1.00
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=x
Probing flash0 at physical address 0x00000000 (32-bit bankwidth)
flash0: Found 2 x16 devices at 0x0 in 32-bit bank
Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
Using static partitions on flash0
Creating 3 MTD partitions on "flash0":
0x00000000-0x00040000 : "boot"
0x00040000-0x00200000 : "kernel"
0x00200000-0x02000000 : "rootfs"
Initialising XHyper255 NAND0,1 MTD devices.
NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3)
Scanning device for bad blocks
Creating 1 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x00000000-0x04000000 : "xhyper255_Nand_Flash_A_64K"
Initialising of First XHyper255 NAND MTD was successful.
pxa2xx_pcmcia_driver init
XHYPER PCMCIA INIT
pxa27x-ohci pxa27x-ohci: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.0:USB HID core driver
usbcore: registered new driver ov511
drivers/usb/media/ov511.c: v1.64 for Linux 2.5 : ov511 USB Camera Driver
pxa27x_udc: version 23-Sep-2004
usb0: Ethernet Gadget, version: St Patrick's Day 2004

140

X-Hyper270-TKU Manual

usb0: using pxa27x_udc, OUT Bulk-out-2 IN Bulk-in-1


usb0: MAC 22:1c:1b:10:5f:b8
mice: PS/2 mouse device common for all mice
ac97_codec: AC97 Audio codec, id: CRY52 (Cirrus Logic CS4299 rev D)
NET: Registered protocol family 2
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
NET: Registered protocol family 1
VFS: Mounted root (jffs2 filesystem).
Freeing init memory: 140K
yaffs: dev is 32505859 name is "(unavailable)"
yaffs: Attempting MTD mount on 31.3, "(unavailable)"
yaffs: yaffs_GutsInitialise()
yaffs: yaffs_GutsInitialise() done.

eth0: 10Base-T (RJ-45) has no cable


eth1: link down
eth2: link down

BusyBox v1.00 (2005.08.09-09:00+0000) Built-in shell (ash)


Enter 'help' for a list of built-in commands.
[root@xhyper ~]# Could not init font path element /usr/X11R6/lib/X11/font!
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
matchbox-desktop: loading /usr/lib/matchbox/desktop/tasks.so with args ( )
matchbox-desktop: loading /usr/lib/matchbox/desktop/dotdesktop.so with ar)
user_overides is (nil)
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"

141

X-Hyper270-TKU Manual

mb-desktop-dotdesktop: failed to open /usr/local/share/applications


mb-desktop-dotdesktop: failed to open /root/.applications
mb-applet-menu-launcher: failed to open /usr/local/share/applications
mb-applet-menu-launcher: failed to open /root/.applications
Fontconfig warning: line 245: invalid edit binding "same"
Fontconfig warning: line 257: invalid edit binding "same"
mb-applet-menu-launcher: failed to open /usr/local/share/applications
mb-applet-menu-launcher: failed to open /root/.applications
[root@xhyper ~]#

Host PC .

142

X-Hyper270-TKU Manual

143

X-Hyper270-TKU Manual

4.

4.1. Bootloader
Bootloader .

4.1.1.

Bootloader command

.
.

help
Usage

Help

Description

Arguments

None

Example

hybus> Help
4-1. Bootloader command (help)

load
Usage

load [kernel/ramdisk]

Description

Flash image SDRAM . Autoboot


kernel image SDRAM
.

Arguments

Kernel flash kernel image SDRAM


ramdisk flash ramdisk SDRAM

Example

hybus> load kernel


4-2. Bootloader command (load)

bootp
Usage

Bootp

Description

bootp bootpd Host ip tftp


packet Host .

Arguments

None

Example

hybus> bootp

144

X-Hyper270-TKU Manual

4-3. Bootloader command (bootp)

tftp
Usage

tftp [destip] filename {address/loader/kernel/root/ramdisk}

Description

Ethernet Host SDRAM


.

Arguments

file Host file .


loader loader SDRAM
.
kernel kernel SDRAM
.
root root SDRAM
.
Ramdisk ramdisk SDRAM
.
Addr SDRAM

Example

hybus> tftp zImage kernel


4-4. Bootloader command (tftp)

flash
Usage

flash {loader/kernel/root/ramdisk}

Description

SDRAM flash ..

Arguments

loader SDRAM loader flash


.
Kernel SDRAM Kernel flash kernel
.
root SDRAM root flash root
.
ramdisk - SDRAM ramdisk flash ramdisk
.

Example

hybus> flash kernel


4-5. Bootloader command (flash)

145

X-Hyper270-TKU Manual

erase
Usage

erase {loader/kernel/ramdisk/root}

Description

Flash block .

Arguments

loader flash loader .


kernel flash kernel .
root flash root .
ramdisk flash ramdisk .

Example

hybus> erase kernel


4-6. Bootloader command (erase)

boot
Usage

Boot
boot [addr]

Description

SDRAM kernel .
arguments
.

Arguments

addr kernel image address

Example

hybus> boot
4-7. Bootloader command (boot)

set
Usage

set [name] [value]

Description

Flash ip, mac address, autoboot

Arguments

Name [myipaddr] [destipaddr] [myhaddr] [autoboot]


value [ip] [ip] [mac address] [load kernel; boot]

Example

//set

hybus> set

hybus> set myipaddr 192.168.100.X


hybus> set destipaddr 192.168.100.XX

//Host pc ip

hybus> set myhaddr 00:0E:6F:CE:59:21

// mac

hybus> set autoboot load kernel; boot


4-8. Bootloader command (set)

ping
Usage

// ip

ping

146

//

X-Hyper270-TKU Manual

Description

Ping Host PC .

Arguments

Ping host pc ip address

Example

ping 192.168.100.xx
4-9. Bootloader command(ping)

reboot
Usage

reboot

Description

Soft reset

Arguments

None

Example

reboot
4-10. Bootloader command(reboot)

147

X-Hyper270-TKU Manual

4.1.2.

Bootloader compile

1. Bootloader 3.1 Toolchain .


2.

/XHYPER270-TKU/

cd

XHYPER270-

TKU/bootloader/bboot-1.0.1 .
.
3. make boot .
boot bootloader image .
jflashmm , bootloader Board
. ( 3.2)

148

X-Hyper270-TKU Manual
4.2. Kernel Compile

.
.
( .)
.

. C
. X-Hyper270-TKU
.

CD X-Hyper270-TKU kenel Kernel


compile .

149

X-Hyper270-TKU Manual

4.2.1.

X-Hyper270-TKU Kernel Compile


CD X-Hyper270-TKU Kenel linux-2.6.11-h270-tku_v1.0
zImage .
X-Hyper270-TKU
menuconfig .

/Kernel]# cd linux-2.6.11-h270-tku_v1.0
/linux-2.6.11-h270-tku_v1.0]# make xhyper270tku_defconfig
/linux-2.6.11-h270-tku_v1.0]# make menuconfig
# make xhyper270tku_defconfig Kernel
X-Hyper270-TKU . .

make menuconfig kernel configuration .


.

150

X-Hyper270-TKU Manual
built-in(*) Module(M)
. .

. ,
.

[root@hybus linux-2.6.11-h270-tku_v1.0] make menuconfig

151

X-Hyper270-TKU Manual

152

X-Hyper270-TKU Manual
.
, Exit .
.

153

X-Hyper270-TKU Manual
# make zImage Kernel image .
[root@hybus linux-2.6.11-h270-tku_v1.0]# make zImage

,
. 10~20 .

compile arch/arm/boot zImage . zImage


. zImage .
tftp

154

X-Hyper270-TKU Manual

4.2.2.

X-Hyper270-TKU Kernel Configuration

4.2.1 .
.

X-Hyper270-TKU Kernel menuconfig .


3
. menuconfig
config xconfig
.

make menuconfig kernel .

menuconfig .
( )
.
"---->" .
<ESC> <Exit> .
h <Help> .
<Tab> .
Y , N , M .
[ ] < > * (), M (), () .
(M) "< >" .

155

X-Hyper270-TKU Manual
. .

156

X-Hyper270-TKU Manual

Code maturity level options

--->

[*] Promprt for development and/or incomplete Code/drivers


-
.

157

X-Hyper270-TKU Manual

General setup

--->

158

X-Hyper270-TKU Manual

159

X-Hyper270-TKU Manual

, .

160

X-Hyper270-TKU Manual

Loadable module support

--->

161

X-Hyper270-TKU Manual

162

X-Hyper270-TKU Manual
[*] Enable Loadable module Support
 version 1.2 .

.
,
.
,
. ,
, . [*] .
[*] Module unloading
[*] Forced module unloading

163

X-Hyper270-TKU Manual

System Type

--->

164

X-Hyper270-TKU Manual
System Type

--->

ARM system type (PXA2xx-based) --->


 Type X-HYPER PXA CPU . PXA2xx-based
PXA2xx-based .

165

X-Hyper270-TKU Manual

166

X-Hyper270-TKU Manual

System Type

--->

Intel PXA2xx Implementations

--- >

Hybus Xhyper270 Development Platform Type


TKU .

167

X-Hyper270-TKU Manual

168

X-Hyper270-TKU Manual

General setup

--->

169

X-Hyper270-TKU Manual

170

X-Hyper270-TKU Manual

General setup

--->

PCCARD (PCMCIA/CardBus) support

--->

PCMCIA Interface .

171

X-Hyper270-TKU Manual

172

X-Hyper270-TKU Manual
(console=ttyS0,115200 console=tty0 mem=128M root=1F02 rw) Default kernel command
string)
Kernel . Console , , Root filesystem
.

173

X-Hyper270-TKU Manual
Memory Technology Devices (MTD)

--->

, RAM,

..

174

X-Hyper270-TKU Manual
Memory Technology Devices (MTD)
RAM/ROM/Flash chip drivers

--->
--->

32-bit buswitch, 2-chip, Untel/Sharp flash chips

175

X-Hyper270-TKU Manual

Memory Technology Devices (MTD) --->


Mapping drivers for chip access

--->

176

X-Hyper270-TKU Manual
XHyper2xx Xscale eval board

177

X-Hyper270-TKU Manual
Networking support

--->

-> Network

178

X-Hyper270-TKU Manual
Network device support

--->

[*] Network device support


 SLIP PPP
.

179

X-Hyper270-TKU Manual
Network device support

--->

Networking options

--->

180

X-Hyper270-TKU Manual

<*> Unix domain sockets


[*] TCP/IP networking
 TCP/IP . TCP/IP
, Standalone
, TCP/IP . term XWindow TCP/IP
.
[*] IP: kerneL LeveL autoconfiguration:
[*] IP: DHCP Support
[*] IP: BOOTP Support
[*] IP: RARP Support
 DHCP BOOTP
. , "NFS
" [Y] .

181

X-Hyper270-TKU Manual
Network device support

--->

Ethernet (10 or 100Mbit)

--->

182

X-Hyper270-TKU Manual
Ethernet (10 or 100Mbit) --->
[*] Ethernet (10 or 100Mbit)
<*>

SMC 91C9x/91C1xxx 1 support

 X-HYPER270-TKU Ethernet 10/100 Base-T SMC91C111 .


<*>

SMC 91C9x/91C1xxx 2 support

 X-HYPER270-TKU Ethernet 10/100 Base-T SMC91C111 .


<*>

CS89x0 support

 X-HYPER270-TKU Ethernet 10 Base-T CS8900 .

183

X-Hyper270-TKU Manual
ATA/ATAPI/MFM/RLL support

--->

-> ATA/(E)IDE and ATAPI units

184

X-Hyper270-TKU Manual
<*>

X-Hyper27X IDE daughter board support


-> X-Hyper-TKU IDE Interface

185

X-Hyper270-TKU Manual
Character devices

--->

 , , ,
.

186

X-Hyper270-TKU Manual

[*] ADS7843 Touch Screen


 Ads7843
[*] Standard/generic (dumb) SeriaLSupport
 , .

187

X-Hyper270-TKU Manual
Character devices

--->

Serial drivers

--- >

188

X-Hyper270-TKU Manual

[*] PXA serial port support


[*]

Console on PXA serial port

 . (
.)
. [Y]
/dev/tty0
.
"console=ttyS1" . "man bootparam"
(lilo loadlin) ..
VGA ,
/dev/ttyS0 .
,
. ,
.

189

X-Hyper270-TKU Manual
File systems

--->

 .
.
.
.

190

X-Hyper270-TKU Manual
File systems

--->

YFFS support

--->

-> NAND Filesystem YAFFS


: http://www.aleph1.co.uk/yaffs/

191

X-Hyper270-TKU Manual

192

X-Hyper270-TKU Manual
<*> Second extended fs support
[*]

Ext2 extended attributes

<*> Ext3 journalling file system support


[*]

Ext3 extended attributes

-> Linux Ext2 Ext3 .

193

X-Hyper270-TKU Manual
File systems

--->

DOS/FAT/NT Filesystems --- >

<*> MSDOS fs support


<*> VFAT (Windows-95) fs support
<*> NTFS file system support

194

X-Hyper270-TKU Manual
File systems

--->

Network File Systems

--->

<*> NFS file system support

195

X-Hyper270-TKU Manual
 (SLIP, PLIP, PPP Ethernet ) ( )
Network File Sharing protocol NFS server
(mount) .
[*] Provide NFSv4 client support
[*] Root file System on NFS
 "IP: kernel level autoconfiguration"
. .

196

X-Hyper270-TKU Manual

Graphics support --- >

-> Linux ,

197

X-Hyper270-TKU Manual

[*] Support for frame buffer devices


<*> PXA LCD framebuffer support
[*] PXA LCD is not use blank

198

X-Hyper270-TKU Manual

Graphics support --- >


Console display driver support

<*>

--->

Framebuffer Console support

199

X-Hyper270-TKU Manual
Graphics support --- >
Logo configuration

--- >

[*] Bootup logo

200

X-Hyper270-TKU Manual
[*] Standard 224-color Linux logo

201

X-Hyper270-TKU Manual
Sound

--->

 .

202

X-Hyper270-TKU Manual

<*> Sound card support

203

X-Hyper270-TKU Manual
Sound

--->
Open Sound System --- >

204

X-Hyper270-TKU Manual

<*> Open Sound System (DEPRECATED)


<*> PXA Audio
<*> PXA AC97 audio support
 Intel PXA27x AC97 .

205

X-Hyper270-TKU Manual
USB support

--- >

-> USB (Host, Class Driver, Slave Driver)

206

X-Hyper270-TKU Manual

<*> Support for Host-side USB


[*] USB device filesystem
<*> OHCI HCD support
<*> USB Mass Storage support

207

X-Hyper270-TKU Manual
USB support

--- >

USB Gadget Support

--- >

-> PXA270 Internal USB Slave Ethernet Emulation

208

X-Hyper270-TKU Manual
MMC/SD Card support

--->

-> MMC, SD .

209

X-Hyper270-TKU Manual

-> PXA270 Internal MMC/SD .

210

X-Hyper270-TKU Manual

211

X-Hyper270-TKU Manual
4.3. File System
filesystem .
Ramdisk, Jffs, Jffs2, Cramfs, Ramfs

filesystem .

.
Root filesystem(/) library, util .

Root filesystem JFFS2 , x image


SDRAM , flash memory mount jffs2
.
Root filesystem Ramdisk
. .

212

X-Hyper270-TKU Manual

4.3.1.

1.

JFFS2(Journalling Flash File System)

JFFS2
JFFS2 MTD flash filesystem.
JFFS2 file , .

2.

Kernel Configuration

File systems

--->

Miscellaneous filesystems

--->

213

X-Hyper270-TKU Manual

214

X-Hyper270-TKU Manual

General Setup Default kernel command string console=ttyS0,115200 console=tty0


mem=128M root=1F02 rw .

(/) 1f(31), 02(3)


"console=ttyS0,115200 .

JFFS2 MTD Driver .

215

X-Hyper270-TKU Manual

Main Menu Memory Technology Devices (MTD) --

216

X-Hyper270-TKU Manual

Memory Technology Device (MTD) support


- MTD .
MTD partitioning support
- .
Direct char device access to MTD devices
- mtd .
Caching block device access to MTD device
- mtd .

217

X-Hyper270-TKU Manual

Memory Technology Devices (MTD) -


RAM/ROM/Flash chip drivers

--->

RAM/ROM/Flash chip drivers .


.
32-bit buswitch, 2-chip, Untel/Sharp flash chips .

218

X-Hyper270-TKU Manual

Memory Technology Devices (MTD) -


Mapping drivers for chip access

--->

CFI Flash device mapped on Hybus XHyper2xx Xscale eval board .


.
drivers/mtd/maps/xhyper270tku.c .

219

X-Hyper270-TKU Manual

drivers/mtd/maps/xhyper270.c.

menuconfig mtd JFFS2 .

220

X-Hyper270-TKU Manual
JFFS2 Image

3.

# rm rf rootfs.img
# ./mkjffs2

// .
// mkjffs2 rootfs.img

mkjffs2 rootfs.img jffs2


.
.

#!/bin/sh

srcpath=${1:-"rootfs"}
imgname=${2:-"rootfs.img"}

test ! -x ./mkfs.jffs2 && { echo "mkfs.jffs2 is not exists."; exit 1; }


test ! -d $srcpath && { echo "$srcpath is not exists."; exit 1; }
./mkfs.jffs2 -e 0x40000 -d $srcpath -p -o $imgname
exit 0

221

X-Hyper270-TKU Manual

rootfs.img bootloader , flash write


. rootfs.img ram , flash
flash write .

222

X-Hyper270-TKU Manual

223

X-Hyper270-TKU Manual

5.

.
.
.
.


. .

X-Hyper270-TKU Board
.

224

X-Hyper270-TKU Manual
5.1. Linux Device Driver

5.1.1

Linux Device Driver

(device) (Hard Disk), (Floppy Disk),


(Printer), (Terminal), (Scanner), (Network Adaptor),
PCMCIA, Touch Screen, LCD , Audio
. ,
.
OS ,
.
.

(Device)
(Interface)

(Kernel)


.
(File Operation) .
(Major Number) (Minor Number) .

225

X-Hyper270-TKU Manual

(Character Device),
(Block Device) (Network Device) .
. ,
. Raw
Terminal, Console, Keyboard, Sound card,
Scanner, Printer, Serial/Parallel, Mouse, Joystick .
Random Access .
(Block) , . Hard Disk,
Floppy Disk, RAM Disk, CD-ROM .

. Ethernet, PPP, Slip, ATM, ISDN NIC(Network Interface
Card) .

226

X-Hyper270-TKU Manual

5.1.2

Linux Device Driver

5-1 ,
.
.

Application area
Kernel area


:

VFS : VFS
.
: , , IPC , ,
,

Hardware

227

X-Hyper270-TKU Manual

(Kernel Module)
,
.
. , ,
.


. , ,
. <linux/module.h> ,
char kernel_version[ ] . insmod
.
.

228

X-Hyper270-TKU Manual

<linux/module.h>
#define __NO_VERSION__ .
insmod f(force)
.
,
.

(Kernel Symbol)
(Symbol) .
(symbol export) ,
(symbol import) .
(symbol table) , /proc/ksyms
.

,
/proc/ksyms . (symbol linking)
static linking dynamic linking .
register_symtab()
.
export . printk()
printk() export,
printk() printk_xxxxxx
export . .

#ifdef CONFIG_MODVERSIONS

229

X-Hyper270-TKU Manual

#define MODVERSIONS
#include <linux/modversions.h>
#endif

(Kernel) (Module Program)


main() , (loading)
(unloading) int init_module(void)[ 0,
] void cleanup_module( ) .
,

. 5-2
.

Module
insmod

Kernel

init_module( )

register_capability( )

capabilities[]

printk( )
.....

rmmod

cleanup_module( )

230

unregister_capability( )

X-Hyper270-TKU Manual


.
Hello, World ,
Goodbye .

[Hello.c]
/*
Hello, World Module Program Example
*/
#include <linux/kernel.h>
#include<linux/module.h>

int init_module(void) { printk(<1>Hello,

World\n);

return 0; }

void cleanup_module(void) { printk( <1>Goodbye\n); }

Makefile make
. Makefile vi .
Makefile .

[Makefile]
CC

:= /opt/iwmmxt-1.0.0/bin/arm-linux-gcc

KDIR

:= /XHYPER270-TKU/kernel/linux-2.6.11-h270-tku

TEST_TARGET = hello

231

X-Hyper270-TKU Manual

TEST_OBJS

= hello.o

TEST_SRCS

= hello.c

obj-m

:= hello.o

build: $(TEST_TARGET)
make -C $(KDIR) SUBDIRS=`pwd` modules

$(TEST_TARGET) : $(TEST_OBJS)
$(CC) -o $@ $(TEST_OBJS)
clean:
rm -rf *.o *.ko
rm -f $(TEST_TARGET)

Makefile make .
make clean. hello.ko .
hellok.o insmod
.
insmod

hello.ko

lsmod
.
lsmod

rmmod . hello.ko
hello .
rmmod

hello

232

X-Hyper270-TKU Manual

tail

/var/log/messages

tail

-f

/* */

/var/log/messages

/* */

(use count)
(process)
. (access)
.
(busy)
.

(character device) .
/proc/modules ,
-1
.

(macro) .

MOD_INC_USE_COUNT
.

MOD_DEC_USE_COUNT
.

MOD_IN_USE
COUNT = 0 TRUE .

233

X-Hyper270-TKU Manual

Linux Device Driver

5.1.3

char device driver, block device driver, network device driver


.
.

1. (character
device driver)

(Character Device)
(buffer cache) . ,
. Terminal, Console, Touch
Screen, Keyboard, Sound Card, Scanner, Printer, Serial/Parallel, Mouse, Joystick
.

(Major Number) (Minor Number)


( ) (access) ,
/dev . ,
. mknod
, .
mknod , (Major Number),
(Minor Number) .
.
. ,
.
(Major Number) . Documentation/devices.txt

234

X-Hyper270-TKU Manual

(Major Number) .
/dev/hda1 , b . c
. 127 (major number) , 1
(minor number) . 0 255
. 8bit .

$ mknod
$ ls al

/dev/hda1

127

/dev/hda1

$ brw-rw----

root

disk

Mar

25

12:00

/dev/hda1


. (Major Number) (Minor Number)
,
inode i_rdev . inode
. inode  i_rdev
.

Kdev_t(/linux/kdev_t.h)

(Major Number) (Minor Number) .

(Macro) kdev_t .

MAJOR( ) : kdev_t (Major Number)

MINOR( ) : kdev_t (Minor Number)

MKDEV(int ma, int mi) : kdev_t .

235

X-Hyper270-TKU Manual

inode .

struct inode {
struct

list_head

i_hash;

struct

list_head

i_list;

struct

list_head

i_dentry;

struct

list_head

i_dirty_buffers;

unsigned

long

i_ino, i_version, i_dnotify_mask;

atomic_t

i_count;

kdev_t

i_rdev;

umode_t

i_mode;

uid_t

i_uid;

gid_t

i_gid;

.
time_t
unsigned

i_atime;
long

i_blksize, i_blocks;

struct inode_operations

*i_op;

struct file_operations

*i_fop;

236

X-Hyper270-TKU Manual


(Device Driver)
(Major Number) .
/linux/fs.h
.
int

register_chrdev(unsigned

int

major,

const

char

*name,

struct

file_operations *fops)

major (Major Number)


, 0 .
name /proc/devices . 53 /proc/devices . fops
.
0
, .

237

X-Hyper270-TKU Manual

5-3

/proc/devices

.
cleanup_module
.
int unregister_chrdev(unsigned int major,

const char *name)

(Major Number)
(Deviced Name).
.
EINVAL .

238

X-Hyper270-TKU Manual

(File Operations)
(file interface)
. register_chrdev()
, file_operations .
File_operations /linux/fs.h .
file .

[struct file_struct]
struct file{
struct list_head

f_list;

struct dentry

f_dentry;

struct vfsmount

*f_vfsmnt;

struct file_operations

atomic_t f_count;

/* */

f_op;

/* */

/* */

/*access mode, nonblocking, create, append */


unsigned int

f_flags;

mode_t

f_mode;

loff_t

f_pos;

unsigned long

f_reada,f_ramax,f_raend,f_ralen,f_rawin;

struct fown_struct
unsigned int

/* */
/* */

f_owner;
f_uid,f_gid;

239

/* */

X-Hyper270-TKU Manual

int

f_error;

unsigned long

f_version;

void

*private_data; /* */

};

[struct file_operations]

loff_t

(*lseek) (struct file *, loff_t,

int);

- (read), (write) .

ssize_t

(*read)

(struct file *, char *, size_t, loff_t *);

- .

ssize_t

(*write)

(struct file *, const

char *, size_t, loff_t *);

- .

int

(*readdir)

(struct file *, void *, filldir_t);

- (,
NULL ), .

unsigned int (*poll) (struct file *, struct poll_table_struct *);

- .

int

(*ioctl) (struct inode *, struct file *, unsigned int, unsigned long);

- . ,
.

int

(*mmap) (struct file *, struct vm_area_struct *);

- .

int

(*open) (struct inode *, struct file *);

- .

240

X-Hyper270-TKU Manual

int

(*release) (struct inode *, struct file *);

- .

int

(*fsync) (struct file *, struct dentry *);

- flush . ,
.

int
-

(*fasync) (int,

struct file *,

(Asynchronous

int);
notification)

FLAG

FASYNC flag .

int (*check_media_change) (kdev_t

dev);

- Media
.

int (*revalidate) (kdev_t

dev);

- (buffer cache)
.

int (*lock) (struct file *, int, struct file_lock *);


- lock .

241

X-Hyper270-TKU Manual

File_operations
. NULL .
struct

file_operations device_fops = {

NULL,

/* seek*/

device_read,

/*read*/

device_write,

/*write*/

NULL,

/*readdir*/

NULL,

/*poll*/

NULL,

/*ioctl*/

NULL,

/*mmap*/

device_open,

/*open*/

NULL,

/*flush*/

device_release,

/*release*/

};

242

X-Hyper270-TKU Manual
2. (block
device driver)

(Block Device) (buffer cache) Random Access


. (Block) ,
. Hard Disk, Floppy Disk, RAM Disk, CDROM .

, (file operations) .
(Major Number) ,

. (buffer cache)
. read/write
read/write read/write
blk_dev_struct{ } .
read/write reguest_fn( ) . ,
, (sector) ,

243

X-Hyper270-TKU Manual



(Major Number) .
.
Int register_blkdev(unsigned int major, const char *name, struct file_operations
*fops)
Int unregister_blkdev(unsigned int major, const char *name)

major (Major Number), 0
. name
. fops .
0
, .
5-4
.

Module
insmod

Kernel

init_module( )

register_blkdev )

blkdev[]

Request( )

block_read( )

fops

blkdevs[]
printk( )
.....

rmmod

cleanup_module( )

244

unregister_blkdev( )

X-Hyper270-TKU Manual

(File Operation)

.
. read/write/fsync ,
block_read(), block_write(), block_fsync() . open,
release . ioctl
.
ioctl ,
. BLKGETSIZE,
flush BLKFLSBUF, (read-ahead)
BLKRAGET, BLKRASET,
FLAG BLKROGET, BLKROSET,
BLKRRPART,
HDIO_GETGEO .
check_media_change (media)
.

1, 0 . Revalidate

File_operations .
NULL .

struct

file_operations blkdevice_fops = {

245

X-Hyper270-TKU Manual

NULL,

/* seek*/

block_read,

/*read*/

block_write,

/*write*/

NULL,

/*readdir*/

NULL,

/*poll*/

NULL,

/*ioctl*/

NULL,

/*mmap*/

block_open,

/*open*/

NULL,

/*flush*/

block_release,

/*release*/

};

246
246

X-Hyper270-TKU Manual
3. (Network device driver)
(Network Device)
. Ethernet, PPP, Slip, ATM,
ISDN NIC(Network Interface Card) .
.
.
5-5 .

Application

BSD socket Interface

INET socket Interface

TCP

UDP

IP

Network Device Driver

Ethernet

247

KENREL

X-Hyper270-TKU Manual

Socket
.
. Network
. Network file system .
file file descriptor
file operation . init_module() open()
socket() bind() .

Association
Host Host
.
, , , ,
.

248

X-Hyper270-TKU Manual

File System Socket


File System file file descriptor .
Socket connection (or association) .
. 16byte . (2),
(2), (4), (0) . File system file descriptor
, TCP/IP port IP .
File

System

Socket

connection file descriptor .


file . socket bind .

249

X-Hyper270-TKU Manual
5.2. Frame Buffer (TFT LCD)

PXA27x Processor LCD Controller

Passive(DSTN), active(TFT) support

Pixel Format 2,4,8,16,18 and 24bits per pixel in RGB support

Support for display sizes up to 800 x 600 pixels.

LCD Signal Descriptions

FrameBuffer
.
X-Hyper270-TKU SDRAM FrameBuffer .
LCD Controller DMA , FrameBuffer LCD .

X-Hyper270-TKU Display TFT-LCD 16bit(640 X 480).


PXA27x DataSheet .
PXA270 drivers/video/pxafb.c.

Device Driver source

drivers/video/fbcon.c

Low level operations for display

drivers/video/fbmem.c

Initialize frame buffer

250

X-Hyper270-TKU Manual

drivers/video/pxafb.c

PXA270 LCD controller Freame buffer driver

include/linux/linux_logo.h

linux booting logo for X-Hyper270-TKU

arch/arm/mach-pxa/xhyper270tku.c Initialize TFT LCD Timing

Device Node

/dev/fb0

frame buffer Node

Kernel configuration
Graphics support

--->

[*] Support for frame buffer devices


<*> PXA LCD framebuffer support
[*] PXA LCD is not use blank
Console display driver support

--->

[*] Framebuffer Console support


Logo configuration

--->

[*] Bootup logo


[*]

Standard 224-color Linux logo

LCD Controller Control Register Value


arch/arm/mach-pxa/xhyper270tku.c

static struct pxafb_mach_info lg_philips_lb064v02 __initdata = {

.pixclock

= 54000,

.xres

= 640,

.yres

= 480,

.bpp

= 16,

.hsync_len

= 60,

.left_margin

= 84,

.right_margin

= 16,

.vsync_len

= 2,

.upper_margin

= 33,

.lower_margin

= 10,

.sync

= FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,

.lccr0

= LCCR0_LDDALT | LCCR0_OUC | LCCR0_PAS,

251

X-Hyper270-TKU Manual

.lccr3

= LCCR3_PCP,

.pxafb_backlight_power = pxafb_backlight_power,
.pxafb_lcd_power = pxafb_lcd_power,

};

Platform device setup


arch/arm/mach-pxa/generic.c
static struct resource pxafb_resources[] = {
[0] = {
.start

= 0x44000000,

.end

= 0x4400ffff,

.flags

= IORESOURCE_MEM,

},
[1] = {
.start

= IRQ_LCD,

.end
.flags

= IRQ_LCD,
= IORESOURCE_IRQ,

},
};

static u64 fb_dma_mask = ~(u64)0;

static struct platform_device pxafb_device = {


.name
.id

= "pxa2xx-fb",
= -1,

.dev

={
.platform_data
.dma_mask

= &pxa_fb_info,
= &fb_dma_mask,

.coherent_dma_mask = 0xffffffff,
},
.num_resources
.resource

= ARRAY_SIZE(pxafb_resources),

= pxafb_resources,

};

252

X-Hyper270-TKU Manual

VGA OUTPUT
X-Hyper270-TKU VGA .
LCD RSTCPU VGA TFT LCD
, VGA OUT .
TFT LCD VGA (, ) .

drivers/video/pxafb.c
static irqreturn_t port_change(int irq, void *dev_id, struct pt_regs *regs)
{
//

printk("VGA PORT CHANGE!!! : ");

if(port_mask == 0 ){
//

printk("TFT LCD MODE -> VGA PORT\n");


DEVICE_PORT_CLEAR(BACKLIGHT_PWR);
LCCR3 = 0x04400003;

port_mask = 1;
udelay(100);

} else {
//

printk("VGA PORT -> TFT LCD MODE\n");


LCCR3 = 0x04400004;
DEVICE_PORT_SET(BACKLIGHT_PWR);

port_mask = 0;
udelay(100);
}

return IRQ_HANDLED;
}

: http://www.tldp.org/HOWTO/Framebuffer-HOWTO.html
Intel PXA27X Applications Processor Developers Manual

253

X-Hyper270-TKU Manual
5.3. Ethernet
5.3.1 CS8900
Cirrus Logic 10 Base-T Ethernet chip CS8900A Device Driver.
X-Hyper270-TKU Static Chip Select 4(0x10000000) .
Memory map arch/arm/mach-pxa/xhyper270tku.c .

Vitual Memory Setting


{ 0xF0000000, 0x04000000, 0x00100000, MT_DEVICE }

Device Driver source


drivers/net/cs89x0.c

cs8900 ethernet driver source

drivers/net/cs89x0.h

cs8900 ethernet driver header

Kernel configuration
Networking support

--->

Ethernet (10 or 100Mbit)

--->

[*] Ethernet (10 or 100Mbit)


<*>

CS890x0 support

6 1 CS8900A block diagram


: CIRRUS LOGIC CS8900A Product Data Sheet

254

X-Hyper270-TKU Manual

5.3.2 LAN91C111
SMSC 10/100 Base-T Ethernet chip LAN91C111 Device Driver.
X-Hyper270-TKU 0x14000000, 0x14100000 .

Device Driver source


drivers/net/smc91x_1.c

LAN91C111 first ethernet driver source

drivers/net/smc91x_2.c

LAN91C111 second ethernet driver source

drivers/net/smc91x.h

LAN91C111 ethernet driver header

Kernel configuration
Networking support

--->

Ethernet (10 or 100Mbit)

--->

[*] Ethernet (10 or 100Mbit)

<*>

SMC 91C9x/91C1xxx 1 support

<*>

SMC 91C9x/91C1xxx 2 support

Platform device setup


arch/arm/mach-pxa/ xhyper270tku.c
static struct resource smc91x_1_resources[] = {
[0] = {
.start

= (0x14000000 + 0x300),

.end
.flags

= (0x14000000 + 0xfffff),
= IORESOURCE_MEM,

},
[1] = {
.start

= IRQ_GPIO(54),

.end
.flags

= IRQ_GPIO(54),
= IORESOURCE_IRQ,

}
};

static struct platform_device smc91x_1_device = {


.name
.id

= "smc91x_1",
= 0,

.num_resources

= ARRAY_SIZE(smc91x_1_resources),

255

X-Hyper270-TKU Manual

.resource

= smc91x_1_resources,

};

static struct resource smc91x_2_resources[] = {


[0] = {
.start

= (0x14100000 + 0x300),

.end
.flags

= (0x14100000 + 0xfffff),
= IORESOURCE_MEM,

},
[1] = {
.start

= IRQ_GPIO(53),

.end
.flags

= IRQ_GPIO(53),
= IORESOURCE_IRQ,

}
};

static struct platform_device smc91x_2_device = {


.name
.id

= "smc91x_2",
= 0,

.num_resources
.resource

= ARRAY_SIZE(smc91x_2_resources),

= smc91x_2_resources,

};

256

X-Hyper270-TKU Manual

LAN91C111 block diagram

257

X-Hyper270-TKU Manual
5.4. Sound
PXA270 AC97 Controller Unit(ACUNIT) .
ACUNIT audio controller link(AC-link) . digital audio, modem, Mic-in,
register control, status information serial interface .
Audio Codec CIRRUS LOGIC CS4299A .

External interface to Codecs

4-1. External interface to codecs

Device Driver source


sound/oss/ac97_codec.c

AC97 mixer/modem module

sound/oss/ pxa-ac97.c

AC97 interface for Xhyper27x

sound/oss/ pxa-audio.c

audio interface for Xhyper27x

Device Node
/dev/dsp

audio input, audio output

/dev/mixer

control of volume, sampling rates, bass, treble, etc

258

X-Hyper270-TKU Manual

Kernel configuration
Sound

--->

<*>

Sound card support


Open Sound System-
<*> Open Sound System (DEPRECATED)
<*> PXA Audio
<*>

PXA AC97 audio support

Mixer Setting
Mixer Setting smixer .
Setting /etc/smixer.conf . /etc/ .
/etc]$ vi smixer.conf
# smixer input file
#
# These values are for my Soundblaster Live!, you will need to modify
# which lines are used or not
#

# set volumes
vol Vol

60

#vol

Bass

50

#vol

Trebl

50

#vol

Synth

vol Pcm

88

vol Spkr

vol Line

vol Mic

100

vol CD

#vol

Mix

#vol

Pcm2

#vol

Rec

vol IGain
#vol

0
0
100

OGain

vol Line1
#vol

0
0

Line2

100

259

X-Hyper270-TKU Manual

#vol

Line3

#vol

Digital1

#vol

Digital2

100

#vol

Digital3

vol PhoneIn

100

#vol

PhoneOut

#vol

Video

#vol

Radio

#vol

Monitor

# set recording source


recsrc

Mic

Test
Record :
[root@Xhyper ~]# cd /tmp
[root@Xhyper /tmp]# cat /dev/dsp > test.wav

Play :
[root@Xhyper /tmp]# cat test.wav > /dev/dsp

Loop back:
[root@Xhyper ~]# cat /dev/dsp > /dev/dsp
Loop back 1
.

260

X-Hyper270-TKU Manual

X Gqmpeg Player test .

cs4299 block diagram


: Intel PXA27X Applications Processor Developers Manual

261

X-Hyper270-TKU Manual
5.5. UARTs
PXA270 UARTs .
Full Function UART(FFUART), Bluetooth UART(BTUART), Standard UART(STUART).
16C554A 4Port .
X-Hyper270-TKU console FFUART . BTUART console
, STUART IrDA .
4Port Full Function UART .

UART Define
Port

Signals

Level

UART Name

Part Name

COM1(ttyS0)

Rx/Tx

RS232

FFUART

DEBUG1

COM2(ttyS1)

Rx/Tx

RS232

BTUART

Not used

COM3(ttyS2)

Full Function

TTL

EXT A

CON2

COM4(ttyS3)

Full Function

TTL

EXT B

CON3

COM5(ttyS4)

Full Function

RS232

EXT C

J8

COM6(ttyS5)

Full Function

RS232

EXT D

J9

COM7(ttyS6)

Rx/Tx

TTL

STUART

IrDA

Device Node
/dev/ttyS0

FFUART(main serial console)

/dev/ttyS1

BTUART (extra serial)

/dev/ttyS2

16C554 A

/dev/ttyS3

16C554 B

/dev/ttyS4

16C554 C

/dev/ttyS5

16C554 D

/dev/ttyS6

IrDA

Device Driver source


drivers/serial/pxa.c

PXA27x Serial Function Device Driver

drivers/serial/serial_core.c Serial Core Device Driver

Kernel configuration

262

X-Hyper270-TKU Manual

Character devices

--->

Serial drivers

--->

[*] PXA serial port support


[*]

Console on PXA serial port

Platform device setup


arch/arm/mach-pxa/generic.c
static struct platform_device ffuart_device = {
.name
.id

= "pxa2xx-uart",
= 0,

};
static struct platform_device btuart_device = {
.name
.id

= "pxa2xx-uart",
= 1,

};
static struct platform_device ext_uartA_device = {
.name
.id

= "pxa2xx-uart",
= 2,

};
static struct platform_device ext_uartB_device = {
.name
.id

= "pxa2xx-uart",
= 3,

};
static struct platform_device ext_uartC_device = {
.name
.id

= "pxa2xx-uart",
= 4,

};
static struct platform_device ext_uartD_device = {
.name
.id

= "pxa2xx-uart",
= 5,

};
static struct platform_device stuart_device = {
.name
.id

= "pxa2xx-uart",
= 6,

};

263

X-Hyper270-TKU Manual
5.6. USB Slave
PXA27x USB Slave , USB-Ethernet
.
Test redhat 9.0 . Host PC
. .

Kernel configuration
USB support

--->

USB Gadget Support

--->

<*> Support for USB Gadgets


USB Peripheral Controller (PXA27x)
<*>

--->

USB Gadget Drivers (Ethernet Gadget)

--->

Kernel Boot Message


pxa27x_udc: version 23-Sep-2004
usb0: Ethernet Gadget, version: St Patrick's Day 2004
usb0: using pxa27x_udc, OUT Bulk-out-2 IN Bulk-in-1
usb0: MAC 42:9a:b4:e3:98:66

USB Network Setting


Host PC IP(usb0) :10.0.0.1, X-HYPER270-TKU IP(usb0) : 10.0.0.2

Target Board
[root@xhyper ~]# ifconfig usb0 10.0.0.2
USB Cable Host PC
.

Host PC
#tail f /var/log/message
Apr

8 15:43:01 kernel: usb.c: registered new driver usbnet

Apr

8 16:24:58 kernel: usb0: register usbnet 001/005, Linux Device

Apr

8 16:24:59 kernel: NET4: Linux IPX 0.46 for NET4.0

Apr

8 16:24:59 kernel: IPX Portions Copyright (c) 1995 Caldera,

Apr

8 16:24:59 kernel: NET4: AppleTalk 0.18a for Linux NET4.0

. .

264

X-Hyper270-TKU Manual

ifconfig a usb0 .


Host PC
[root@xhyper ~]# ifconfig usb0 10.0.0.1
IP Target Board .

265

X-Hyper270-TKU Manual
5.7. PCMCIA & CF
PXA27X 16-bit PC CARD interface .
X-Hyper270-TKU socket 0 PCMCIA slot, socket 1 CF slot .
Socket PSKTSEL .

X-Hyper270-TKU Prism II chipset Host driver ide type cf card


.

SOCKET0

VS1,2
Control Signal

PXA27X

SOCKET1
CD GPIO IRQ
IREQ-GPIO IRQ

SOCKET0,1
RESET

VCC5-EN,VCC3-EN
EN0,EN1

DC5V

PCMCIA

VCC-3.3V,5V

DC3.3
VCC-3.3V

266

CF

X-Hyper270-TKU Manual

16Bit PC CARD Memory Map

Device Driver source


drivers/pcmcia/pxa/pxa2xx_xhyper.c
Socket services , PCMCIA socket socket
, , .. Card services
interface .
drivers/pcmcia/cistpl.c, rsrc,mg.c, bulkmem.c cs.c.
Card services , Socket services
memory, interrupt system resource .
Driver services interface .
drivers/pcmcia/ds.c
Driver services , Client drivers cardmgr Card
manager interface .

Kernel configuration
General setup

--->

PCCARD (PCMCIA/CardBus) support

--->

<*> PCCard (PCMCIA/CardBus) support

267

X-Hyper270-TKU Manual

<*>

16-bit PCMCIA support

<*> PXA2xx support

Initiallize
X-Hyper270-TKU device , system init
cardmgr . , ,
.
[root@xhyper /root]$ /etc/rc.d/pcmcia restart

// restart

Tools of configuring and Monitoring PCMCIA devices


- cardmgr
PCMCIA sockets . ,
client driver .

- /var/run/stab
cardmgr socket .
Test Socket 0 : Wiress LAN CARD Socket 1 : CF Memory CARD 32M
.
[root@xhyper /root]$ cat /var/run/stab
Socket 0: Z-Com XI300 11Mb/s WLAN Card
0

network hostap_cs

wlan0

hda

Socket 1: ATA/IDE Fixed Disk


1

ide

ide_cs

- cardctl
socket .
[root@xhyper /root]$ cardctl config
Socket 0:
Vcc 5.0V

Vpp1 0.0V

Vpp2 0.0V

interface type is "memory and I/O"


irq 24 [exclusive] [level]
function 0:
config base 0x03e0

268

X-Hyper270-TKU Manual

option 0x41
io 0xf6000000-0xf600003f [16bit]
Socket 1:
Vcc 3.3V

Vpp1 0.0V

Vpp2 0.0V

interface type is "memory and I/O"


irq 38 [exclusive] [level]
function 0:
config base 0x0200
option 0x41 status 0x00 pin 0x00 copy 0x00
io 0xf7000000-0xf700000f [auto]

[root@xhyper /root]$ cardctl ident


Socket 0:
product info: "RFTNC", "RF-TNC1100N", ""
manfid: 0xd601, 0x0002
function: 6 (network)
Socket 1:
product info: "SunDisk", "SDP", "5/3 0.6"
manfid: 0x0045, 0x0401
function: 4 (fixed disk)

: Intel PXA27X Applications Processor Developers Manual

PCMCIA

#/etc/pcmcia .
# /etc/pcmcia cardmgr .
# cardmgr /sbin/cardmgr .

269

X-Hyper270-TKU Manual
5.8. USB Host
PXA270 USB 1.1 Host Controller .

USB Features

USB Rev. 1.1 compatible

Low-speed and full-speed supports.

Open Host Controller Interface(OHCI) Rev 1.0a compatible.

Sgnal Descriptions

Device Driver source

drivers/usb/host/ohci-hcd.c

OHCI Hosr Contoller Driver

drivers/usb/host/ohci-pxa27x.c

PXA270 OHCI Function Driver

Kernel configuration(USB Host Controller)


USB support

--->

<*> Support for Host-side USB


[*]

USB device filesystem

<*> OHCI HCD support

USB Device TEST


USB Mass Stroage Class
USB Mass Storage SCSI device emulation. SCSI support
enable .

SCSI device support


[*]
<*>

--->

legacy /proc/scsi/ support


SCSI disk support

USB support

--->

270

X-Hyper270-TKU Manual

<*> USB Mass Storage support

Kernel , Kernel .


[root@Xhyper /root]# fdisk /dev/sda

[root@Xhyper /root]# mkdir /mnt/usb


[root@Xhyper /root]# mount /dev/sda1 /mnt/usb

USB Keyboard
USB Keyboard .

Input device support

--->

[*] Keyboards
USB support

--->

<*> USB Human Interface Device (full HID) support


[*]

HID input layer support

Kernel , Kernel .

USB Mouse
USB Mouse .

Input device support

--->

(1024) Horizontal screen resolution


(768) Vertical screen resolution
USB support

--->

<*> USB Human Interface Device (full HID) support


[*]

HID input layer support

Kernel , Kernel .

USB Printer

271

X-Hyper270-TKU Manual

USB Printer .

USB support

--->

<*> USB Printer support


Kernel , Kernel .
printer lpd util .
text .
, Ghost script lpd .

272

X-Hyper270-TKU Manual
5.9. MMC/SD/SDIO
MMC/SD/SDIO

Controller

memory card

serial

interface

Controller MMC SPI mode 2 . MMC controller


memory DMA access FIFO .

MMC (MMC Protocol) System Interaction

SD/SDIO (SD or SDIO Protocol) System Interaction

Device Driver source


drivers/mmc/mmc.c

MMC subsystem core implementation

drivers/mmc/ pxamci.c

Driver for PXA27X MMC controller

drivers/mmc/mmc_block.c

Driver for the block device on the MMC

Device Node
/dev/mmc

MMC node

/dev/mmc1

MMC partition 1

273

X-Hyper270-TKU Manual

/dev/mmc2

MMC partition 2

/dev/mmc3

MMC partition 3

Kernel configuration
MMC/SD Card support

--->

<*> MMC support

<*>

MMC block device driver

<*>

Intel PXA255 Multimedia Card Interface support

MMC Partition Setting


[root@xhyper /root]# fdisk /dev/mmc
The number of cylinders for this disk is set to 31360.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help):p


Disk /dev/mmcda: 1 heads, 1 sectors, 31360 cylinders
Units = cylinders of 1 * 512 bytes

Device Boot

Start

End

31360

/dev/mmc1

Blocks

Id

15679+

System
83

Linux

/* . */
Command (m for help): d
Partition number (1-4): 1
Command (m for help): p

Disk /dev/mmcda: 1 heads, 1 sectors, 31360 cylinders


Units = cylinders of 1 * 512 bytes

Device Boot

Start

End

274

Blocks

Id

System

X-Hyper270-TKU Manual

Command (m for help):

/* . */
Command (m for help): n
Command action
e

extended

primary partition (1-4)

p
Partition number (1-4): 1
First cylinder (2-31360, default 2):
Using default value 2
Last cylinder or +size or +sizeM or +sizeK (2-31360, default 31360):
Using default value 31360

Command (m for help): p

Disk /dev/mmcda: 1 heads, 1 sectors, 31360 cylinders


Units = cylinders of 1 * 512 bytes

Device Boot

Start

/dev/mmcda1

End
2

31360

Blocks

Id

15679+

System
83 Linux

Command (m for help):

/* .
Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: If you have created or modified any DOS 6.x


partitions, please see the fdisk manual page for additional
information.
Syncing disks.
[root@xhyper /root]#

275

X-Hyper270-TKU Manual

MMC Format
[root@xhyper /root]# mkfs.ext2 /dev/mmc1
mke2fs 1.19, 13-Jul-2000 for EXT2 FS 0.5b, 95/08/09
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
3920 inodes, 15679 blocks
783 blocks (4.99%) reserved for the super user
First data block=1
2 block groups
8192 blocks per group, 8192 fragments per group
1960 inodes per group
Superblock backups stored on blocks:
8193
Writing inode tables: done
Writing superblocks and filesystem accounting information:
[root@xhyper /root]#

MMC Mount
[root@xhyper /root]# mount /dev/mmc1 /media/mmc/
[root@xhyper /root]# df
Filesystem

1k-blocks

Used Available Use% Mounted on

/dev/root

30976

20788

/dev/mmc1

15180

13

[root@xhyper /root]# mount


/dev/root on / type jffs2 (rw)
ramfs on /etc/tmp type ramfs (rw)
ramfs on /etc/var type ramfs (rw)
ramfs on /root type ramfs (rw)
/proc on /proc type proc (rw)
none on /dev/pts type devpts (rw)
/dev/mmc1 on /media/mmc type ext2 (rw)

276

10188 68% /
14384

1% /media/mmc

X-Hyper270-TKU Manual
5.10. RTC
X-Hyper270-TKU RTC RTC4513 .
RTC4513 Deivce Driver , Kernel Time
.

source
arch/arm/mach-pxa/rtc4513.c
arch/arm/mach-pxa/xhyper270tku.c

Test
Linux data .
[root@xhyper ~]# date 2005.11.8-18:14:00
Tue Nov

8 18:14:00 UTC 2005

[root@xhyper ~]#
.

277

X-Hyper270-TKU Manual
5.11. Touch(ADS7843)
X-Hyper270-TKU Touch Controller ADS7843 .
ADS7843 12bit .

Device Node
/dev/ts

touch node

Device Driver source


drivers/char/ads7843.c

ADS7843 Device Driver Source

drivers/char/ads7843_ts.h

ADS7843 Device Driver Header

Kernel configuration
Character devices

--->

[*] ADS7843 Touch Screen

ADS7843 Block Diagram

278

X-Hyper270-TKU Manual
5.12. Dot Matrix
X-Hyper270-TKU FPGA DOT MATRIX
.
DOT Matrix LED LED
. LED . LED
LED .
. LED
. 30%
.

Device Driver source

CD/fpga_device/dot/dot.c

#define DOT_DEVMAJOR

232

#define DOT_DEVNAME

"dot"

#define DOT_RESET

#define FPGA_DOT_COL_1

(0x11800000)

#define FPGA_DOT_COL_2

(0x11900000)

#define FPGA_DOT_COL_3

(0x11A00000)

#define FPGA_DOT_COL_4

(0x11B00000)

#define FPGA_DOT_COL_5

(0x11C00000)

279

X-Hyper270-TKU Manual

static void *mem_dot_col1, *mem_dot_col2, *mem_dot_col3, *mem_dot_col4, *mem_dot_col5;

#define DOT_COL_1

(*((volatile unsigned char *)(mem_dot_col1)))

#define DOT_COL_2

(*((volatile unsigned char *)(mem_dot_col2)))

#define DOT_COL_3

(*((volatile unsigned char *)(mem_dot_col3)))

#define DOT_COL_4

(*((volatile unsigned char *)(mem_dot_col4)))

#define DOT_COL_5

(*((volatile unsigned char *)(mem_dot_col5)))

static int dot_reset(void){

GPCR(DOT_RESET) |= GPIO_bit(DOT_RESET);
GPSR(DOT_RESET) |= GPIO_bit(DOT_RESET);
return 0;
}
/************************************************************************
** ssize_t dot_write (struct file *file, const char *buf, size_t count, loff_t *f_pos)

**

** Application dot matrix Column dot matrix

**

** data dot matrix led

**

************************************************************************/
static ssize_t dot_write (struct file *file, const char *buf, size_t count, loff_t *f_pos){

unsigned char dot_data[5]={0};


int col_number;
copy_from_user(dot_data, buf, count);
for ( col_number =0 ; col_number < 6 ; col_number++){
switch( col_number){
case 1 : DOT_COL_1 = dot_data[0]; break;
case 2 : DOT_COL_2 = dot_data[1]; break;
case 3 : DOT_COL_3 = dot_data[2]; break;
case 4 : DOT_COL_4 = dot_data[3]; break;
case 5 : DOT_COL_5 = dot_data[4]; break;
}
}
return 0;

280

X-Hyper270-TKU Manual

make .

Makefile /opt/iwmmxt-1.0.0/bin/arm-linux-gcc

X-Hyper270-TKU

Device Node X-Hyper270-TKU .


mknod .

insmod .

X-Hyper270-TKU

fusing DOT
rmmod .

281

X-Hyper270-TKU Manual

DOT MATRIX count .

282

X-Hyper270-TKU Manual
5.13. FND

X-Hyper270-TKU FPGA 8 FND .


FND 7 .

7-segment LED A-G 7 LED DP(Decimal Point) LED 1


. LED (segment : ,
) .

Device Driver source

CD/fpga_device/fnd/fnd.c
#define FND_MAJOR

231

#define FND_NAME

"fnd"

#define MAX_FND

#define FPGA_FND_CS0

(0x11000000)

#define FPGA_FND_CS1

(0x11100000)

#define FPGA_FND_CS2

(0x11200000)

#define FPGA_FND_CS3

(0x11300000)

#define FPGA_FND_CS4

(0x11400000)

#define FPGA_FND_CS5

(0x11500000)

#define FPGA_FND_CS6

(0x11600000)

#define FPGA_FND_CS7

(0x11700000)

void *mem_fnd_cs0, *mem_fnd_cs1, *mem_fnd_cs2, *mem_fnd_cs3, *mem_fnd_cs4, *mem_fnd_cs5,

283

X-Hyper270-TKU Manual

*mem_fnd_cs6, *mem_fnd_cs7;

#define FND_CS0

(*((volatile unsigned char *)(mem_fnd_cs0)))

#define FND_CS1

(*((volatile unsigned char *)(mem_fnd_cs1)))

#define FND_CS2

(*((volatile unsigned char *)(mem_fnd_cs2)))

#define FND_CS3

(*((volatile unsigned char *)(mem_fnd_cs3)))

#define FND_CS4

(*((volatile unsigned char *)(mem_fnd_cs4)))

#define FND_CS5

(*((volatile unsigned char *)(mem_fnd_cs5)))

#define FND_CS6

(*((volatile unsigned char *)(mem_fnd_cs6)))

#define FND_CS7

(*((volatile unsigned char *)(mem_fnd_cs7)))

static unsigned char disp[8] = {0};


static int n = 0 ;

static int fnd_clear(void)


{
FND_CS0 = 0x00;
FND_CS1 = 0x00;
FND_CS2 = 0x00;
FND_CS3 = 0x00;
FND_CS4 = 0x00;
FND_CS5 = 0x00;
FND_CS6 = 0x00;
FND_CS7 = 0x00;
return 0;
}
/*****************************************************************************
** static ssize_t fnd_write (struct file *file, const char *buf, size_t count, loff_t *f_pos)

**

** Application FND 8 FND

**

** FND

**

******************************************************************************/
static ssize_t fnd_write (struct file *filp, const char *buf, size_t count, loff_t *f_pos)
{
int i;

284

X-Hyper270-TKU Manual

i=1;
copy_from_user(disp, buf, count);
for(i =1; i <= MAX_FND; i++){
switch(i)
{
case 1:

FND_CS7 = disp[0]; break;

case 2:

FND_CS6 = disp[1]; break;

case 3:

FND_CS5 = disp[2]; break;

case 4:

FND_CS4 = disp[3]; break;

case 5:

FND_CS3 = disp[4]; break;

case 6:

FND_CS2 = disp[5]; break;

case 7:

FND_CS1 = disp[6]; break;

case 8:

FND_CS0 = disp[7]; break;

default :

break;

}
}
return 0;
}

make .
Makefile /opt/iwmmxt-1.0.0/bin/arm-linux-gcc
. X-Hyper270-TKU

285

X-Hyper270-TKU Manual

Device Node X-Hyper270-TKU .


mknod .

insmod .

X-Hyper270-TKU

fusing FND
rmmod .

286

X-Hyper270-TKU Manual

8 FND count .

287

X-Hyper270-TKU Manual
5.14. Char LCD
X-Hyper270-TKU HD44780 LCD .
- : 16 / 2
- : 57
- LCD Controller : HD44780
-

+5[V]

DC5V

DC5V

VR?

R107
0

C161
104C

U38

15
2

LCD module

100KR

LCD_D[7..0]

LCD_D0
LCD_D1
LCD_D2
LCD_D3
LCD_D4
LCD_D5
LCD_D6
LCD_D7

7
8
9
10
11
12
13
14
6
5
4

DB0
DB1
DB2
DB3
DB4
DB5
DB6
DB7
LCD_EN
R/W#
LCD_RS

CHAR LCD

16
1

K
GND

nLCD_CS
LCD_RW
LCD_RS

VCON

LCD_MODULE

A
VDD

R111
10K

CharLCD 16x2

Vss

0V

VDD

+5V

VL

RS

LCD
H/L

L: ( )
H:

R/W

H:

H/L

(LCD -> CPU)

L: (LCD <- CPU)

288

X-Hyper270-TKU Manual

DB0

DB1

H/L

DB2

H/L

DB3

H/L

10

DB4

H/L

11

DB5

H/L

12

DB6

H/L

13

DB7

H/L

14

DB8

H/L

enable

LCD

Device Driver source

CD/fpga_device/clcd/clcd.c
#define CLCD_MAJOR

238

#define CLCD_NAME

"clcd"

#define FPGA_CLCD_WR_ADD

(0x12300000)

#define FPGA_CLCD_RS_ADD

(0x12380000)

static void *mem_base_wr, *mem_base_rs;


static unsigned long mem_addr_wr, mem_addr_rs, mem_len;

/************************************************************************
** static void lcd_init(void)

**

** char LCD

**

************************************************************************/
static void lcd_init(void) //LCD
{
*((volatile unsigned char *)(mem_base_wr)) = 0x38; // 8 2
mdelay(100);
*((volatile unsigned char *)(mem_base_wr)) = 0x38;
mdelay(100);
*((volatile unsigned char *)(mem_base_wr)) = 0x38;
mdelay(100);

289

X-Hyper270-TKU Manual

*((volatile unsigned char *)(mem_base_wr)) = 0x0e; //


mdelay(100);
*((volatile unsigned char *)(mem_base_wr)) = 0x02; //
mdelay(100);
*((volatile unsigned char *)(mem_base_wr)) = 0x01; //
mdelay(100);
}
/********************************************************************************
** static void string_out(char *str)

**

** Application Char LCD

**

*********************************************************************************/
static void string_out(char *str)
{
char *s;
int i=0;
printk("clcd.o: %s\n", str);
lcd_init();
for (s=str; *s; s++){
*((volatile unsigned char *)(mem_base_rs)) = *s;

if(i == 15) {
udelay(100);
//CLCD_CMD_ADDR = 0xC0;
*((volatile unsigned char *)(mem_base_wr)) = 0xC0;
}

udelay(100);
i++;
}
}
/********************************************************************************
** Ioremap() FPGA Char LCD **
*********************************************************************************/
static int clcd_init(void)
{

290

X-Hyper270-TKU Manual

mem_addr_wr =

FPGA_CLCD_WR_ADD;

mem_addr_rs = FPGA_CLCD_RS_ADD;
mem_len

= 0x1000;

mem_base_wr = ioremap_nocache ( mem_addr_wr, mem_len);


if( !mem_base_wr) {
printk("Error mapping memery");
return -EBUSY;
}

mem_base_rs = ioremap_nocache ( mem_addr_rs, mem_len);


if( !mem_base_rs) {
printk("Error mapping OHCI memery");
return -EBUSY;
..
}

make .
CD

Makefile

/opt/iwmmxt-1.0.0/bin/arm-linux-gcc .

291

X-Hyper270-TKU

X-Hyper270-TKU Manual

Device Node X-Hyper270-TKU .


mknod

insmod .

X-Hyper270-TKU

fusing Char LCD


rmmod
.

character lcd Hello Mr.Lee .

292

X-Hyper270-TKU Manual
5.15. Key Scan
X-Hyper270-TKU 4 x 4 Key Matrix .
1 16 16 push button

KEY
Matrix
KEY OUT0
KEY OUT1
KEY OUT2
KEY OUT3
KEYIN0
KEYIN1
KEYIN2

KEYIN0

1
KB1

3
TACT

1
KB2

3
TACT

1
KB3

3
TACT

1
KB4

3
TACT

KEYIN1

1
KB5

3
TACT

1
KB6

3
TACT

1
KB7

3
TACT

1
KB8

3
TACT

KEYIN2

1
KB9

3
TACT

1
KB10

3
TACT

1
KB11

3
TACT

1
KB12

3
TACT

KEYIN3

1
KB13

3
TACT

1
KB14

3
TACT

1
KB15

3
TACT

1
KB16

3
TACT

R115
R116
R117
R118

10K
10K
10K
10K

KEYIN3

KEYOUT0
KEYOUT1
KEYOUT2
KEYOUT3

4 4
.
(4 x 4 = 16) 16 .
16 .
16 .
4 KEYOUT0, KEYOUT1, KEYOUT2, KEYOUT3
1 set 0 .
KEYOUT0 1 set KEYIN0 ~ KEYIN3 KEY4, KEY8, KEY12, EY16
KEY .
KEYOUT1 ~ KEYOUT3 KEYIN0 ~ KEYIN3

293

X-Hyper270-TKU Manual

KEY .
KEYOUT0 ~ KEYOUT3 1 set .
(KEYOUT0 1 set KEYOUT1 ~ KEYOUT3 0 .)
KEYIN . KEYIN 0
KEYOUT .
( KEYOUT0 , KEYOUT1 , KEYOUT2 , KEYOUT3 1 set. )
KEYIN KEYOUT
.
KEYOUT0 KEYIN KEY13 ~ KEY16
. KEYIN0 KEY13
KEYIN1 KEY14 KEYIN2 KEY15
KEYIN3 KEY16 .

Device Driver source

CD/fpga_device/key/key.c
void Print_Key(int out , int in){
switch(out){
case 1:
if(in == 1)

{ dbg("key 4 is pressed\n");

key_data = 4;}

else if(in == 2){ dbg("key 8 is pressed\n");

key_data = 8;}

else if(in == 4){ dbg("key 12 is pressed\n");

key_data = 12;}

else if(in == 8){ dbg("key 16 is pressed\n");

key_data = 16;}

break;
case 2:
if(in == 1)

{ dbg("key 3 is pressed\n");

key_data = 3;}

else if(in == 2){ dbg("key 7 is pressed\n");

key_data = 7;}

else if(in == 4){ dbg("key 11 is pressed\n");

key_data = 11;}

else if(in == 8){ dbg("key 15 is pressed\n");

key_data = 15;}

break;

294

X-Hyper270-TKU Manual

case 3:
if(in == 1)

{ dbg("key 2 is pressed\n");

key_data = 2;}

else if(in == 2){ dbg("key 6 is pressed\n");

key_data = 6;}

else if(in == 4){ dbg("key 10 is pressed\n");

key_data = 10;}

else if(in == 8){ dbg("key 14 is pressed\n");

key_data = 14;}

break;
case 4:
if(in == 1)

{ dbg("key 1 is pressed\n");

key_data = 1;}

else if(in == 2){ dbg("key 5 is pressed\n");

key_data = 5;}

else if(in == 4){ dbg("key 9 is pressed\n");

key_data = 9;}

else if(in == 8){ dbg("key 13 is pressed\n");

key_data = 13;}

break;
}
}

void key_timer_function(unsigned long ptr)


{
int in, out;

KEYOUT = ((1 << (ptr-1)) & (0x0f));


out = ptr;
in = KEYIN;
if(in != 0)
{
Print_Key(out, in);
mdelay(200);
}
void init_add_timer(void)
{
++n;
if( n > SCAN_NUM)
n = 1;

init_timer(&key_timer_str); // timer

pointer

295

X-Hyper270-TKU Manual

key_timer_str.function =&key_timer_function ;
key_timer_str.data = (unsigned long)n;
key_timer_str.expires = jiffies + (HZ/100);

add_timer(&key_timer_str);
}

void remove_timer(void)
{
del_timer(&key_timer_str);
}

/********************************************************************************
** Ioremap() FPGA Char LCD **
*********************************************************************************/
static int key_init(void)
{

mem_addr_out = FPGA_KEY_OUT;
mem_addr_in

= FPGA_KEY_IN;

mem_len = 0x1000;
mem_key_out = ioremap_nocache (mem_addr_out, mem_len);
if(!mem_key_out) {
printk(" Error mapping key_out memory\n");
return -EBUSY;
}

mem_key_in = ioremap_nocache (mem_addr_out, mem_len);


if(!mem_key_in) {
printk(" Error mapping key_in memory\n");
return -EBUSY;
}
.

296

X-Hyper270-TKU Manual

make .
CD

Makefile

/opt/iwmmxt-1.0.0/bin/arm-linux-gcc .

X-Hyper270-TKU

Device Node X-Hyper270-TKU .


mknod

insmod .
fusing

X-Hyper270-TKU

KEY

rmmod .

297

X-Hyper270-TKU Manual

key_test
.

298

X-Hyper270-TKU Manual
5.16. Stepper Motor
X-Hyper270-TKU Steper Motor Device (Input electrical pulse) L297
.
Step , , ,
OA, FA .

L297/L297D

L297 STEPPER MOTOR CONTROLLERS .


HALF STEP MODE 4 .
( .)
L297 200 250mA
2000 4000pps .

299

X-Hyper270-TKU Manual

CW/CCW . HIGH
CW() LOW CCW( ) .

ENABLE L297 . ENABLE HIGH


L297 . ( HIGH .)

CLK Clock . .
. (

.)

Device Driver source

CD/fpga_device/st_motor/st_motor.c
/************************************************************************
** PXA255 OS Timer Interrupt MOTOR

**

************************************************************************/
#define OSTIMER_IRQ

IRQ_OST1

request_irq( OSTIMER_IRQ, MOTOR_InterruptHandler, SA_INTERRUPT, "OST", NULL);

/*************************************************************************
** MOTOR_InterruptHandler motor_speed
** .

**
**

************************************************************************/
void MOTOR_ReSetting(int motor_speed)
{

300

X-Hyper270-TKU Manual

OSTIMER_ON;
OSMR1 = OSCR + Usec_Clk*motor_speed;
}
void MOTOR_InterruptHandler(int irq, void *dev_id, struct pt_regs *regs)
{

/**********************************************************************************
**static int st_motor_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg)**
** Application DC .

**

***********************************************************************************/

static int st_motor_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg)
{
switch (cmd) {
case MOTOR_Forward : {
OSTIMER_OFF;
MOTOR_Init();
Motor_Direction( Forward );
MOTOR_ReSetting(motor_speed);

// 100us (default clk) = 10Hz

break;
}
case MOTOR_Reverse : {
OSTIMER_OFF;
MOTOR_Init();
Motor_Direction( Reverse );
MOTOR_ReSetting(motor_speed);

// 100us (default clk) = 10Hz

break;
}
case MOTOR_SpeedUp : {
if(motor_speed > 150){
motor_speed -= 50;

// Speed Up

printk("speed up %d\n", motor_speed);


}
break;
}

301

X-Hyper270-TKU Manual

case MOTOR_SpeedDown : {
motor_speed += 50;

// Speed Down

break;
}
case MOTOR_STOP : {
Motor_Stop();
break;
}
default:
return 0;
}
return 0;
}

make .
CD Makefile
/opt/iwmmxt-1.0.0/bin/arm-linux-gcc . X-Hyper270-TKU
.

Device Node X-Hyper270-TKU .


mknod

302

X-Hyper270-TKU Manual

insmod .

X-Hyper270-TKU

fusing Step Motor


rmmod
.

./st_motor_test .

1 , 2 , 3 ,4 ,
0 .

303

X-Hyper270-TKU Manual

304

X-Hyper270-TKU Manual
5.17. DC Motor
DC
. DC Motor
. , ,
.
X-Hyper270-TKU DC Motor L298P( PowerSO20 package)
.

Device Driver source

CD/fpga_device/dc_motor/dc_motor.c
/************************************************************************

305

X-Hyper270-TKU Manual

** static void Dc_Moter_Clock(void)

**

** DC application

**

** ioctl .

**

************************************************************************/
static void Dc_Moter_Clock(void)
{
if ( motor_mask == 0 ){

// LEFT Motor

if(mask == 1 ){

// forward

MOTOR_ClearBit(1);
MOTOR_SetBit(0);
MOTOR_SetBit(4);
} else if (mask == 2){

// reverse

MOTOR_ClearBit(0);
MOTOR_SetBit(1);
MOTOR_SetBit(4);
} else {
MOTOR_ClearBit(0);

// stop

MOTOR_ClearBit(1);
MOTOR_ClearBit(4)

// reset low

}
} else {

// RIGHT Motor
if(mask == 1 ){

// forward

MOTOR_ClearBit(3);
MOTOR_SetBit(2);
MOTOR_SetBit(5);
} else if (mask == 2){

// reverse

MOTOR_ClearBit(2);
MOTOR_SetBit(3);
MOTOR_SetBit(5);
} else {
MOTOR_ClearBit(3);

// stop

MOTOR_ClearBit(2);
MOTOR_ClearBit(5)
}
}

306

// reset low

X-Hyper270-TKU Manual

}
/*************************************************************************************
** static int data_motor_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg **
** DC application
** DC Motor

**

**

*************************************************************************************/

static int data_motor_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg)
{
switch (cmd) {
case _IOCTL_LEFT_FORWARD : {
OSTIMER_OFF;
motor_mask = 0;
mask = 1;
Dc_Moter_Clock();
DC_MOTOR_ReSetting(motor_speed);

// 100us (default clk) = 10Hz

break;
}
case _IOCTL_LEFT_REVERSE : {
OSTIMER_OFF;
motor_mask = 0;
mask = 2;
Dc_Moter_Clock();
DC_MOTOR_ReSetting(motor_speed);

// 100us (default clk) = 10Hz

break;
}

case _IOCTL_LEFT_STOP : {
OSTIMER_OFF;
motor_mask = 0;
mask = 0;
Dc_Moter_Clock();
DC_MOTOR_ReSetting(motor_speed);
break;
}

307

// 100us (default clk) = 10Hz

X-Hyper270-TKU Manual

case _IOCTL_RIGHT_FORWORD : {
OSTIMER_OFF;
motor_mask = 1;
mask = 1;
Dc_Moter_Clock();
DC_MOTOR_ReSetting(motor_speed);

// 100us (default clk) = 10Hz

break;
}
case _IOCTL_RIGHT_REVERSE : {
OSTIMER_OFF;
motor_mask = 1;
mask = 2;
Dc_Moter_Clock();
//enable_irq(OSTIMER_IRQ);
DC_MOTOR_ReSetting(motor_speed);

// 100us (default clk) = 10Hz

break;
}

case _IOCTL_RIGHT_STOP : {
OSTIMER_OFF;
motor_mask = 1;
mask = 0;
Dc_Moter_Clock();
// enable_irq(OSTIMER_IRQ);
DC_MOTOR_ReSetting(motor_speed);

// 100us (default clk) = 10Hz

break;
}
default:
return 0;
}
return 0;
}

make .
CD Makefile

308

X-Hyper270-TKU Manual

/opt/iwmmxt-1.0.0/bin/arm-linux-gcc . X-Hyper270-TKU
.

Device Node X-Hyper270-TKU .


mknod .

insmod .

X-Hyper270-TKU

fusing Dc Motor
rmmod
.

309

X-Hyper270-TKU Manual

Test

./dc_motor_test .
1 , 2 , 4
, 5 . 3 6 .
0 .

310

X-Hyper270-TKU Manual
5.18. LED
X-Hyper270-TKU 8 LED FPGA
8 LED .

<LED >

Device Driver source

CD/fpga_device/led/led.c.
/***********************************************************************************
** FPGA LED 0x12400000

**

**

**

ioremap LED data LED

** .

**

***********************************************************************************/

#define LED_DEVMAJOR

239

#define LED_DEVNAME

"led"

#define LED_PHYS 0x12400000

/***********************************************************************************
** Application LED LED LED data .

**

***********************************************************************************/
static ssize_t led_write (struct file *file, const char *buf, size_t count, loff_t *f_pos){

unsigned char led_data;

get_user(led_data, (unsigned char *)buf);

311

X-Hyper270-TKU Manual

(*((volatile unsigned char *)(mem_base))) = led_data;


return 0;
}

/**********************************************************************************
**static int st_motor_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg)**
** Application DC .

**

***********************************************************************************/
static int __init led_init(void){

..

mem_addr =

LED_PHYS;

mem_len = 0x1000;

mem_base = ioremap_nocache ( mem_addr, mem_len);


if( !mem_base) {
printk("Error mapping OHCI memery\n");
release_mem_region(mem_addr, mem_len);
return -EBUSY;
}

make .
CD Makefile
/opt/iwmmxt-1.0.0/bin/arm-linux-gcc . X-Hyper270-TKU

312

X-Hyper270-TKU Manual

Device Node X-Hyper270-TKU .


mknod

insmod .

X-Hyper270-TKU

fusing LED
rmmod .

313

X-Hyper270-TKU Manual

./led_test 1 LED
2 LED , 3
. 0 .

314

X-Hyper270-TKU Manual

315

X-Hyper270-TKU Manual

6.
QT

6.1.

QT/Embedded

6.1.1.

6.1.1.1

Qt/Embedded

Qt/Embedded Trolltech . qt3.3.3 .


ftp://ftp.trolltech.com/qt/source/qt-embedded-free-3.3.3.tar.bz2
. ( /root/qt
qt .)

[root@HostPC qt]# tar xvjf qt-embedded-free-3.3.3.tar.bz2

.
QT qte-3.3.3 .

[root@HostPC qt]# mv qt-embedded-free-3.3.3/ qte-3.3.3

316

X-Hyper270-TKU Manual

[root@HostPC qt]# cd qte-3.3.3

6.1.1.2

Qt/Embedded (host)

.
--

QTDIR : Qt

--

LD_LIBRARY_PATH : Qt

path ~/.bash_profile .
/qte-3.3.3]#vi ~/.bash_profile

317

X-Hyper270-TKU Manual

.
PATH=$PATH:$HOME/bin

export QTDIR=/root/qt/qte-3.3.3
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QTDIR/lib

.
/qte-3.3.3]# source ~/.bash_profile

318

X-Hyper270-TKU Manual
6.1.1.3

.
.
. qte-3.3.3/src/embedded

qmouselinuxtp_qws.cpp .

149 161 .
/dev/ts .

/qte-3.3.3]# vi /src/embedded/qmouselinuxtp_qws.cpp

. QT
.
QT/Embedded Configuratin .

319

X-Hyper270-TKU Manual
6.1.1.4

Qt/Embedded Configuration

ARM Makefile .
PLATFORM file .(Makefile, Readme)
configure
-shared :
-static :
-release :
-debug :
-thread :
-depths 16 : 16
-no-cups: cups
-qt-mouse-linuxtp :

QVFB(QT Virtual Frame Buffer)


Qt Virtual Framebuffer qvfb .
qvfb X Framebuffer .
Embedded application X
.

qvfb . XWindows console
, .
TIP.

Framebuffer ?

Framebuffer VESA
. 97

framebuffer .
Framebuffer .
Framebuffer ,

320

X-Hyper270-TKU Manual
.
,
.

Makefile .

/qte-3.3.3]# vi Makefile

all: symlinks src-qmake src-moc sub-src tools, examples


. .

configure .
/qte-3.3.3]# ./configure embedded ipaq shared depths 16 thread
-no-cups qt-mouse-linuxtp
-

. yes .

321

X-Hyper270-TKU Manual

.
Embedded ipaq Configuration Build type

Building on :

qws/linux-x86-g++

Building for : qws/linux-ipaq-g++


.

322

X-Hyper270-TKU Manual
.

323

X-Hyper270-TKU Manual
6.1.2
6.1.2.1.

QT/Embedded

QT/ARM
.
.
: http://www.hybus.net

///qt-3.3.3

: qt_libstdc++-3-libc6.1.2.2.10.0.so Host PC .
stdc++-3-libc6.1.2.2.10.0.so .
/opt/iwmmxt-1.0.0/lib/libstdc++.so .

/root#] ln s qt_libstdc++-3-libc6.1.2.2.10.0.so

/opt/iwmmxt-1.0.0/lib/libstdc++.so

/root#] cp qt_libstdc++-3-libc6.1.2.2.10.0.so /opt/iwmmxt-1.0.0/lib/

//

lib libstdc++.so-> qt_libstdc++-3-libc6.1.2.2.10.0.so


.
, /iwmmxt-1.0.0]# ll lib/libstdc
Tap libstdc . ,
libstdc++.so .

324

X-Hyper270-TKU Manual
6.1.2.2.

UIC, QVFB

QT/Embedded qt-x11 uic, qvfb .


uic, qvfb . .
, Trolltech X11 qt-x11-free-3.3.3.tar.bz2
configure make .
.
-> qt uic, qvfb /root/qt .

cp /qte-3.3.3/bin/ .
.

/bin]# cp /root/qt/uic ./
/bin]# cp /root/qt/qvfb ./
/bin]# chmod u+x uic

//

/bin]# chmod u+x qvfb

//

325

X-Hyper270-TKU Manual
6.1.2.3.

make .

/qte-3.3.3]# make

.
.
.
QT/Embedded .

/qte-3.3.3]# cd $QTDIR/lib

//QTDIR/lib

/lib]# ll
/lib]# file libqte-mt.so.3.3.3

326

X-Hyper270-TKU Manual

4 .
File ARM .
QT/Embedded .

327

X-Hyper270-TKU Manual
6.1.3. (Hello)
6.1.3.1

Hello

Qte-3.3.3 examples/hello .
/hello]# make

//

hello .

/hello]# file hello


File ARM .

328

X-Hyper270-TKU Manual
6.1.3.2

NFS

QT NFS QT . NFS
. .
NFS .
NFS UDP ,

NFS
. NFS .


NFS NIC .
make menuconfig CS8900 .
/2.6.11/]# make menuconfig

//

Network Support -
[*] Network device Support
Ethernet (10 or 100Mbit) -

329

X-Hyper270-TKU Manual
.
File system -
Network File system -

pc /etc/exports .
pc /mnt/nfs nfs .
( PC /mnt/nfs ).
192.168.128.128 IP nfs .
( IP. PC IP 192.168.128.129.)
rw,no_root_squash .

pc /etc/exports nfs .
Stop , start .

330

X-Hyper270-TKU Manual

/etc/rc.d/init.d/nfs start PC .

6.1.3.3

qte-3.3.3

/root/qt/qte-3.3.3 Host PC /mnt/nfs/ .


/mnt/nfs .

/mnt]# mkdir nfs

// nfs

/root/qt]# cp rf qte-3.3.3 /mnt/nfs/

//

/mnt/nfs]# cp /root/qt_libstdc++-3-libc6.1-2-10.0.so ./

// nfs

331

X-Hyper270-TKU Manual

6.1.3.4

PC /etc/exports 192.168.128.128 eth0 IP


.

IP PC .

Host PC .

332

X-Hyper270-TKU Manual
portmap . (portmap .)

. PC .
/mnt/nfs .

/mnt]# mkdir nfs

/mnt/nfs PC nfs .

6.1.3.5

QT/Embedded

333

X-Hyper270-TKU Manual
QT .
/root]# vi ~/.profile

.
.
//

/root]# source ~/.profile

6.1.3.6

ARM

/mnt/nfs/ qt_libstdc++-3-libc6.1-2-10.0.so .
/mnt/nfs/qte-3.3.3/lib]# ln s qt_libstdc++-3-libc6.1-2-10.0.so libstdc++-libc6.1-2.so.3

334

X-Hyper270-TKU Manual
6.1.3.7

QT/E

XServer .
[root@xhyper /mnt/nfs/qte-3.3.3]# ps
...
1148 root

4696 S

matchbox-desktop --icon-size 60 --font Sans-15 --bg i

1155 root

3348 S

matchbox-panel --orientation south

1156 root

3872 S

matchbox-window-manager

1157 root

1492 S

mb-applet-launcher -o -1 -l mbterm.png mb-applet-xter

1158 root

3344 S

mb-applet-menu-launcher

1159 root

1548 S

mb-applet-system-monitor

1160 root

1544 S

mb-applet-wireless

1161 root

3672 S

mb-applet-clock

XServer kill .

[root@xhyper /mnt/nfs/qte-3.3.3/examples/hello]# kill matchbox-desktop

/mnt/nfs/qte-3.3.3/examples/hello . Hello .

/root]$ cd /mnt/nfs/qte-3.3.3/examples/hello
/hello]$ ./hello -qws
Target Board LCD Hello world .
QT Hello .

QT . QT
Application .

335

X-Hyper270-TKU Manual
6.2.

Web Server (GoAhead)


X-Hyper270-TKU Web Server(GoAhead) ,
.

6.2.1.

336

X-Hyper270-TKU Manual

GoAhead 2.1.6.
http://data.goahead.com/Software/Webserver/2.1.6/webs216.tar.gz
.

ws030325 .

337

X-Hyper270-TKU Manual

6.2.2.

Compile

.
LINUX .

338

X-Hyper270-TKU Manual

Makefile .
CC=/opt/iwmmxt-1.0.0/bin/arm-linux-gcc
AR=/opt/iwmmxt-1.0.0/bin/arm-linux-ar .

cc -c -o $@ $(DEBUG) $(CFLAGS) $(IFLAGS) $<

$(CC) -c -o $@ $(DEBUG) $(CFLAGS) $(IFLAGS) $< .

make .

339

X-Hyper270-TKU Manual

webs .
file webs ARM .
webs .

340

X-Hyper270-TKU Manual

6.2.3.

Web Server

ifconfig ip /etc/hosts ip .

webs . zmodem ftp .


ftp .
webs .

341

X-Hyper270-TKU Manual

hostname
.
GoAhead .
web , asp html, cgi
. X-Hyper270-TKU .

342

X-Hyper270-TKU Manual

web.tar . web .
( / ) .

343

X-Hyper270-TKU Manual

web .
web GoAhead .
( / ) web webs .
Web Server .

344

X-Hyper270-TKU Manual

X-Hyper270-TKU .

Web Server .
cgi .
GoAhead cgi test .
.
cgi test ./web/cgi-bin/ .

345

X-Hyper270-TKU Manual

cgitest X-Hyper270-TKU /web/cgi-bin/ .


.

cgittest PC .
http://192.168.128.128/cgi-bin/cgitest .

346

X-Hyper270-TKU Manual

CGI Test Program cgi .

347

X-Hyper270-TKU Manual
6.3.

Web Browser (Dillo)

X-Hyper270-TKU Web Broswer .


Web Broswer Dillo.

Dillo C gtk

gtk Cross compile


.

6.3.1.


Dillo dillo-0.8.0 .
http://dillo.auriga.wearlab.de/download/dillo-0.8.0.tar.bz2
.
.

tar xvjf dillo-0.8.0.tar.bz2

dillo-0.8.0 .

348

X-Hyper270-TKU Manual

6.3.2.

Compile
.
linux application configure ,
Makefile . configure Cross compiler .
arm-linux-gcc export CC=arm-linux-gcc .

configure .

349

X-Hyper270-TKU Manual

configure Makefile .

make .

350

X-Hyper270-TKU Manual

src dillo .
file ARM .
arm-linux-strip .
X-Hyper270-TKU . serial ftp .

6.3.3.

351

X-Hyper270-TKU Manual

dillo zmodem .

dillo .

LCD Dillo Web Broswer .

352

X-Hyper270-TKU Manual
6.4.

NAT

X-Hyper270-TKU NAT(Network Address Translation,


) . NAT
IP
.
NAT .
http://network-address-translation.wikiverse.org/

NAT (eth0 : CS8900, eth1 : SMC91C111)


. CS8900 SMC91C111 IP
PC IP IP .


Kernel

X-Hyper270-TKU Kernel (linux-2.6.11-h270-tku_v1.0)

Iptables

Iptables-1.3.0.tar.bz2

NIC1

CS8900 device driver

NIC2

SMC91C111 device driver

IP

IP * 2, IP * 2

353

X-Hyper270-TKU Manual

NAT

354

X-Hyper270-TKU Manual

6.4.1.

NAT
make menuconfig .
NAT .

[*] Networking support


Networking options --->
[*] Network packer filtering (replaces ipchains) --->

355

X-Hyper270-TKU Manual

Network packer filtering IP: Netfilter Configuration


.

IP: Netfilter Configuration .


<*> Connection tracking (required for masq/NAT)
<*> IP tables support (required for filtering/masq/NAT)

356

X-Hyper270-TKU Manual

IP: Netfilter Configuration --->


<*> Packet filtering
<*> Full NAT
<*>

MASQUERADE target support

NAT .
2.2 IPCHAINS 2.4 IPTABLES
, 2.6 IPTABLES
.

357

X-Hyper270-TKU Manual

6.4.2.

IPTABLES
NAT iptables .
.
.
iptables RPM iptables-1.2.7a-2.armv4l.rpm

http://rpmfind.net/linux/rpm2html/search.php ARM iptables .
iptables-1.2.7a-2.armv4l.rpm .

iptables sbin iptables iptalbes-save .


iptables lib/iptables
libipt_MASQURADE.so .
file ARM .

358

X-Hyper270-TKU Manual

NAT

6.4.3.

NAT iptables .
.

iptables .
.
,
zmodem ftp .
.

iptables /sbin .
libipt_MASQUERADE.so /lib/iptables
.
/lib/iptables .

iptables
.
iptables help iptables .

359

X-Hyper270-TKU Manual

360

X-Hyper270-TKU Manual

6.4.4.

Network

NAT PC IP .
ifconfig IP .

NAT SMC91C111(eth1) IP
, CS8900(eth0) IP .

PC PING

NAT PING

361

X-Hyper270-TKU Manual

PC PING
.

PC IP

362

X-Hyper270-TKU Manual

/etc/sysconfig/network

/etc/sysconfig/network-scripts/ifcfg-eth0

/etc/resolv.conf

363

X-Hyper270-TKU Manual

NAT IP
.

[root@xhyper ~]# vi /etc/sysconfig/network


[root@xhyper ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
[root@xhyper ~]# vi /etc/resolv.conf

/etc/sysconfig/network .

/etc/sysconfig/network-scripts/ifcfg-eth0 eth0
.

/etc/resolv.conf

364

X-Hyper270-TKU Manual

6.4.5.

NAT TEST

NAT iptalbes .
IPTABLES .
IPTABLES man .

IPTABLES iptables-save
.

365

X-Hyper270-TKU Manual

CONNECTION NAT PC
IP PING .

PING .
NAT .

366

X-Hyper270-TKU Manual
6.5.

NFS

6.5.1.

NFS

NFS () ( PC)
,
C/S . NFS ,
( ) NFS . ,
TCP/IP , , NFS
TCP/IP (,

NFS

TCP

UDP

).

NFS , .
RPC .

NFS ,
. ( )
.

NFS .

6.5.2.


NFS NIC .
make menuconfig CS8900
.
Networking support --->
[*] Networking support
[*] Networ device support
Ethernet (10 or 100Mbit) --->
[*] Ethernet (10 or 100Mbit)
<*> CS89x0 support

367

X-Hyper270-TKU Manual

.
File systems --->
Network File Systems --->
<*> NFS file system support
[*] Provides NFSv3 client support
[*] Provides NFSv4 client support (EXPERIMENTAL)
[*] Root file system on NFS

368

X-Hyper270-TKU Manual

6.5.3.

Host PC

pc /etc/exports .

pc /mnt/nfs nfs .
( PC /mnt/nfs ).
192.168.128.128 IP nfs .
( IP. PC IP 192.168.128.129.)
rw,no_root_squash .

pc /etc/exports nfs .
Stop , start .
/etc/rc.d/init.d/nfs start PC nfs .

369

X-Hyper270-TKU Manual

6.5.4.


PC /etc/exports 192.168.128.128
eth0 IP .

IP PC .

370

X-Hyper270-TKU Manual
portmap . (portmap .)

PC /mnt/nfs /mnt/nfs .
.
PC .

371

X-Hyper270-TKU Manual
6.6.

MPEG Player Porting

MPlayer (MPlayer ) .
MPlayer X-Hyper270-TKU MPEG .

6.6.1 MPlayer

MPlayer . MPlayer-0.91.tar.bz2

372

X-Hyper270-TKU Manual
.
http://www.mplayerhq.hu/homepage/design7/dload.html

MPlayer-0.91 .

6.6.2 Makefile

373

X-Hyper270-TKU Manual

Makefile 248 .

6.6.3 configure

. X-Hyper270-TKU

374

X-Hyper270-TKU Manual
. mymplayerconfig .

[root@HostPC MPlayer-0.91]# vi mymplayerconfig

6.6.4 make

make .

375

X-Hyper270-TKU Manual

mplayer .
.

6.6.5 (mplayer)

make .
NFS .

376

X-Hyper270-TKU Manual

6.6.6 mplayer

mplayer . .

377

X-Hyper270-TKU Manual

mplayer test.mpeg .

378

X-Hyper270-TKU Manual

LCD mpeg mplayer .

379

X-Hyper270-TKU Manual

380

X-Hyper270-TKU Manual
6.7.

USB Host

PXA270 USB 1.1 Host Controller .


PXA270 USB host controller :
- USB Rev. 1.1 compatible, Supports both low-speed and full-speed USB devices
- Open Host Controller Interface (OHCI) Rev 1.0a compatible

6.7.1 USB

1. menuconfig
Host PC menuconfig .
[root@HostPC linux-2.6.11-h270-tku]# make menuconfig

Menuconfig . .(
)
Main USB Support .

381

X-Hyper270-TKU Manual

USB Support USB .

USB Support --->


<*> Support for Host-side USB
<*> OHCI HCD support
<*> USB Mass Storage support

Main SCSI device Support .

382

X-Hyper270-TKU Manual
USB Mass Storage SCSI device emulation .

SCSI device support --->


[*] legacy /proc/scsi/ support
<*> SCSI disk support

Menuconfig . menuconfig .

Kernel configuration USB Support


drivers/usb/ Kconfig .

383

X-Hyper270-TKU Manual

2.
Menuconfig .
[root@HostPC linux-2.6.11-h270-tku]# make clean
[root@HostPC linux-2.6.11-h270-tku]# make dep zImage

arch/arm/boot
zImage . .

384

X-Hyper270-TKU Manual
3. USB Storage
USB
.

USB Storage .
.

385

X-Hyper270-TKU Manual

sda . .
[root@hybus dev]# mknod sda b 8 0
[root@hybus dev]# mknod sda1 b 8 1

sda .

4. USB Storage

USB Storage fdisk .

386

X-Hyper270-TKU Manual
[root@hybus dev]# fdisk /dev/sda .

fdisk /dev/sda p, d, ,
n . n default .


[root@hybus dev]# mkfs.ext2 /dev/sda1 .

387

X-Hyper270-TKU Manual

USB .

388

X-Hyper270-TKU Manual

6.7.2 USB Keyboard Mouse

1. menuconfig
Host PC menuconfig .
[root@HostPC linux-2.6.11-h270-tku]# make menuconfig

Menuconfig .
.( )

Main USB Support .

USB Support --->


<*> Support for Host-side USB
<*> OHCI HCD support

--- USB Input Devices


< > USB Human Interface Device (full HID) support
// USB HID Boot Protocol drivers .

389

X-Hyper270-TKU Manual

USB HID Boot Protocol drivers --->


<*> USB HIDBP Keyboard (simple Boot) support
<*> USB HIDBP Mouse (simple Boot) support

Menuconfig . menuconfig .

390

X-Hyper270-TKU Manual

2.

Menuconfig .

[root@HostPC linux-2.6.11-h270-tku]# make clean


[root@HostPC linux-2.6.11-h270-tku]# make dep zImage

arch/arm/boot zImage
. .

3. USB Keyboard
Mouse

USB
.

USB Mouse . .

391

X-Hyper270-TKU Manual

. xterm .
USB Keyboard
.

. xterm .

* , MOP-35
.

392

X-Hyper270-TKU Manual

6.7.3 USB Camera

1. menuconfig

Host PC menuconfig .
* USB Camera
.

[root@HostPC linux-2.6.11-h270-tku]# make menuconfig

Menuconfig . .(
)

Main USB Support .

USB Support --->


<*> Support for Host-side USB
---USB Host Controller Drivers
<*> OHCI HCD support
--- USB Multimedia devices
<*> USB OV511 Camera support

393

X-Hyper270-TKU Manual

. Multimedia devices .

394

X-Hyper270-TKU Manual

Multimedia devices --->


<*> Video For Linux

Menuconfig . menuconfig .

395

X-Hyper270-TKU Manual

2.

Menuconfig .

[root@HostPC linux-2.6.11-h270-tku]# make clean


[root@HostPC linux-2.6.11-h270-tku]# make dep zImage

arch/arm/boot zImage
. .

3. USB Camera

396

X-Hyper270-TKU Manual

USB Camera . USB


. OmniMedia OMUC400 OmniEye
PC USB Camera .

4. USB Camera

USB Camera Player Porting

397

X-Hyper270-TKU Manual

<EffecTV-1> EffecTV source download


USB Camera EffecTV http://sourceforge.net/projects/effectv/
.

.
Version

: effectv-0.3.9

To

: /PROJECT/270_CAM/EffecTV

Source

: effectv-0.3.9.tar.gz

EffecTV .
SDL(Simple DirectMedia
Layer).
Requirements (software)
- Latest bttv driver, if you have a capture card using Bt848 family.
- SDL library(version 1.1.7 or later).
- GCC. NASM for some effects. (optional)
- vloopback for video loop back feature. (version 0.91 or later, optional)
X-Hyper270-TKU USB Camera Player SDL-1.2.6 .
SDL .
SDL http://libsdl.org/release/SDL-1.2.6.tar.gz .

398

X-Hyper270-TKU Manual

SDL . X-Hyper270-TKU
. mysdlconfig .

399

X-Hyper270-TKU Manual

[root@HostPC SDL-1.2.6]# vi mysdlconfig

#!/bin/sh
export NM="/opt/iwmmxt-1.0.0/bin/arm-linux-nm"
export LD="/opt/iwmmxt-1.0.0/bin/arm-linux-ld"
export CC="/opt/iwmmxt-1.0.0/bin/arm-linux-gcc"
export CXX="/opt/iwmmxt-1.0.0/bin/arm-linux-g++"
export RANLIB="/opt/iwmmxt-1.0.0/bin/arm-linux-ranlib"
export AR="/opt/iwmmxt-1.0.0/bin/arm-linux-ar"
./configure --build=i386-linux --host=arm-linux \
--prefix=/usr/ARMV5TE-linux \

// install directory

--x-includes=/usr/X11R6_ARM/include \

// X

--x-libraries=/usr/X11R6_ARM/lib \
--disable-debug --disable-joystick --disable-cdrom \
--disable-diskaudio --disable-mintaudio --disable-esd \
--disable-nasm --disable-dga --disable-video-x11-dgamouse \
--disable-video-x11-xv --disable-video-x11-xinerama \
--disable-video-x11-xme --disable-video-dga --disable-video-photon \
--disable-video-ps2gs --disable-video-xbios \
--disable-video-gem --disable-video-opengl --disable-input-events \
--disable-stdio-redirect --disable-directx --disable-atari-ldg
.
[root@HostPC SDL-1.2.6]# chmod +x mysdlconfig
[root@HostPC SDL-1.2.6]# ./mysdlconfig

.
[root@HostPC SDL-1.2.6]# make clean
[root@HostPC SDL-1.2.6]# make
[root@HostPC SDL-1.2.6]# make install

SDL
Tiny-X . Tiny-X XFree86 source download

400

X-Hyper270-TKU Manual

http://www.xfree.org/ . X-Hyper270-TKU

xfree86-4.4.0

. X-Hyper270-TKU XFree86 diffxhyper270-tku-xfree86 . .

<EffecTV-2>
.

401

X-Hyper270-TKU Manual

[root@HostPC EffecTV]# tar xvzf effectv-0.3.9.tar.gz

effectv-0.3.9/ .

<EffecTV-3> X-Hyper270-TKU
EffecTV X-Hyper270-TKU 10.
patching file config.mk

patching file Makefile

patching file EffecTV.h

patching file screen.h

patching file main.c

patching file palette.c

patching file screen.c

patching file effects/Makefile

patching file tools/Makefile

patching file v4lutils/Makefile

(1) patching file config.mk


[root@HostPC effectv-0.3.9]# vi config.mk 15, 17, 61, 63 64
.

402

X-Hyper270-TKU Manual

(2) patching file Makefile


[root@HostPC effectv-0.3.9]# vi Makefile 5, 9 10
.

(3) patching file EffecTV.h


[root@HostPC effectv-0.3.9]# vi EffecTV.h 26 .

403

X-Hyper270-TKU Manual

(4) patching file screen.h


[root@HostPC effectv-0.3.9]# vi screen.h 12 .

(5) patching file main.c


[root@HostPC effectv-0.3.9]# vi main.c 29, 318, 322, 372, 374, 377, 378
382 .

404

X-Hyper270-TKU Manual

< main.c >

405

X-Hyper270-TKU Manual

(6) patching file palette.c


[root@HostPC effectv-0.3.9]# vi palette.c 102 103
.

(7) patching file screen.c


[root@HostPC effectv-0.3.9]# vi screen.c 12 .

406

X-Hyper270-TKU Manual

(8) patching file effects/Makefile


[root@HostPC effectv-0.3.9]# vi effects/Makefile 5, 7, 8 83
.

407

X-Hyper270-TKU Manual

(9) patching file tools/Makefile


[root@HostPC effectv-0.3.9]# vi tools/Makefile 5 .

(10) patching file v4lutils/Makefile


[root@HostPC effectv-0.3.9]# vi v4lutils/Makefile 5 20
.

408

X-Hyper270-TKU Manual

<EffecTV-4. >
.

[root@HostPC effectv-0.3.9]# make


[root@HostPC effectv-0.3.9]# make install

EffecTV effectv effectv.1 .

409

X-Hyper270-TKU Manual

effectv . minicom Ctrl+A+S


zmodem . Host PC , effectv
libSDL-1.2.so.0 . (
. , .)

root /usr/lib /usr/bin .

410

X-Hyper270-TKU Manual

[root@hybus ~]# cp libSDL-1.2.so.0 /usr/lib/ //


//

[root@hybus ~]# cp effectv /usr/bin/

/dev video , video0 .

[root@hybus dev]# mknod video c 81 0


[root@hybus dev]# ln -s video video0

411

X-Hyper270-TKU Manual

USB .
.

[root@hybus ~]# export DISPLAY=:0.0


[root@hybus ~]# effectv

412

X-Hyper270-TKU Manual

.
LCD USB .

413

X-Hyper270-TKU Manual

414

X-Hyper270-TKU Manual

7.
7.1

Pin Description

1. CN5 : USB Slave connector


The pin out of USB Slave (4 pin)

No.

Signal

Description

VCC

+5V Supply Voltage.(max. 500mA)

UDC-

Data -

UDC+

Data +

GND

Ground.
USB Slave connector

2. CN4 : USB 1.1 Host connector


The pin out of USB Slave (4 pin)

No.

Signal

Description

VCC

+5V Supply Voltage.(max. 500mA)

UDC-

Data -

UDC+

Data +

GND

Ground.
USB Host connector

3. CN1 : USB 2.0 Host connector 2Port


The pin out of USB Slave (4 pin)

No.

Signal

Description

1,5

VCC

+5V Supply Voltage.(max. 500mA)

2,6

UDC-

Data -

3,7

UDC+

Data +

4,8

GND

Ground.
USB Host connector

415

X-Hyper270-TKU Manual

4. LAN : 10 Base-T Ethernet


The pin out of Ethernet-standard RJ45 (12 pin)

No.
1

Name
TPOP

Description
Twisted-Pair Output Positive. Differential outputs to the
twisted-pair cable.

TPON

Twisted-Pair Output Negative. Differential outputs to the


twisted-pair cable.

TPIP

Twisted-Pair Input Positive. A differential input pair from


the twisted-pair cable.

NC

Not Connect.

NC

Not Connect.

TPIN

Twisted-Pair Input Negative. A differential input pair


from the twisted-pair cable.

NC

Not Connect.

NC

Not Connect.

Link LED

Link LED

10

DC3P3V

+ 3.3V

11

Lan LED

Lan LED

12

DC3P3V

+ 3.3V
Ethernet

5. J8 : Serial (RS232)
The pin out of Serial (For Debug)

No.

Name

Description

FFTXD

Standard UART Transmitt (Out)

FFRXD

Standard UART Receive (In)

GND

Ground

NC

Not Connect

1,4,6,7,8,
9

Serial(Standard)

416

X-Hyper270-TKU Manual

6. J14, J15 : 10/100 Base-T Ethernet


The pin out of Ethernet-standard RJ45 (12 pin)

No.
1

Name
TPOP

Description
Twisted-Pair Output Positive. Differential outputs to the
twisted-pair cable.

TPON

Twisted-Pair Output Negative. Differential outputs to the


twisted-pair cable.

TPIP

Twisted-Pair Input Positive. A differential input pair from


the twisted-pair cable.

COM11

COM11

COM11

COM11

TPIN

Twisted-Pair Input Negative. A differential input pair


from the twisted-pair cable.

COM12

COM12

COM12

COM12

Link LED

Link LED

10

DC3P3V

+ 3.3V

11

Lan LED

Lan LED

12

DC3P3V

+ 3.3V
Ethernet

7. J20 : JTAG connector


The pin out of JTAG connector (6 pin)

No.

Name

Description

GND

Ground

TMS

Boundary Scan Mode Select.

TDO

Boundary Scan Data Output.

TDI

Boundary Scan Data Input.

TCK

Boundary Scan Clock.

NTRST

Boundary Reset.
JTAG connector

417

X-Hyper270-TKU Manual

8. J19 : Ice connector


The pin out of In Circuit Emulator connector (20 pin)

No.

Name

Description

VTref

Reference Voltage 3.3V

X-nTRST

JTAG TAP Reset

X-TDI

JTAG Test Data Input.

X-TMS

JTAG Test Mode Select.

X-TCK

JTAG Test Clk.

13

X-TDO

JTAG Test Data Output Line

15

RESET-CPU

Target System Reset.

2,17,19

NC

Not Connect.

4,6,8,10,

GND

Ground.

11,12,14,
16,18,20
ICE connector

9. EAR, MIC : Audio


The Description of Audio Jack

No.

Name

Description

MIC

MIC Jack

AC`97 MIC Jack

EAR

SPK Jack

AC`97 Speaker Jack


Audio

10. CON2, CON3 : Serial (TTL)


The pin out of Serial

No.

Name

Description

GND

+5V Supply Voltage

TXD

Transmitted Data

RXD

Received Data

RTS

Request To Send

418

X-Hyper270-TKU Manual

CTS

Clear To Send

DC3.3V

+3.3V

DC5V

+5V

NC

Not Connect

DCD

Received Line Signal Detect

10

DSR

Data Set Ready

11

DTR

Data Terminal Ready

12

/RST

Reset

13

GND

Ground

14

RI

Ring Indicator

15

NC

Not Connect

16

NC

Not Connect

17

NC

Not Connect

18

NC

Not Connect

19

NC

Not Connect

20

NC

Not Connect
Serial(FullFunction)

11. J8, J9 : Serial (RS232)


The pin out of Serial

No.

Name

Description

DCD

Received Line Signal Detect

RXD

Received Data

TXD

Transmitted Data

RTS

Request To Send

GND

Signal Ground

CTS

Clear To Send

DTR

Data Terminal Ready

DSR

Data Set Ready

RI

Ring Indicator
Serial(FullFunction)

419

X-Hyper270-TKU Manual

12. CON1 : mini IDE I/F


The pin out of IDEl

No.

Name

Description

Reset

Reset

GND

Ground

DD7

Data Bus 7

DD8

Data Bus 8

DD6

Data Bus 6

DD9

Data Bus 9

DD5

Data Bus 5

DD10

Data Bus 10

DD4

Data Bus 4

10

DD11

Data Bus 11

11

DD1

Data Bus 1

12

DD12

Data Bus 12

13

DD2

Data Bus 2

14

DD13

Data Bus 13

15

DD1

Data Bus 1

16

DD14

Data Bus 14

17

DD0

Data Bus 0

18

DD15

Data Bus 15

19

GND

Ground

20

NC

Not Connect

21

DMARQ

22

GND

Ground

23

DIOW

24

GND

Ground

25

DIOR

26

GND

Ground

27

IORDY

28

PSYNC:CSEL

29

DMACK

420

X-Hyper270-TKU Manual

30

GND

Ground

31

INTRQ

32

IOCS16

33

DA1

Address Bus 1

34

PDIAG

35

DA0

Address Bus 0

36

DA2

Address Bus 2

37

CS0

Chip Select 0

38

CS1

Chip Select 1

39

DASP

40

GND

Ground

41

+5V

+5 V IO/VCc for logic

42

+5V(Motor)

+5V for Motor

43

GND

Ground

44

TYPE

Serial(FullFunction)

13. J12 : CAMARA I/F


The pin out of CAMARA InterFace

No.

Name

Description

DC3P3V

+ 3.3 V

DC3P3V

+ 3.3 V

CIF_DD9

Data Line to transmit 9.

CIF_DD8

Data Line to transmit 8.

CIF_DD7

Data Line to transmit 7.

CIF_DD6

Data Line to transmit 6.

CIF_DD5

Data Line to transmit 5.

CIF_DD4

Data Line to transmit 4.

CIF_DD3

Data Line to transmit 3.

10

CIF_DD2

Data Line to transmit 2.

11

CIF_DD1

Data Line to transmit 1.

421

X-Hyper270-TKU Manual

12

CIF_DD0

Data Line to transmit 0.

13

CIF_MCLK

Programmable Output Clock

14

SCL

I2C bus I/F

15

SDA

I2C bus I/F

16

HHSUNV

Line start or alternate synchronization signal

17

HVSYNC

Frame start or alternate synchronization signal

18

RESET

Reset

19

GND

Ground

20

GND

Ground
Serial(FullFunction)

14. P1 : RGB Output I/F


The pin out of RGB Output Interface

No.

Name

Description

RED

Red Video.

GREEN

Green Video.

BLUE

Blue Video.

GND

Monitor ID Bit 2.

GND

Ground

RGND

Red Ground.

GGND

Green Ground.

BGND

Blue Ground.

GND

Key(No Pin).

10

SGND

Sync Ground.

11

GND

Monitor ID Bit 0.

12

DDC DATA

Monitor ID Bit 1.

13

HSYNC

Horizontal Sync.

14

VSYNC

Vertical Sync.

15

DDC CLOCK

Monitor ID Bit 3.
Serial(FullFunction)

422

X-Hyper270-TKU Manual
7.2

External Pin Description

The pin out of External Interface (200 pin)

J1 Connector
No.

Name

Description

CD31

Data Bus 31

CD30

Data Bus 30

CD29

Data Bus 29

CD28

Data Bus 28

CD27

Data Bus 27

11

CD26

Data Bus 26

13

CD25

Data Bus 25

15

CD24

Data Bus 24

17

CD23

Data Bus 23

19

CD22

Data Bus 22

21

CD21

Data Bus 21

23

CD20

Data Bus 20

25

CD19

Data Bus 19

27

CD18

Data Bus 18

29

CD17

Data Bus 17

31

CD16

Data Bus 16

33

CD15

Data Bus 15

35

CD14

Data Bus 14

37

CD13

Data Bus 13

39

CD12

Data Bus 12

41

CD11

Data Bus 11

43

CD10

Data Bus 10

45

CD9

Data Bus 9

47

CD8

Data Bus 8

49

CD7

Data Bus 7

51

CD6

Data Bus 6

No.

Name

Description

53

CD5

Data Bus 5

55

CD4

Data Bus 4

423

X-Hyper270-TKU Manual

No.

Name

Description

57

CD3

Data Bus 3

59

CD2

Data Bus 2

61

CD1

Data Bus 1

63

CD0

Data Bus 0

65

GND

Ground.

67

CA25

Address Bus 25

69

CA24

Address Bus 24

71

CA23

Address Bus 23

73

CA22

Address Bus 22

75

CA21

Address Bus 21

77

CA20

Address Bus 20

79

GND

Ground.

81

GND

Ground.

83

DC3P3V

+ 3.3 V

85

DC3P3V

+ 3.3 V

87

GND

Ground.

89

GND

Ground.

91

GND

Ground.

93

GND

Ground.

95

GND

Ground.

97

DC5V

+ 5 V.

99

DC5V

+ 5 V.

No.

Name

Description

CGP34/FFRXD

FFRXD

CGP42/BTRXD

BTRXD

CGP39/FFTXD

FFTXD

CGP43/BTTXD

GPIO 43

10

CGP35/FFCTS

GPIO 35

12

CGP44/BTCTS

GPIO 44

14

CGP41/FFRTS

GPIO 41

16

CGP45/BTRTS

GPIO 45

18

CGP36/FFDCD

GPIO 36

424

X-Hyper270-TKU Manual

No.

Name

20

CGP46/STDRXD

STDRXD

22

CGP37/FFDSR

GPIO 37

24

CGP47/STDTXD

STDTXD

26

CGP38/RADIO_SI/TX2

GPIO 38

28

CGP99/RADIO_SFD

GPIO 99

30

CGP40/RADIO_SO/RX2

GPIO 40

32

Description

CGP100/RADIO_SCLK

GPIO 100

34

CUIO

UIO

36

CGP89/RADIO_PKT_INT

GPIO 89

38

CGP88

GPIO 88

40

CGP81/SSPTXD3

SSPTXD3

42

CGP16/ADC_INT

ADC_INT

44

CGP82/SSPRXD3

SSPRXD3

46

CGP40/RADIO_SO/RX2

GPIO 40

48

CGP83/SSPSFRM3

SSPSFRM3

50

CGP26/CIF_PCLK

CIF_PCLK

52

CGP84/SSPSCLK3

SSPSCLK3

54

CGP11/CF-IREQ#

CF-IREQ#

56

CGP18/RDY

RDY

58

CGP12/CF-CD#

CF-CD#

60

CGP101

GPIO 101

62

CGP116/IDE_DACK

IDE_DACK

64

CGP20/DREQ/nSDCS2v

GPIO 20

66

CGP115/IDE_DREQ

IDE_DREQ

68

CGP21/DVAL0/nSDCS3

GPIO 21

70

CGP1

GPIO 1

72

CGP91/NFRNB

NFRNB

74

CGP0

GPIO 0

76

CGP96/RTC-SDA

RTC-SDA

78

CGP9/PCMCIA-IREQ#

PCMCIA-IREQ#

80

GND

Ground

82

GND

Ground

84

DC3P3V

+ 3.3 V

425

X-Hyper270-TKU Manual

No.

Name

Description

86

DC3PV

+ 3.3 V

88

GND

Ground

90

GND

Ground

92

GND

Ground

94

GND

Ground

96

GND

Ground

98

DC5V

+5V

100

DC5V

+ 5V
External Interface

426

X-Hyper270-TKU Manual

J2 Connector
No.

Name

Description

CA19

Address Bus 19

CA18

Address Bus 18

CA17

Address Bus 17

CA16

Address Bus 16

CA15

Address Bus 15

11

CA14

Address Bus 14

13

CA13

Address Bus 13

15

CA12

Address Bus 12

17

CA11

Address Bus 11

19

CA10

Address Bus 10

21

CA9

Address Bus 9

23

CA8

Address Bus 8

25

CA7

Address Bus 7

27

CA6

Address Bus 6

29

CA5

Address Bus 5

31

CA4

Address Bus 4

33

CA3

Address Bus 3

35

CA2

Address Bus 2

37

CA1

Address Bus 1

39

CA0

Address Bus 0

41

GND

Ground

43

GND

Ground

45

CnBCS1

Chip Select 1

47

CnBCS4

Chip Select 4

49

CnBCS5

Chip Select 5

51

CBRDnWR

RDnWR

53

CBnWE

nWE

55

CBnOE

nOE

57

CGP117/SCL

SCL

59

CGP118/SDA

SDA

61

CGP3/PWR_SCL

GPIO 3

63

CGP4/PWR_SDA

GPIO 4

65

GND

Ground

427

X-Hyper270-TKU Manual

67

GND

Ground

69

GND

Ground

71

GND

Ground

73

DC3P3V

+ 3.3 V

75

DC3P3V

+ 3.3 V

77

GND

Ground

79

GND

Ground

81

GND

Ground

83

DC5V

+5V

85

DC5V

+5V

87

GND

Ground

89

GND

Ground

91

GND

Ground

93

DC12V

+ 12 V

95

DC12V

+ 12 V

97

DC12V

+ 12 V

99

GND

Ground

No.

Name

Description

CGP114/USBC_INT

USBC_INT

CEXT_RESET

EXT_RESET

CGP13/PCMCIA-CD#

PCMCIA-CD

CRESET-OUT

RESET-OUT

10

CGP49/nPWE

nPWE

12

CGP54/nSMSC-INT1

nSMSC-INT1

14

CGP48/nPOE

nPOE

16

CGP53/nSMSC-INT2

nSMSC-INT2

18

CGP79/PSKTSEL

PSKTSEL

20

CGP14/TL16C554_INTA

TL16C554_INTA

22

CGP102/nPCE1

nPCE1

24

CGP19/TL16C554_INTB

TL16C554_INTB

26

CGP57/nIOIS16

nIOIS16

28

CGP22/TL16C554_INTC

TL16C554_INTC

30

CGP56/nPWAIT

nPWAIT

32

CGP85/TL16C554_INTD

TL16C554_INTD

428

X-Hyper270-TKU Manual

No.

Name

Description

34

CGP55/nPREG

nPREG

36

CGP32/MMCLK

MMCLK

38

CGP78/nPCE2

nPCE2

40

CGP90/SD_WP

SD_WP

42

CGP51/nPIOIW

nPIOIW

44

CGP97/SD_CD

SD_CD

46

CGP50/nPIOIR

nPIOIR

48

CGP92/MSBS

MSBS

50

CGP111/MMCCS1

MMCCS1

52

CGP112/MMCMD

MMCMD

54

CGP110/MMCCS0

MMCCS0

56

GND

Ground

58

GND

Ground

60

GND

Ground

62

GND

Ground

64

GND

Ground

66

GND

Ground

68

GND

Ground

70

GND

Ground

72

GND

Ground

74

DC3P3V

+ 3.3 V

76

DC3P3V

+ 3.3 V

78

GND

Ground

80

GND

Ground

82

GND

Ground

84

DC5V

+5V

86

DC5V

+5V

88

GND

Ground

90

GND

Ground

92

GND

Ground

94

DC12V

+ 12 V

96

DC12V

+ 12 V

98

DC12V

+ 12 V

429

X-Hyper270-TKU Manual

100

GND

Ground

430

You might also like