mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-02 09:46:37 +03:00
arm: mach-k3: arm: mach-k3: Add writel_verify macro for register write verification
Add a helper macro to write and verify a 32-bit value to a memory-mapped register. This is essential for hardware errata workarounds that require confirmation that register writes have taken effect before proceeding with initialization. Signed-off-by: Udit Kumar <u-kumar1@ti.com>
This commit is contained in:
@@ -126,4 +126,14 @@ struct rom_extended_boot_data {
|
||||
|
||||
u32 get_boot_device(void);
|
||||
const char *get_reset_reason(void);
|
||||
|
||||
#define writel_verify(val, addr) \
|
||||
do { \
|
||||
u32 readback; \
|
||||
writel(val, addr); \
|
||||
readback = readl(addr); \
|
||||
if (readback != val) \
|
||||
printf("writel_verify failed: addr=0x%p, expected=0x%x, got=0x%x\n", \
|
||||
(void *)(addr), (val), readback); \
|
||||
} while (0)
|
||||
#endif /* _ASM_ARCH_HARDWARE_H_ */
|
||||
|
||||
Reference in New Issue
Block a user