Commit 4cd9d2bf authored by Adrian Ng Ho Yin's avatar Adrian Ng Ho Yin Committed by Alexandre Belloni
Browse files

i3c: dw: use FIELD_PREP for device address table macros



Add DEV_ADDR_TABLE_DYNAMIC_MASK / DEV_ADDR_TABLE_DYNAMIC_ADDR(x) for
dynamic device addresses and DEV_ADDR_TABLE_STATIC_MASK /
DEV_ADDR_TABLE_STATIC_ADDR(x) for static device addresses in the I3C
address table. Replace manual shift-and-mask with FIELD_PREP() for both
dynamic and static addresses for clarity and maintainability.

Signed-off-by: default avatarAdrian Ng Ho Yin <adrianhoyin.ng@altera.com>
Reviewed-by: default avatarFrank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/d72896e510db1870d26a794f131f600c7e42cf00.1765529948.git.adrianhoyin.ng@altera.com


Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
parent ec17f143
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -207,13 +207,15 @@

#define DW_I3C_DEV_NACK_RETRY_CNT_MAX	0x3
#define DEV_ADDR_TABLE_DEV_NACK_RETRY_MASK   GENMASK(30, 29)
#define DEV_ADDR_TABLE_DYNAMIC_MASK		GENMASK(23, 16)
#define DEV_ADDR_TABLE_STATIC_MASK		GENMASK(6, 0)
#define DEV_ADDR_TABLE_IBI_MDB		BIT(12)
#define DEV_ADDR_TABLE_SIR_REJECT	BIT(13)
#define DEV_ADDR_TABLE_DEV_NACK_RETRY_CNT(x) \
	FIELD_PREP(DEV_ADDR_TABLE_DEV_NACK_RETRY_MASK, (x))
#define DEV_ADDR_TABLE_LEGACY_I2C_DEV	BIT(31)
#define DEV_ADDR_TABLE_DYNAMIC_ADDR(x)	(((x) << 16) & GENMASK(23, 16))
#define DEV_ADDR_TABLE_STATIC_ADDR(x)	((x) & GENMASK(6, 0))
#define DEV_ADDR_TABLE_DYNAMIC_ADDR(x) FIELD_PREP(DEV_ADDR_TABLE_DYNAMIC_MASK, x)
#define DEV_ADDR_TABLE_STATIC_ADDR(x) FIELD_PREP(DEV_ADDR_TABLE_STATIC_MASK, x)
#define DEV_ADDR_TABLE_LOC(start, idx)	((start) + ((idx) << 2))

#define I3C_BUS_SDR1_SCL_RATE		8000000