OpenOCD
stm32l4x.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  stm32l4_work_area::flash_async_algorithm_circbuf
 
struct  stm32l4_work_area::stm32l4_loader_params
 
struct  stm32l4_work_area
 

Macros

#define BIT(nr)   (1UL << (nr))
 
#define DBGMCU_IDCODE_G0   0x40015800
 
#define DBGMCU_IDCODE_L4_G4   0xE0042000
 
#define DBGMCU_IDCODE_L5   0xE0044000
 
#define DEVID_STM32C01XX   0x443
 
#define DEVID_STM32C03XX   0x453
 
#define DEVID_STM32G03_G04XX   0x466
 
#define DEVID_STM32G05_G06XX   0x456
 
#define DEVID_STM32G07_G08XX   0x460
 
#define DEVID_STM32G0B_G0CXX   0x467
 
#define DEVID_STM32G43_G44XX   0x468
 
#define DEVID_STM32G47_G48XX   0x469
 
#define DEVID_STM32G49_G4AXX   0x479
 
#define DEVID_STM32L41_L42XX   0x464
 
#define DEVID_STM32L43_L44XX   0x435
 
#define DEVID_STM32L45_L46XX   0x462
 
#define DEVID_STM32L47_L48XX   0x415
 
#define DEVID_STM32L49_L4AXX   0x461
 
#define DEVID_STM32L4P_L4QXX   0x471
 
#define DEVID_STM32L4R_L4SXX   0x470
 
#define DEVID_STM32L55_L56XX   0x472
 
#define DEVID_STM32U53_U54XX   0x455
 
#define DEVID_STM32U57_U58XX   0x482
 
#define DEVID_STM32U59_U5AXX   0x481
 
#define DEVID_STM32WB1XX   0x494
 
#define DEVID_STM32WB3XX   0x496
 
#define DEVID_STM32WB5XX   0x495
 
#define DEVID_STM32WBA5X   0x492
 
#define DEVID_STM32WLE_WL5XX   0x497
 
#define FLASH_BKER   BIT(11)
 
#define FLASH_BKER_G0   BIT(13)
 
#define FLASH_BSY   BIT(16)
 
#define FLASH_BSY2   BIT(17)
 
#define FLASH_EOP   BIT(0) /* End of operation */
 
#define FLASH_EOPIE   BIT(24)
 
#define FLASH_ERRIE   BIT(25)
 
#define FLASH_ERROR
 
#define FLASH_G0_DUAL_BANK   BIT(21)
 
#define FLASH_G4_DUAL_BANK   BIT(22)
 
#define FLASH_L4_DUAL_BANK   BIT(21)
 
#define FLASH_L4R_DBANK   BIT(22)
 
#define FLASH_L5_DB256   BIT(21)
 
#define FLASH_L5_DBANK   BIT(22)
 
#define FLASH_LOCK   BIT(31)
 
#define FLASH_LRR_DB1M   BIT(21)
 
#define FLASH_MER1   BIT(2)
 
#define FLASH_MER2   BIT(15)
 
#define FLASH_OBL_LAUNCH   BIT(27)
 
#define FLASH_OPERR   BIT(1) /* Operation error */
 
#define FLASH_OPTLOCK   BIT(30)
 
#define FLASH_OPTSTRT   BIT(17)
 
#define FLASH_PAGE_SHIFT   3
 
#define FLASH_PER   BIT(1)
 
#define FLASH_PG   BIT(0)
 
#define FLASH_PGAERR   BIT(5) /* Programming alignment error */
 
#define FLASH_PGSERR   BIT(7) /* Programming sequence error */
 
#define FLASH_PROGERR   BIT(3) /* Programming error */
 
#define FLASH_RDP_MASK   0xFF
 
#define FLASH_SECBB1(X)   (0x80 + 4 * (X - 1))
 
#define FLASH_SECBB2(X)   (0xA0 + 4 * (X - 1))
 
#define FLASH_SECBB_NON_SECURE   0
 
#define FLASH_SECBB_SECURE   0xFFFFFFFF
 
#define FLASH_SIZERR   BIT(6) /* Size error */
 
#define FLASH_STRT   BIT(16)
 
#define FLASH_TZEN   BIT(31)
 
#define FLASH_U5_DUALBANK   BIT(21)
 
#define FLASH_WRPERR   BIT(4) /* Write protection error */
 
#define KEY1   0x45670123
 
#define KEY2   0xCDEF89AB
 
#define LDR_STACK_SIZE   100
 
#define OPTKEY1   0x08192A3B
 
#define OPTKEY2   0x4C5D6E7F
 
#define STM32_FLASH_BANK_BASE   0x08000000
 
#define STM32_FLASH_S_BANK_BASE   0x0C000000
 
#define STM32L5_REGS_SEC_OFFSET   0x10000000
 
#define UID64_DEVNUM   0x1FFF7580
 
#define UID64_IDS   0x1FFF7584
 
#define UID64_IDS_STM32WL   0x0080E115
 

Macro Definition Documentation

◆ BIT

#define BIT (   nr)    (1UL << (nr))

Definition at line 18 of file stm32l4x.h.

◆ DBGMCU_IDCODE_G0

#define DBGMCU_IDCODE_G0   0x40015800

Definition at line 80 of file stm32l4x.h.

◆ DBGMCU_IDCODE_L4_G4

#define DBGMCU_IDCODE_L4_G4   0xE0042000

Definition at line 81 of file stm32l4x.h.

◆ DBGMCU_IDCODE_L5

#define DBGMCU_IDCODE_L5   0xE0044000

Definition at line 82 of file stm32l4x.h.

◆ DEVID_STM32C01XX

#define DEVID_STM32C01XX   0x443

Definition at line 90 of file stm32l4x.h.

◆ DEVID_STM32C03XX

#define DEVID_STM32C03XX   0x453

Definition at line 91 of file stm32l4x.h.

◆ DEVID_STM32G03_G04XX

#define DEVID_STM32G03_G04XX   0x466

Definition at line 98 of file stm32l4x.h.

◆ DEVID_STM32G05_G06XX

#define DEVID_STM32G05_G06XX   0x456

Definition at line 93 of file stm32l4x.h.

◆ DEVID_STM32G07_G08XX

#define DEVID_STM32G07_G08XX   0x460

Definition at line 94 of file stm32l4x.h.

◆ DEVID_STM32G0B_G0CXX

#define DEVID_STM32G0B_G0CXX   0x467

Definition at line 99 of file stm32l4x.h.

◆ DEVID_STM32G43_G44XX

#define DEVID_STM32G43_G44XX   0x468

Definition at line 100 of file stm32l4x.h.

◆ DEVID_STM32G47_G48XX

#define DEVID_STM32G47_G48XX   0x469

Definition at line 101 of file stm32l4x.h.

◆ DEVID_STM32G49_G4AXX

#define DEVID_STM32G49_G4AXX   0x479

Definition at line 105 of file stm32l4x.h.

◆ DEVID_STM32L41_L42XX

#define DEVID_STM32L41_L42XX   0x464

Definition at line 97 of file stm32l4x.h.

◆ DEVID_STM32L43_L44XX

#define DEVID_STM32L43_L44XX   0x435

Definition at line 89 of file stm32l4x.h.

◆ DEVID_STM32L45_L46XX

#define DEVID_STM32L45_L46XX   0x462

Definition at line 96 of file stm32l4x.h.

◆ DEVID_STM32L47_L48XX

#define DEVID_STM32L47_L48XX   0x415

Definition at line 88 of file stm32l4x.h.

◆ DEVID_STM32L49_L4AXX

#define DEVID_STM32L49_L4AXX   0x461

Definition at line 95 of file stm32l4x.h.

◆ DEVID_STM32L4P_L4QXX

#define DEVID_STM32L4P_L4QXX   0x471

Definition at line 103 of file stm32l4x.h.

◆ DEVID_STM32L4R_L4SXX

#define DEVID_STM32L4R_L4SXX   0x470

Definition at line 102 of file stm32l4x.h.

◆ DEVID_STM32L55_L56XX

#define DEVID_STM32L55_L56XX   0x472

Definition at line 104 of file stm32l4x.h.

◆ DEVID_STM32U53_U54XX

#define DEVID_STM32U53_U54XX   0x455

Definition at line 92 of file stm32l4x.h.

◆ DEVID_STM32U57_U58XX

#define DEVID_STM32U57_U58XX   0x482

Definition at line 107 of file stm32l4x.h.

◆ DEVID_STM32U59_U5AXX

#define DEVID_STM32U59_U5AXX   0x481

Definition at line 106 of file stm32l4x.h.

◆ DEVID_STM32WB1XX

#define DEVID_STM32WB1XX   0x494

Definition at line 109 of file stm32l4x.h.

◆ DEVID_STM32WB3XX

#define DEVID_STM32WB3XX   0x496

Definition at line 111 of file stm32l4x.h.

◆ DEVID_STM32WB5XX

#define DEVID_STM32WB5XX   0x495

Definition at line 110 of file stm32l4x.h.

◆ DEVID_STM32WBA5X

#define DEVID_STM32WBA5X   0x492

Definition at line 108 of file stm32l4x.h.

◆ DEVID_STM32WLE_WL5XX

#define DEVID_STM32WLE_WL5XX   0x497

Definition at line 112 of file stm32l4x.h.

◆ FLASH_BKER

#define FLASH_BKER   BIT(11)

Definition at line 26 of file stm32l4x.h.

◆ FLASH_BKER_G0

#define FLASH_BKER_G0   BIT(13)

Definition at line 27 of file stm32l4x.h.

◆ FLASH_BSY

#define FLASH_BSY   BIT(16)

Definition at line 38 of file stm32l4x.h.

◆ FLASH_BSY2

#define FLASH_BSY2   BIT(17)

Definition at line 39 of file stm32l4x.h.

◆ FLASH_EOP

#define FLASH_EOP   BIT(0) /* End of operation */

Definition at line 48 of file stm32l4x.h.

◆ FLASH_EOPIE

#define FLASH_EOPIE   BIT(24)

Definition at line 31 of file stm32l4x.h.

◆ FLASH_ERRIE

#define FLASH_ERRIE   BIT(25)

Definition at line 32 of file stm32l4x.h.

◆ FLASH_ERROR

#define FLASH_ERROR
Value:
FLASH_WRPERR | FLASH_PROGERR | FLASH_OPERR)
#define FLASH_PROGERR
Definition: stm32l4x.h:46
#define FLASH_OPERR
Definition: stm32l4x.h:47
#define FLASH_PGAERR
Definition: stm32l4x.h:44
#define FLASH_SIZERR
Definition: stm32l4x.h:43
#define FLASH_PGSERR
Definition: stm32l4x.h:42

Definition at line 49 of file stm32l4x.h.

◆ FLASH_G0_DUAL_BANK

#define FLASH_G0_DUAL_BANK   BIT(21)

Definition at line 62 of file stm32l4x.h.

◆ FLASH_G4_DUAL_BANK

#define FLASH_G4_DUAL_BANK   BIT(22)

Definition at line 63 of file stm32l4x.h.

◆ FLASH_L4_DUAL_BANK

#define FLASH_L4_DUAL_BANK   BIT(21)

Definition at line 64 of file stm32l4x.h.

◆ FLASH_L4R_DBANK

#define FLASH_L4R_DBANK   BIT(22)

Definition at line 65 of file stm32l4x.h.

◆ FLASH_L5_DB256

#define FLASH_L5_DB256   BIT(21)

Definition at line 68 of file stm32l4x.h.

◆ FLASH_L5_DBANK

#define FLASH_L5_DBANK   BIT(22)

Definition at line 67 of file stm32l4x.h.

◆ FLASH_LOCK

#define FLASH_LOCK   BIT(31)

Definition at line 35 of file stm32l4x.h.

◆ FLASH_LRR_DB1M

#define FLASH_LRR_DB1M   BIT(21)

Definition at line 66 of file stm32l4x.h.

◆ FLASH_MER1

#define FLASH_MER1   BIT(2)

Definition at line 24 of file stm32l4x.h.

◆ FLASH_MER2

#define FLASH_MER2   BIT(15)

Definition at line 28 of file stm32l4x.h.

◆ FLASH_OBL_LAUNCH

#define FLASH_OBL_LAUNCH   BIT(27)

Definition at line 33 of file stm32l4x.h.

◆ FLASH_OPERR

#define FLASH_OPERR   BIT(1) /* Operation error */

Definition at line 47 of file stm32l4x.h.

◆ FLASH_OPTLOCK

#define FLASH_OPTLOCK   BIT(30)

Definition at line 34 of file stm32l4x.h.

◆ FLASH_OPTSTRT

#define FLASH_OPTSTRT   BIT(17)

Definition at line 30 of file stm32l4x.h.

◆ FLASH_PAGE_SHIFT

#define FLASH_PAGE_SHIFT   3

Definition at line 25 of file stm32l4x.h.

◆ FLASH_PER

#define FLASH_PER   BIT(1)

Definition at line 23 of file stm32l4x.h.

◆ FLASH_PG

#define FLASH_PG   BIT(0)

Definition at line 22 of file stm32l4x.h.

◆ FLASH_PGAERR

#define FLASH_PGAERR   BIT(5) /* Programming alignment error */

Definition at line 44 of file stm32l4x.h.

◆ FLASH_PGSERR

#define FLASH_PGSERR   BIT(7) /* Programming sequence error */

Definition at line 42 of file stm32l4x.h.

◆ FLASH_PROGERR

#define FLASH_PROGERR   BIT(3) /* Programming error */

Definition at line 46 of file stm32l4x.h.

◆ FLASH_RDP_MASK

#define FLASH_RDP_MASK   0xFF

Definition at line 61 of file stm32l4x.h.

◆ FLASH_SECBB1

#define FLASH_SECBB1 (   X)    (0x80 + 4 * (X - 1))

Definition at line 73 of file stm32l4x.h.

◆ FLASH_SECBB2

#define FLASH_SECBB2 (   X)    (0xA0 + 4 * (X - 1))

Definition at line 74 of file stm32l4x.h.

◆ FLASH_SECBB_NON_SECURE

#define FLASH_SECBB_NON_SECURE   0

Definition at line 77 of file stm32l4x.h.

◆ FLASH_SECBB_SECURE

#define FLASH_SECBB_SECURE   0xFFFFFFFF

Definition at line 76 of file stm32l4x.h.

◆ FLASH_SIZERR

#define FLASH_SIZERR   BIT(6) /* Size error */

Definition at line 43 of file stm32l4x.h.

◆ FLASH_STRT

#define FLASH_STRT   BIT(16)

Definition at line 29 of file stm32l4x.h.

◆ FLASH_TZEN

#define FLASH_TZEN   BIT(31)

Definition at line 70 of file stm32l4x.h.

◆ FLASH_U5_DUALBANK

#define FLASH_U5_DUALBANK   BIT(21)

Definition at line 69 of file stm32l4x.h.

◆ FLASH_WRPERR

#define FLASH_WRPERR   BIT(4) /* Write protection error */

Definition at line 45 of file stm32l4x.h.

◆ KEY1

#define KEY1   0x45670123

Definition at line 53 of file stm32l4x.h.

◆ KEY2

#define KEY2   0xCDEF89AB

Definition at line 54 of file stm32l4x.h.

◆ LDR_STACK_SIZE

#define LDR_STACK_SIZE   100

Definition at line 122 of file stm32l4x.h.

◆ OPTKEY1

#define OPTKEY1   0x08192A3B

Definition at line 57 of file stm32l4x.h.

◆ OPTKEY2

#define OPTKEY2   0x4C5D6E7F

Definition at line 58 of file stm32l4x.h.

◆ STM32_FLASH_BANK_BASE

#define STM32_FLASH_BANK_BASE   0x08000000

Definition at line 115 of file stm32l4x.h.

◆ STM32_FLASH_S_BANK_BASE

#define STM32_FLASH_S_BANK_BASE   0x0C000000

Definition at line 116 of file stm32l4x.h.

◆ STM32L5_REGS_SEC_OFFSET

#define STM32L5_REGS_SEC_OFFSET   0x10000000

Definition at line 119 of file stm32l4x.h.

◆ UID64_DEVNUM

#define UID64_DEVNUM   0x1FFF7580

Definition at line 83 of file stm32l4x.h.

◆ UID64_IDS

#define UID64_IDS   0x1FFF7584

Definition at line 84 of file stm32l4x.h.

◆ UID64_IDS_STM32WL

#define UID64_IDS_STM32WL   0x0080E115

Definition at line 85 of file stm32l4x.h.