Skip to content

Commit 923201a

Browse files
iandmorrisnashif
authored andcommitted
drivers: pinctrl: ra: fix write-protect register access
The write protect register (PWPR) found on RA Microcontrollers is an 8-bit register at an odd address. It was being accessed using a pointer to a uint32_t which causes a fault on some devices in the series. Signed-off-by: Ian Morris <[email protected]>
1 parent 9eb0a55 commit 923201a

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

drivers/pinctrl/pinctrl_ra.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,14 @@ static inline void pinctrl_ra_write_PmnFPS(size_t port, size_t pin, uint32_t val
2828
sys_write32(value, DT_INST_REG_ADDR_BY_NAME(0, pfs) + (port * PIN_NUM + pin) * 4);
2929
}
3030

31-
static inline uint32_t pinctrl_ra_read_PMISC_PWPR(size_t port, size_t pin)
31+
static inline uint8_t pinctrl_ra_read_PMISC_PWPR(size_t port, size_t pin)
3232
{
33-
return sys_read32(DT_INST_REG_ADDR_BY_NAME(0, pmisc_pwpr));
33+
return sys_read8(DT_INST_REG_ADDR_BY_NAME(0, pmisc_pwpr));
3434
}
3535

36-
static inline void pinctrl_ra_write_PMISC_PWPR(uint32_t value)
36+
static inline void pinctrl_ra_write_PMISC_PWPR(uint8_t value)
3737
{
38-
sys_write32(value, DT_INST_REG_ADDR_BY_NAME(0, pmisc_pwpr));
38+
sys_write8(value, DT_INST_REG_ADDR_BY_NAME(0, pmisc_pwpr));
3939
}
4040

4141
static void pinctrl_ra_configure_pfs(const pinctrl_soc_pin_t *pinc)

0 commit comments

Comments
 (0)