RTEMS Documentation Project
RTEMS BSP and Driver Guide
5.1
1. Introduction
2. Target Dependent Files
2.1. CPU Dependent
2.2. Board Dependent
2.3. Peripheral Dependent
2.4. Questions to Ask
2.5. CPU Dependent Executive Files
2.6. Board Support Package Structure
3. Linker Script
3.1. What is a “linkcmds” file?
3.2. Program Sections
3.3. Image of an Executable
3.4. Example Linker Command Script
3.5. Initialized Data
4. Miscellaneous Support Files
4.1. GCC Compiler Specifications File
4.2. README Files
4.3. Times
4.4. Tools Subdirectory
4.5. bsp.h Include File
4.6. tm27.h Include File
4.7. sbrk() Implementation
4.8. bsp_fatal_extension() - Cleanup the Hardware
4.9. Configuration Macros
4.10. set_vector() - Install an Interrupt Vector
4.11. Interrupt Delay Profiling
4.12. Programmable Interrupt Controller API
5. System Initialization
5.1. Introduction
5.2. Low-Level Initialization via Start Code in the Start File (start.o)
5.3. High-Level Initialization via boot_card()
5.3.1. Early BSP Initialization
5.3.2. Memory Information
5.3.3. BSP Initialization
5.4. Error Handling
6. Console Driver
6.1. Introduction
6.2. Build System and Files
6.3. Driver Functioning Modes
6.4. Polled Mode
6.5. Interrupt Driven Mode
6.6. First Open
6.7. Last Close
6.8. Set Attributes
6.9. IO Control
6.10. Flow Control
6.11. General Initialization
7. Clock Driver
7.1. Introduction
7.2. Initialization
7.2.1. Timecounter Variant
7.2.2. Simple Timecounter Variant
7.2.3. Clock Tick Only Variant
7.3. Install Clock Tick Interrupt Service Routine
7.4. Support At Tick
7.5. System Shutdown Support
7.6. SMP Support
7.7. Multiple Clock Driver Ticks Per Clock Tick
7.8. Clock Driver Ticks Counter
8. Entropy Source
9. I2C Driver
10. SPI Driver
11. Real-Time Clock Driver
11.1. Introduction
11.2. Initialization
11.3. setRealTimeToRTEMS
11.4. setRealTimeFromRTEMS
11.5. getRealTime
11.6. setRealTime
11.7. checkRealTime
12. Networking Driver
12.1. Introduction
12.2. Learn about the network device
12.3. Understand the network scheduling conventions
12.4. Network Driver Makefile
12.5. Write the Driver Attach Function
12.6. Write the Driver Start Function.
12.7. Write the Driver Initialization Function.
12.8. Write the Driver Transmit Task
12.9. Write the Driver Receive Task
12.10. Write the Driver Interrupt Handler
12.11. Write the Driver IOCTL Function
12.12. Write the Driver Statistic-Printing Function
13. Frame Buffer Driver
13.1. Introduction
13.2. Driver Function Overview
13.2.1. Initialization
13.2.2. Opening the Frame Buffer Device
13.2.3. Closing the Frame Buffer Device
13.2.4. Reading from the Frame Buffer Device
13.2.5. Writing to the Frame Buffer Device
13.2.6. Frame Buffer IO Control
14. Ada95 Interrupt Support
14.1. Introduction
14.2. Mapping Interrupts to POSIX Signals
14.3. Example Ada95 Interrupt Program
14.4. Version Requirements
15. Shared Memory Support Driver
15.1. Shared Memory Configuration Table
15.2. Primitives
15.2.1. Convert Address
15.2.2. Get Configuration
15.2.3. Locking Primitives
15.2.3.1. Initializing a Shared Lock
15.2.3.2. Acquiring a Shared Lock
15.2.3.3. Releasing a Shared Lock
15.3. Installing the MPCI ISR
16. Timer Driver
16.1. Benchmark Timer
16.1.1. benchmark_timer_initialize
16.1.2. Read_timer
16.1.3. benchmark_timer_disable_subtracting_average_overhead
16.2. gen68340 UART FIFO Full Mode
17. ATA Driver
17.1. Terms
17.2. Introduction
17.3. Initialization
17.4. ATA Driver Architecture
17.4.1. ATA Driver Main Internal Data Structures
17.4.2. Brief ATA Driver Core Overview
18. IDE Controller Driver
18.1. Introduction
18.2. Initialization
18.3. Read IDE Controller Register
18.4. Write IDE Controller Register
18.5. Read Data Block Through IDE Controller Data Register
18.6. Write Data Block Through IDE Controller Data Register
19. Command and Variable Index
20. Doxygen Recommendations for BSPs
20.1. BSP Basics
20.2. Common Features Found In BSPs
20.3. Shared Features
20.4. Rationale
20.5. The Structure of the bsps/ directory
20.6. Doxygen
20.7. Doxygen Basics
20.8. Doxygen Headers
20.9. The @defgroup Command
20.10. The @ingroup Command
20.11. The @brief Command
20.12. The Two Types of Doxygen Headers
20.13. Generating Documentation
20.14. Doxygen in bsps/
20.15. Group Naming Conventions
20.16. Where to place @defgroup
20.17. @defgroups for CPU Architectures and Shared Directories
20.18. @defgroups for BSPs
20.19. @defgroups for Everything Else
20.20. Look Common Features Implemented
20.21. Check out the Makefile
20.22. Start with a .h, and look for files that include it
20.23. Files with similar names
20.24. Where to place @ingroup
20.25. @ingroup in the first type of Doxygen Header
20.26. @ingroup in the second type of Doxygen Header
20.27. @ingroup for shared code
Index
RTEMS BSP and Driver Guide
»
Search
Please activate JavaScript to enable the search functionality.