1 /*
2  * Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef _HARDWARE_PLATFORM_DEFS_H
8 #define _HARDWARE_PLATFORM_DEFS_H
9 
10 // This header is included from C and assembler - only define macros
11 
12 #include "hardware/regs/addressmap.h"
13 
14 #define NUM_CORES 2u
15 #define NUM_DMA_CHANNELS 12u
16 #define NUM_IRQS 32u
17 #define NUM_PIOS 2u
18 #define NUM_PIO_STATE_MACHINES 4u
19 #define NUM_PWM_SLICES 8u
20 #define NUM_SPIN_LOCKS 32u
21 #define NUM_UARTS 2u
22 #define NUM_BANK0_GPIOS 30u
23 
24 #define PIO_INSTRUCTION_COUNT 32u
25 
26 #define XOSC_MHZ 12u
27 
28 // PICO_CONFIG: PICO_STACK_SIZE, Stack Size, min=0x100, default=0x800, advanced=true, group=pico_standard_link
29 #ifndef PICO_STACK_SIZE
30 #define PICO_STACK_SIZE 0x800u
31 #endif
32 
33 // PICO_CONFIG: PICO_HEAP_SIZE, Heap size to reserve, min=0x100, default=0x800, advanced=true, group=pico_standard_link
34 #ifndef PICO_HEAP_SIZE
35 #define PICO_HEAP_SIZE 0x800
36 #endif
37 
38 // PICO_CONFIG: PICO_NO_RAM_VECTOR_TABLE, Enable/disable the RAM vector table, type=bool, default=0, advanced=true, group=pico_runtime
39 #ifndef PICO_NO_RAM_VECTOR_TABLE
40 #define PICO_NO_RAM_VECTOR_TABLE 0
41 #endif
42 
43 #ifndef PICO_FLASH_SIZE_BYTES
44 #define PICO_FLASH_SIZE_BYTES (2 * 1024 * 1024)
45 #endif
46 
47 #endif
48 
49