Lines Matching full:regs
48 static int is_flash_locked(FLASH_TypeDef *regs) in is_flash_locked() argument
50 return !!(regs->CR & FLASH_CR_LOCK); in is_flash_locked()
53 static void write_enable(FLASH_TypeDef *regs) in write_enable() argument
55 regs->CR |= FLASH_CR_PG; in write_enable()
58 static void write_disable(FLASH_TypeDef *regs) in write_disable() argument
60 regs->CR &= (~FLASH_CR_PG); in write_disable()
63 static void erase_page_begin(FLASH_TypeDef *regs, unsigned int page) in erase_page_begin() argument
66 regs->CR |= FLASH_CR_PER; in erase_page_begin()
67 regs->AR = FLASH_STM32_BASE_ADDRESS + page * FLASH_PAGE_SIZE; in erase_page_begin()
72 regs->CR |= FLASH_CR_STRT; in erase_page_begin()
75 static void erase_page_end(FLASH_TypeDef *regs) in erase_page_end() argument
77 regs->CR &= ~FLASH_CR_PER; in erase_page_end()
82 static int is_flash_locked(FLASH_TypeDef *regs) in is_flash_locked() argument
84 return !!(regs->PECR & FLASH_PECR_PRGLOCK); in is_flash_locked()
87 static void write_enable(FLASH_TypeDef *regs) in write_enable() argument
91 regs->PECR |= FLASH_PECR_PROG; in write_enable()
95 static void write_disable(FLASH_TypeDef *regs) in write_disable() argument
98 regs->PECR &= ~FLASH_PECR_PROG; in write_disable()
101 static void erase_page_begin(FLASH_TypeDef *regs, unsigned int page) in erase_page_begin() argument
108 regs->PECR |= FLASH_PECR_ERASE; in erase_page_begin()
109 regs->PECR |= FLASH_PECR_PROG; in erase_page_begin()
116 static void erase_page_end(FLASH_TypeDef *regs) in erase_page_end() argument
119 regs->PECR &= ~FLASH_PECR_PROG; in erase_page_end()
120 regs->PECR &= ~FLASH_PECR_ERASE; in erase_page_end()
129 FLASH_TypeDef *regs = FLASH_STM32_REGS(dev); in write_value() local
133 if (is_flash_locked(regs)) { in write_value()
151 write_enable(regs); in write_value()
163 write_disable(regs); in write_value()
172 FLASH_TypeDef *regs = FLASH_STM32_REGS(dev); in flash_stm32_block_erase_loop() local
176 if (is_flash_locked(regs)) { in flash_stm32_block_erase_loop()
188 erase_page_begin(regs, i); in flash_stm32_block_erase_loop()
191 erase_page_end(regs); in flash_stm32_block_erase_loop()