Machine Specific Layer (MSL)
i.MX51 EVK Linux Reference Manual
2-4
Freescale Semiconductor
•
Functions required by Linux to provide the system timer and dynamic timers.
•
Generates an interrupt every 10 ms.
2.2.4
Timer Source Code Structure
The timer module is implemented in the
arch/arm/plat-mxc/time.c
file.
2.3
Memory Map
A predefined virtual-to-physical memory map table is required for the device drivers to access to the
device registers since the Linux kernel is running under the virtual address space with the Memory
Management Unit (MMU) enabled.
2.3.1
Memory Map Hardware Operation
The MMU, as part of the ARM core, provides the virtual to physical address mapping defined by the page
table. For more information, see the
ARM Technical Reference Manual
(TRM) from ARM Limited.
2.3.2
Memory Map Software Operation
A table mapping the virtual memory to physical memory is implemented for i.MX platforms as defined in
the
<ltib_dir>/rpm/BUILD/linux/arch/arm/mach-mx5/mm.c
file.
2.3.3
Memory Map Features
The Memory Map implementation programs the Memory Map module to creates the physical to virtual
memory map for all the I/O modules.
2.3.4
Memory Map Source Code Structure
The Memory Map module implementation is in
mm.c
under the platform-specific MSL directory. The
hardware.h
header file is used to provide macros for all the IO module physical and virtual base addresses
and physical to virtual mapping macros. All of the memory map source code is in the in the following
directories:
<ltib_dir>/rpm/BUILD/linux/arch/arm/plat-mxc/include/mach
<ltib_dir>/rpm/BUILD/linux/arch/arm/mach-mx5
lists the source file for the memory map.
Table 2-2. Memory Map Files
File
Description
mx5x.h
Header files for the IO module physical addresses
mm.c
Memory map definition file
Summary of Contents for i.MX51 EVK
Page 1: ...Part Number 924 76374 Rev 10 11 01 11 2010 i MX51 EVK Linux Reference Manual...
Page 14: ...i MX51 EVK Linux Reference Manual xiv Freescale Semiconductor...
Page 18: ...i MX51 EVK Linux Reference Manual xviii Freescale Semiconductor...
Page 24: ...i MX51 EVK Linux Reference Manual xxiv Freescale Semiconductor...
Page 38: ...Machine Specific Layer MSL i MX51 EVK Linux Reference Manual 2 8 Freescale Semiconductor...
Page 52: ...MC13892 Digitizer Driver i MX51 EVK Linux Reference Manual 5 4 Freescale Semiconductor...
Page 64: ...TV Encoder TVE Driver i MX51 EVK Linux Reference Manual 10 4 Freescale Semiconductor...
Page 82: ...Video for Linux Two V4L2 Driver i MX51 EVK Linux Reference Manual 12 8 Freescale Semiconductor...
Page 86: ...i MX5 Dual Display i MX51 EVK Linux Reference Manual 13 4 Freescale Semiconductor...
Page 100: ...X Windows Acceleration i MX51 EVK Linux Reference Manual 16 6 Freescale Semiconductor...
Page 118: ...Low Level Keypad Driver i MX51 EVK Linux Reference Manual 20 6 Freescale Semiconductor...
Page 134: ...Security Drivers i MX51 EVK Linux Reference Manual 22 10 Freescale Semiconductor...
Page 148: ...Inter IC I2C Driver i MX51 EVK Linux Reference Manual 24 4 Freescale Semiconductor...
Page 178: ...ARC USB Driver i MX51 EVK Linux Reference Manual 29 10 Freescale Semiconductor...
Page 194: ...OProfile i MX51 EVK Linux Reference Manual 33 6 Freescale Semiconductor...