![Freescale Semiconductor i.MX 6DualLite Reference Manual Download Page 38](http://html1.mh-extra.com/html/freescale-semiconductor/i-mx-6duallite/i-mx-6duallite_reference-manual_2330523038.webp)
3.4.3 Memory Map Features
The Memory Map implementation programs the Memory Map module to create the
physical-to-virtual memory map for all the I/O modules.
3.4.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 I/O module
physical and virtual base addresses and physical to virtual mapping macros. All of the
memory map source code is in the following directory:
<ltib_dir>/rpm/BUILD/linux/arch/arm/plat-mxc/include/mach
The following table lists the source files for the memory map.
Table 3-2. Memory Map Files
File
Description
mx6.h
Header files for the I/O module physical addresses
3.4.5 Memory Map Programming Interface
The Memory Map is implemented in the mm.c file to provide the map between physical
and virtual addresses. It defines an initialization function to be called during system
startup.
3.5 IOMUX
The limited number of pins of highly integrated processors can have multiple purposes.
The IOMUX module controls a pin usage so that the same pin can be configured for
different purposes and can be used by different modules.
This is a common way to reduce the pin count while meeting the requirements from
various customers. Platforms that do not have the IOMUX hardware module can do pin
muxing through the GPIO module.
The IOMUX module provides the multiplexing control so that each pin may be
configured either as a functional pin or as a GPIO pin. A functional pin can be subdivided
into either a primary function or alternate functions. The pin operation is controlled by a
IOMUX
i.MX 6Solo/6DualLite Linux Reference Manual, Rev. L3.0.35_4.1.0, 09/2013
38
Freescale Semiconductor, Inc.