I.MX23 EVK 1.7 Linux Reference Manual
Total Page:16
File Type:pdf, Size:1020Kb
i.MX23 EVK 1.7 Linux Reference Manual Document Number: 924-76389 Rev. 2009.12 01/2010 How to Reach Us: Home Page: www.freescale.com Web Support: http://www.freescale.com/support USA/Europe or Locations Not Listed: Freescale Semiconductor, Inc. Information in this document is provided solely to enable system and software Technical Information Center, EL516 implementers to use Freescale Semiconductor products. There are no express or 2100 East Elliot Road implied copyright licenses granted hereunder to design or fabricate any integrated Tempe, Arizona 85284 1-800-521-6274 or circuits or integrated circuits based on the information in this document. +1-480-768-2130 Freescale Semiconductor reserves the right to make changes without further notice to www.freescale.com/support any products herein. Freescale Semiconductor makes no warranty, representation or Europe, Middle East, and Africa: guarantee regarding the suitability of its products for any particular purpose, nor does Freescale Halbleiter Deutschland GmbH Technical Information Center Freescale Semiconductor assume any liability arising out of the application or use of Schatzbogen 7 any product or circuit, and specifically disclaims any and all liability, including without 81829 Muenchen, Germany limitation consequential or incidental damages. “Typical” parameters which may be +44 1296 380 456 (English) provided in Freescale Semiconductor data sheets and/or specifications can and do +46 8 52200080 (English) +49 89 92103 559 (German) vary in different applications and actual performance may vary over time. All operating +33 1 69 35 48 48 (French) parameters, including “Typicals” must be validated for each customer application by www.freescale.com/support customer’s technical experts. Freescale Semiconductor does not convey any license Japan: under its patent rights nor the rights of others. Freescale Semiconductor products are Freescale Semiconductor Japan Ltd. not designed, intended, or authorized for use as components in systems intended for Headquarters surgical implant into the body, or other applications intended to support or sustain life, ARCO Tower 15F 1-8-1, Shimo-Meguro, Meguro-ku or for any other application in which the failure of the Freescale Semiconductor product Tokyo 153-0064 could create a situation where personal injury or death may occur. Should Buyer Japan purchase or use Freescale Semiconductor products for any such unintended or 0120 191014 or unauthorized application, Buyer shall indemnify and hold Freescale Semiconductor +81 3 5437 9125 [email protected] and its officers, employees, subsidiaries, affiliates, and distributors harmless against all Asia/Pacific: claims, costs, damages, and expenses, and reasonable attorney fees arising out of, Freescale Semiconductor China Ltd. directly or indirectly, any claim of personal injury or death associated with such Exchange Building 23F unintended or unauthorized use, even if such claim alleges that Freescale No. 118 Jianguo Road Semiconductor was negligent regarding the design or manufacture of the part. Chaoyang District Beijing 100022 China +86 10 5879 8000 Freescale and the Freescale logo are trademarks or registered trademarks [email protected] of Freescale Semiconductor, Inc. in the U.S. and other countries. All other product or service names are the property of their respective owners. For Literature Requests Only: Freescale Semiconductor © Freescale Semiconductor, Inc., 2010. All rights reserved. Literature Distribution Center 1-800 441-2447 or +1-303-675-2140 Fax: +1-303-675-2150 LDCForFreescaleSemiconductor @hibbertgroup.com Contents About This Book Audience . xv Conventions . xv Definitions, Acronyms, and Abbreviations . xv Suggested Reading . xviii Chapter 1 Introduction 1.1 Software Base . 1-1 1.2 Features. 1-2 Chapter 2 Architecture 2.1 Linux BSP Block Diagram . 2-1 2.2 Kernel . 2-2 2.2.1 Kernel Configuration . 2-2 2.2.2 Machine Specific Layer (MSL) . 2-3 2.2.2.1 Memory Map . 2-3 2.2.2.2 Interrupts. 2-3 2.2.2.3 General Purpose Timer (GPT) . 2-3 2.2.2.4 DMA API . 2-4 2.2.2.5 Input/Output (I/O). 2-4 2.2.2.6 Pin Multiplexing . 2-4 2.2.2.7 Shared Peripheral Bus Arbiter (SPBA) . 2-5 2.3 Drivers . 2-5 2.3.1 Universal Asynchronous Receiver/Transmitter (UART) Driver . 2-5 2.3.1.1 Debug Asynchronous Receiver/Transmitter (UART) . 2-5 2.3.1.2 Application Asynchronous Receiver/Transmitter (UART) . 2-6 2.3.2 Real-Time Clock (RTC) Driver . 2-6 2.3.3 Watchdog Timer (WDOG) Driver . 2-6 2.3.4 DCP Bootstream . 2-7 2.3.5 i.MX23 Graphics . 2-7 2.3.5.1 LCDIF Driver . 2-8 2.3.5.2 LCD Panel Drivers . 2-8 i.MX23 EVK Linux Reference Manual Freescale Semiconductor iii 2.3.5.3 Frame Buffer Driver . 2-8 2.3.5.4 Pixel Pipeline (PXP) Driver . 2-8 2.3.6 Sound Driver. 2-8 2.3.7 Keypad . 2-8 2.3.8 Memory Technology Device (MTD) Driver . 2-9 2.3.8.1 GPMI/NAND . 2-10 2.3.9 USB Driver . 2-10 2.3.9.1 USB Host-Side API Model. 2-10 2.3.9.2 USB Device-Side Gadget Framework . 2-11 2.3.9.3 USB OTG Framework . 2-11 2.3.10 General Drivers. 2-12 2.3.10.1 MMC/SD Host Driver . 2-12 2.3.10.2 Inter-IC (I2C) Bus Driver . 2-12 2.3.10.3 SPI Bus Driver . 2-13 2.3.10.4 Dynamic Power Management (DPM) Driver. 2-13 2.3.10.5 Low-Level Power Management Driver . 2-14 2.3.10.6 Dynamic Voltage and Frequency Scaling (DVFS) Driver . 2-15 2.3.10.7 Backlight Driver . 2-15 2.3.10.8 LED Driver . 2-15 2.3.10.9 Power Source Manager and Battery Charger . 2-15 2.3.10.10 CPUFreq Driver . 2-16 2.4 Boot Loaders. 2-16 2.4.1 i.MX23 Boot Loader. 2-16 2.4.1.1 Boot Prep . 2-17 2.4.1.2 Linux Prep. 2-17 2.4.1.3 U-boot . 2-17 Chapter 3 Machine Specific Layer (MSL) 3.1 Interrupts. 3-1 3.1.1 Interrupt Hardware Operation. 3-1 3.1.2 Interrupt Software Operation . ..