i.MX Linux® Reference Manual
Document Number: IMXLXRM
Rev. L3.14.38_6ul-ga, 09/2015
i.MX Linux® Reference Manual, Rev. L3.14.38_6ul-ga, 09/2015
2 Freescale Semiconductor, Inc.
Contents
Section number Title Page
Chapter 1
About this Book
1.1 Audience....................................................................................................................................................................... 27
1.1.1 Conventions................................................................................................................................................... 27
1.1.2 Definitions, Acronyms, and Abbreviations....................................................................................................27
Chapter 2
Introduction
2.1 Overview.......................................................................................................................................................................31
2.1.1 Software Base................................................................................................................................................ 31
2.1.2 Features.......................................................................................................................................................... 31
Chapter 3
Machine Specific Layer (MSL)
3.1 Introduction...................................................................................................................................................................37
3.2 Interrupts (Operation)................................................................................................................................................... 37
3.2.1 Interrupt Hardware Operation........................................................................................................................38
3.2.2 Interrupt Software Operation......................................................................................................................... 38
3.2.3 Interrupt Features........................................................................................................................................... 38
3.2.4 Interrupt Source Code Structure.................................................................................................................... 39
3.2.5 Interrupt Programming Interface................................................................................................................... 39
3.3 Timer.............................................................................................................................................................................40
3.3.1 Timer Software Operation............................................................................................................................. 40
3.3.2 Timer Features............................................................................................................................................... 40
3.3.3 Timer Source Code Structure.........................................................................................................................41
3.3.4 Timer Programming Interface........................................................................................................................41
3.4 Memory Map................................................................................................................................................................ 41
3.4.1 Memory Map Hardware Operation................................................................................................................41
3.4.2 Memory Map Software Operation................................................................................................................. 41
3.4.3 Memory Map Features...................................................................................................................................41
i.MX Linux® Reference Manual, Rev. L3.14.38_6ul-ga, 09/2015
Freescale Semiconductor, Inc. 3
Section number Title Page
3.4.4 Memory Map Source Code Structure............................................................................................................ 42
3.5 IOMUX.........................................................................................................................................................................42
3.5.1 IOMUX Hardware Operation........................................................................................................................ 43
3.5.2 IOMUX Software Operation..........................................................................................................................43
3.5.3 IOMUX Features............................................................................................................................................43
3.5.4 IOMUX Source Code Structure.....................................................................................................................44
3.5.5 IOMUX Programming Interface....................................................................................................................44
3.5.6 IOMUX Control Through GPIO Module...................................................................................................... 44
3.5.6.1 GPIO Hardware Operation...........................................................................................................45
3.5.6.1.1 Muxing Control...........................................................................................................45
3.5.6.1.2 PULLUP Control........................................................................................................ 45
3.5.6.2 GPIO Software Operation (general)............................................................................................ 45
3.5.6.3 GPIO Implementation..................................................................................................................45
3.6 General Purpose Input/Output(GPIO).......................................................................................................................... 46
3.6.1 GPIO Software Operation..............................................................................................................................46
3.6.1.1 API for GPIO............................................................................................................................... 46
3.6.2 GPIO Features................................................................................................................................................47
3.6.3 GPIO Module Source Code Structure............................................................................................................47
3.6.4 GPIO Programming Interface 2..................................................................................................................... 47
Chapter 4
Smart Direct Memory Access (SDMA) API
4.1 Overview.......................................................................................................................................................................49
4.1.1 Hardware Operation.......................................................................................................................................49
4.1.2 Software Operation........................................................................................................................................ 49
4.1.3 Source Code Structure................................................................................................................................... 50
4.1.4 Programming Interface.................................................................................................................................. 51
4.1.5 Usage Example.............................................................................................................................................. 51
i.MX Linux® Reference Manual, Rev. L3.14.38_6ul-ga, 09/2015
4 Freescale Semiconductor, Inc.
Section number Title Page
Chapter 5
AHB-to-APBH Bridge with DMA (APBH-Bridge-DMA)
5.1 Overview.......................................................................................................................................................................53
5.1.1 Hardware Operation.......................................................................................................................................53
5.1.2 Software Operation........................................................................................................................................ 54
5.1.3 Source Code Structure................................................................................................................................... 54
5.1.4 Menu Configuration Options......................................................................................................................... 55
5.1.5 Programming Interface.................................................................................................................................. 55
5.1.6 Usage Example.............................................................................................................................................. 55
Chapter 6
Image Processing Unit (IPU) Drivers
6.1 Introduction...................................................................................................................................................................57
6.1.1 Hardware Operation.......................................................................................................................................58
6.2 Software Operation....................................................................................................................................................... 59
6.2.1 IPU Frame Buffer Drivers Overview.............................................................................................................60
6.2.1.1 IPU Frame Buffer Hardware Operation.......................................................................................61
6.2.1.2 IPU Frame Buffer Software Operation........................................................................................ 61
6.2.1.3 Synchronous Frame Buffer Driver...............................................................................................62
6.2.2 IPU Backlight Driver..................................................................................................................................... 63
6.2.3 IPU Device Driver......................................................................................................................................... 63
6.3 Source Code Structure ................................................................................................................................................. 64
6.3.1 Menu Configuration Options......................................................................................................................... 65
6.4 Unit Test........................................................................................................................................................................69
6.4.1 Framebuffer Tests.......................................................................................................................................... 69
6.4.2 Video4Linux API test.................................................................................................................................... 69
6.4.3 IPU Device Unit test...................................................................................................................................... 71
Chapter 7
MIPI DSI Driver
7.1 Introduction...................................................................................................................................................................75
7.1.1 MIPI DSI IP Driver Overview.......................................................................................................................75
i.MX Linux® Reference Manual, Rev. L3.14.38_6ul-ga, 09/2015
Freescale Semiconductor, Inc. 5