---
name: "boot.h"
section: "3avr"
platform: "linux"
package: "avr-libc"
version: "1:2.2.1-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/boot.h"
---

# boot.h(3avr)

## NAME

boot.h

## SYNOPSIS

### Macros

\#define **BOOTLOADER\_SECTION**   \_\_attribute\_\_ ((\_\_section\_\_('.bootloader')))\
 \#define **boot\_spm\_interrupt\_enable**()   (\_\_SPM\_REG \|= (**uint8\_t**)**\_BV**(SPMIE))\
 \#define **boot\_spm\_interrupt\_disable**()   (\_\_SPM\_REG &= (**uint8\_t**)~**\_BV**(SPMIE))\
 \#define **boot\_is\_spm\_interrupt**()   (\_\_SPM\_REG & (**uint8\_t**)**\_BV**(SPMIE))\
 \#define **boot\_rww\_busy**()   (\_\_SPM\_REG & (**uint8\_t**)**\_BV**(\_\_COMMON\_ASB))\
 \#define **boot\_spm\_busy**()   (\_\_SPM\_REG & (**uint8\_t**)**\_BV**(\_\_SPM\_ENABLE))\
 \#define **boot\_spm\_busy\_wait**()   do{}while(**boot\_spm\_busy**())\
 \#define **GET\_LOW\_FUSE\_BITS**   (0x0000)\
 \#define **GET\_LOCK\_BITS**   (0x0001)\
 \#define **GET\_EXTENDED\_FUSE\_BITS**   (0x0002)\
 \#define **GET\_HIGH\_FUSE\_BITS**   (0x0003)\
 \#define **boot\_lock\_fuse\_bits\_get**(address)\
 \#define **boot\_signature\_byte\_get**(addr)\
 \#define **boot\_page\_fill**(address,  data)   \_\_boot\_page\_fill\_normal(address, data)\
 \#define **boot\_page\_erase**(address)   \_\_boot\_page\_erase\_normal(address)\
 \#define **boot\_page\_write**(address)   \_\_boot\_page\_write\_normal(address)\
 \#define **boot\_rww\_enable**()   \_\_boot\_rww\_enable()\
 \#define **boot\_lock\_bits\_set**(lock\_bits)   \_\_boot\_lock\_bits\_set(lock\_bits)\
 \#define **boot\_page\_fill\_safe**(address,  data)\
 \#define **boot\_page\_erase\_safe**(address)\
 \#define **boot\_page\_write\_safe**(address)\
 \#define **boot\_rww\_enable\_safe**()\
 \#define **boot\_lock\_bits\_set\_safe**(lock\_bits)\

## Author

Generated automatically by Doxygen for AVR-LibC from the source code.
