source: rtems/bsps/arm/lpc176x/include/bsp.h @ ba619b7f

Last change on this file since ba619b7f was ba619b7f, checked in by Joel Sherrill <joel@…>, on 03/01/22 at 21:38:20

bsps/arm/: Scripted embedded brains header file clean up

Updates #4625.

  • Property mode set to 100644
File size: 1.8 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup RTEMSBSPsARMLPC176X
5 *
6 * @brief Global BSP definitions.
7 */
8
9/*
10 * Copyright (c) 2008-2013 embedded brains GmbH.  All rights reserved.
11 *
12 * The license and distribution terms for this file may be
13 * found in the file LICENSE in this distribution or at
14 * http://www.rtems.org/license/LICENSE.
15 */
16
17#ifndef LIBBSP_ARM_LPC176X_BSP_H
18#define LIBBSP_ARM_LPC176X_BSP_H
19
20/**
21 * @defgroup RTEMSBSPsARMLPC176X NXP LPC176X
22 *
23 * @ingroup RTEMSBSPsARM
24 *
25 * @brief NXP LPC176X Board Support Package.
26 *
27 * @{
28 */
29
30#include <bspopts.h>
31
32#define LPC176X_PCLK ( LPC176X_CCLK / LPC176X_PCLKDIV )
33#define LPC176X_MPU_REGION_COUNT 8u
34
35#define BSP_FEATURE_IRQ_EXTENSION
36#define BSP_ARMV7M_IRQ_PRIORITY_DEFAULT ( 29u << 3u )
37#define BSP_ARMV7M_SYSTICK_PRIORITY ( 30u << 3u )
38#define BSP_ARMV7M_SYSTICK_FREQUENCY LPC176X_CCLK
39
40#ifndef ASM
41
42#include <rtems.h>
43#include <bsp/default-initial-extension.h>
44
45#ifdef __cplusplus
46extern "C" {
47#endif /* __cplusplus */
48
49struct rtems_bsdnet_ifconfig;
50
51/**
52 * @brief Optimized idle task.
53 *
54 * This idle task sets the power mode to idle.  This causes the processor
55 * clock to be stopped, while on-chip peripherals remain active.
56 * Any enabled interrupt from a peripheral or an external interrupt source
57 *  will cause the processor to resume execution.
58 *
59 * To enable the idle task use the following in the system configuration:
60 *
61 * @code
62 * #include <bsp.h>
63 *
64 * #define CONFIGURE_INIT
65 *
66 * #define CONFIGURE_IDLE_TASK_BODY bsp_idle_thread
67 *
68 * #include <confdefs.h>
69 * @endcode
70 */
71void*bsp_idle_thread( uintptr_t ignored );
72
73#define BSP_CONSOLE_UART_BASE 0x4000C000U
74
75/**
76 * @brief Restarts the bsp with "addr" address
77 * @param addr Address used to restart the bsp
78 */
79void bsp_restart( const void *addr );
80
81#ifdef __cplusplus
82}
83#endif /* __cplusplus */
84
85#endif /* ASM */
86
87/** @} */
88
89#endif /* LIBBSP_ARM_LPC176X_BSP_H */
Note: See TracBrowser for help on using the repository browser.