diff options
Diffstat (limited to 'qemu/roms/u-boot/include/bootcount.h')
-rw-r--r-- | qemu/roms/u-boot/include/bootcount.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/qemu/roms/u-boot/include/bootcount.h b/qemu/roms/u-boot/include/bootcount.h new file mode 100644 index 000000000..06fb4d357 --- /dev/null +++ b/qemu/roms/u-boot/include/bootcount.h @@ -0,0 +1,40 @@ +/* + * (C) Copyright 2012 + * Stefan Roese, DENX Software Engineering, sr@denx.de. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <asm/io.h> +#include <asm/byteorder.h> + +#if !defined(CONFIG_SYS_BOOTCOUNT_LE) && !defined(CONFIG_SYS_BOOTCOUNT_BE) +# if __BYTE_ORDER == __LITTLE_ENDIAN +# define CONFIG_SYS_BOOTCOUNT_LE +# else +# define CONFIG_SYS_BOOTCOUNT_BE +# endif +#endif + +#ifdef CONFIG_SYS_BOOTCOUNT_LE +static inline void raw_bootcount_store(volatile u32 *addr, u32 data) +{ + out_le32(addr, data); +} + +static inline u32 raw_bootcount_load(volatile u32 *addr) +{ + return in_le32(addr); +} +#else +static inline void raw_bootcount_store(volatile u32 *addr, u32 data) +{ + out_be32(addr, data); +} + +static inline u32 raw_bootcount_load(volatile u32 *addr) +{ + return in_be32(addr); +} +#endif |