The file <cyg/hal/sam9.h> can be included from application and eCos package sources to provide definitions related to SAM9 subsystems. These include register definitions for the interrupt controller, power management controller, clock generator, memory controller, external bus interface, GPIO, USART, MCI, TWI (I²C®), Ethernet, timer counter, RTTC, and SPI subsystems.
Initialization helper macros
The file <cyg/hal/sam9_init.inc> contains definitions of helper macros which may be used by SAM9 platform HALs in order to initialise common SAM9 subsystems without excessive duplication between the platform HALs. Typically this file will be included by the hal_platform_setup.h header in the platform HAL, in turn included from the architectural HAL file vectors.S.
This file is solely intended to be used by platform HALs. At the same time, it is only present to assist initialization, and platform HALs are not obliged to use it if their startup requirements vary.