Lines Matching refs:hnand
158 HAL_StatusTypeDef HAL_NAND_Init(NAND_HandleTypeDef *hnand, FMC_NAND_PCC_TimingTypeDef *ComSpace_Ti… in HAL_NAND_Init() argument
162 if (hnand == NULL) in HAL_NAND_Init()
167 if (hnand->State == HAL_NAND_STATE_RESET) in HAL_NAND_Init()
170 hnand->Lock = HAL_UNLOCKED; in HAL_NAND_Init()
173 if (hnand->MspInitCallback == NULL) in HAL_NAND_Init()
175 hnand->MspInitCallback = HAL_NAND_MspInit; in HAL_NAND_Init()
177 hnand->ItCallback = HAL_NAND_ITCallback; in HAL_NAND_Init()
180 hnand->MspInitCallback(hnand); in HAL_NAND_Init()
183 HAL_NAND_MspInit(hnand); in HAL_NAND_Init()
188 (void)FMC_NAND_Init(hnand->Instance, &(hnand->Init)); in HAL_NAND_Init()
191 (void)FMC_NAND_CommonSpace_Timing_Init(hnand->Instance, ComSpace_Timing, hnand->Init.NandBank); in HAL_NAND_Init()
194 (void)FMC_NAND_AttributeSpace_Timing_Init(hnand->Instance, AttSpace_Timing, hnand->Init.NandBank); in HAL_NAND_Init()
197 __FMC_NAND_ENABLE(hnand->Instance); in HAL_NAND_Init()
200 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Init()
211 HAL_StatusTypeDef HAL_NAND_DeInit(NAND_HandleTypeDef *hnand) in HAL_NAND_DeInit() argument
214 if (hnand->MspDeInitCallback == NULL) in HAL_NAND_DeInit()
216 hnand->MspDeInitCallback = HAL_NAND_MspDeInit; in HAL_NAND_DeInit()
220 hnand->MspDeInitCallback(hnand); in HAL_NAND_DeInit()
223 HAL_NAND_MspDeInit(hnand); in HAL_NAND_DeInit()
227 (void)FMC_NAND_DeInit(hnand->Instance, hnand->Init.NandBank); in HAL_NAND_DeInit()
230 hnand->State = HAL_NAND_STATE_RESET; in HAL_NAND_DeInit()
233 __HAL_UNLOCK(hnand); in HAL_NAND_DeInit()
244 __weak void HAL_NAND_MspInit(NAND_HandleTypeDef *hnand) in HAL_NAND_MspInit() argument
247 UNUSED(hnand); in HAL_NAND_MspInit()
260 __weak void HAL_NAND_MspDeInit(NAND_HandleTypeDef *hnand) in HAL_NAND_MspDeInit() argument
263 UNUSED(hnand); in HAL_NAND_MspDeInit()
277 void HAL_NAND_IRQHandler(NAND_HandleTypeDef *hnand) in HAL_NAND_IRQHandler() argument
280 if (__FMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FMC_FLAG_RISING_EDGE)) in HAL_NAND_IRQHandler()
284 hnand->ItCallback(hnand); in HAL_NAND_IRQHandler()
286 HAL_NAND_ITCallback(hnand); in HAL_NAND_IRQHandler()
290 __FMC_NAND_CLEAR_FLAG(hnand->Instance, FMC_FLAG_RISING_EDGE); in HAL_NAND_IRQHandler()
294 if (__FMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FMC_FLAG_LEVEL)) in HAL_NAND_IRQHandler()
298 hnand->ItCallback(hnand); in HAL_NAND_IRQHandler()
300 HAL_NAND_ITCallback(hnand); in HAL_NAND_IRQHandler()
304 __FMC_NAND_CLEAR_FLAG(hnand->Instance, FMC_FLAG_LEVEL); in HAL_NAND_IRQHandler()
308 if (__FMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FMC_FLAG_FALLING_EDGE)) in HAL_NAND_IRQHandler()
312 hnand->ItCallback(hnand); in HAL_NAND_IRQHandler()
314 HAL_NAND_ITCallback(hnand); in HAL_NAND_IRQHandler()
318 __FMC_NAND_CLEAR_FLAG(hnand->Instance, FMC_FLAG_FALLING_EDGE); in HAL_NAND_IRQHandler()
322 if (__FMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FMC_FLAG_FEMPT)) in HAL_NAND_IRQHandler()
326 hnand->ItCallback(hnand); in HAL_NAND_IRQHandler()
328 HAL_NAND_ITCallback(hnand); in HAL_NAND_IRQHandler()
332 __FMC_NAND_CLEAR_FLAG(hnand->Instance, FMC_FLAG_FEMPT); in HAL_NAND_IRQHandler()
343 __weak void HAL_NAND_ITCallback(NAND_HandleTypeDef *hnand) in HAL_NAND_ITCallback() argument
346 UNUSED(hnand); in HAL_NAND_ITCallback()
379 HAL_StatusTypeDef HAL_NAND_Read_ID(NAND_HandleTypeDef *hnand, NAND_IDTypeDef *pNAND_ID) in HAL_NAND_Read_ID() argument
386 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_ID()
390 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_ID()
393 __HAL_LOCK(hnand); in HAL_NAND_Read_ID()
396 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_ID()
408 if (hnand->Init.MemoryDataWidth == FMC_NAND_MEM_BUS_WIDTH_8) in HAL_NAND_Read_ID()
431 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_ID()
434 __HAL_UNLOCK(hnand); in HAL_NAND_Read_ID()
450 HAL_StatusTypeDef HAL_NAND_Reset(NAND_HandleTypeDef *hnand) in HAL_NAND_Reset() argument
455 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Reset()
459 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Reset()
462 __HAL_LOCK(hnand); in HAL_NAND_Reset()
465 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Reset()
474 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Reset()
477 __HAL_UNLOCK(hnand); in HAL_NAND_Reset()
495 HAL_StatusTypeDef HAL_NAND_ConfigDevice(NAND_HandleTypeDef *hnand, NAND_DeviceConfigTypeDef *pDevi… in HAL_NAND_ConfigDevice() argument
497 hnand->Config.PageSize = pDeviceConfig->PageSize; in HAL_NAND_ConfigDevice()
498 hnand->Config.SpareAreaSize = pDeviceConfig->SpareAreaSize; in HAL_NAND_ConfigDevice()
499 hnand->Config.BlockSize = pDeviceConfig->BlockSize; in HAL_NAND_ConfigDevice()
500 hnand->Config.BlockNbr = pDeviceConfig->BlockNbr; in HAL_NAND_ConfigDevice()
501 hnand->Config.PlaneSize = pDeviceConfig->PlaneSize; in HAL_NAND_ConfigDevice()
502 hnand->Config.PlaneNbr = pDeviceConfig->PlaneNbr; in HAL_NAND_ConfigDevice()
503 hnand->Config.ExtraCommandEnable = pDeviceConfig->ExtraCommandEnable; in HAL_NAND_ConfigDevice()
517 HAL_StatusTypeDef HAL_NAND_Read_Page_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAddr… in HAL_NAND_Read_Page_8b() argument
529 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_Page_8b()
533 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_Page_8b()
536 __HAL_LOCK(hnand); in HAL_NAND_Read_Page_8b()
539 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_Page_8b()
545 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_Page_8b()
548 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_Page_8b()
555 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_Page_8b()
557 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_8b()
580 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_8b()
610 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_Page_8b()
616 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_Page_8b()
621 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_Page_8b()
624 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_8b()
636 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Read_Page_8b()
653 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_Page_8b()
656 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_8b()
675 HAL_StatusTypeDef HAL_NAND_Read_Page_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAdd… in HAL_NAND_Read_Page_16b() argument
687 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_Page_16b()
691 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_Page_16b()
694 __HAL_LOCK(hnand); in HAL_NAND_Read_Page_16b()
697 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_Page_16b()
703 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_Page_16b()
706 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_Page_16b()
713 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_Page_16b()
715 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_16b()
738 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_16b()
767 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_Page_16b()
773 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_Page_16b()
778 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_Page_16b()
781 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_16b()
793 if (hnand->Init.MemoryDataWidth == FMC_NAND_MEM_BUS_WIDTH_8) in HAL_NAND_Read_Page_16b()
795 hnand->Config.PageSize = hnand->Config.PageSize / 2U; in HAL_NAND_Read_Page_16b()
804 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Read_Page_16b()
821 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_Page_16b()
824 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_16b()
843 HAL_StatusTypeDef HAL_NAND_Write_Page_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAdd… in HAL_NAND_Write_Page_8b() argument
855 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_Page_8b()
859 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_Page_8b()
862 __HAL_LOCK(hnand); in HAL_NAND_Write_Page_8b()
865 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_Page_8b()
871 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_Page_8b()
874 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_Page_8b()
883 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_Page_8b()
885 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_8b()
908 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_8b()
935 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Write_Page_8b()
949 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_Page_8b()
954 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_Page_8b()
957 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_8b()
974 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_Page_8b()
977 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_8b()
996 HAL_StatusTypeDef HAL_NAND_Write_Page_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAd… in HAL_NAND_Write_Page_16b() argument
1008 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_Page_16b()
1012 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_Page_16b()
1015 __HAL_LOCK(hnand); in HAL_NAND_Write_Page_16b()
1018 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_Page_16b()
1024 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_Page_16b()
1027 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_Page_16b()
1036 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_Page_16b()
1038 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_16b()
1061 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_16b()
1088 if (hnand->Init.MemoryDataWidth == FMC_NAND_MEM_BUS_WIDTH_8) in HAL_NAND_Write_Page_16b()
1090 hnand->Config.PageSize = hnand->Config.PageSize / 2U; in HAL_NAND_Write_Page_16b()
1099 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Write_Page_16b()
1113 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_Page_16b()
1118 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_Page_16b()
1121 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_16b()
1138 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_Page_16b()
1141 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_16b()
1160 HAL_StatusTypeDef HAL_NAND_Read_SpareArea_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *… in HAL_NAND_Read_SpareArea_8b() argument
1173 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_SpareArea_8b()
1177 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_SpareArea_8b()
1180 __HAL_LOCK(hnand); in HAL_NAND_Read_SpareArea_8b()
1183 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_SpareArea_8b()
1189 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_SpareArea_8b()
1192 columnaddress = COLUMN_ADDRESS(hnand); in HAL_NAND_Read_SpareArea_8b()
1195 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_SpareArea_8b()
1198 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_SpareArea_8b()
1204 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_8b()
1231 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_8b()
1260 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_SpareArea_8b()
1266 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_SpareArea_8b()
1271 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_SpareArea_8b()
1274 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_8b()
1286 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Read_SpareArea_8b()
1303 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_SpareArea_8b()
1306 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_8b()
1325 HAL_StatusTypeDef HAL_NAND_Read_SpareArea_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef … in HAL_NAND_Read_SpareArea_16b() argument
1338 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_SpareArea_16b()
1342 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_SpareArea_16b()
1345 __HAL_LOCK(hnand); in HAL_NAND_Read_SpareArea_16b()
1348 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_SpareArea_16b()
1354 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_SpareArea_16b()
1357 columnaddress = (uint32_t)(COLUMN_ADDRESS(hnand)); in HAL_NAND_Read_SpareArea_16b()
1360 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_SpareArea_16b()
1363 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_SpareArea_16b()
1369 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_16b()
1396 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_16b()
1425 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_SpareArea_16b()
1431 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_SpareArea_16b()
1436 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_SpareArea_16b()
1439 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_16b()
1451 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Read_SpareArea_16b()
1468 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_SpareArea_16b()
1471 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_16b()
1490 HAL_StatusTypeDef HAL_NAND_Write_SpareArea_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef … in HAL_NAND_Write_SpareArea_8b() argument
1503 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_SpareArea_8b()
1507 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_SpareArea_8b()
1510 __HAL_LOCK(hnand); in HAL_NAND_Write_SpareArea_8b()
1513 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_SpareArea_8b()
1519 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_SpareArea_8b()
1522 columnaddress = COLUMN_ADDRESS(hnand); in HAL_NAND_Write_SpareArea_8b()
1525 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_SpareArea_8b()
1528 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_SpareArea_8b()
1536 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_8b()
1565 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_8b()
1592 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Write_SpareArea_8b()
1606 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_SpareArea_8b()
1611 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_SpareArea_8b()
1614 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_8b()
1631 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_SpareArea_8b()
1634 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_8b()
1653 HAL_StatusTypeDef HAL_NAND_Write_SpareArea_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef… in HAL_NAND_Write_SpareArea_16b() argument
1666 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_SpareArea_16b()
1670 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_SpareArea_16b()
1673 __HAL_LOCK(hnand); in HAL_NAND_Write_SpareArea_16b()
1676 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_SpareArea_16b()
1682 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_SpareArea_16b()
1685 columnaddress = (uint32_t)(COLUMN_ADDRESS(hnand)); in HAL_NAND_Write_SpareArea_16b()
1688 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_SpareArea_16b()
1691 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_SpareArea_16b()
1699 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_16b()
1728 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_16b()
1755 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Write_SpareArea_16b()
1769 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_SpareArea_16b()
1774 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_SpareArea_16b()
1777 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_16b()
1794 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_SpareArea_16b()
1797 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_16b()
1814 HAL_StatusTypeDef HAL_NAND_Erase_Block(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAddre… in HAL_NAND_Erase_Block() argument
1819 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Erase_Block()
1823 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Erase_Block()
1826 __HAL_LOCK(hnand); in HAL_NAND_Erase_Block()
1829 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Erase_Block()
1837 …uint8_t *)((uint32_t)(deviceaddress | ADDR_AREA)) = ADDR_1ST_CYCLE(ARRAY_ADDRESS(pAddress, hnand)); in HAL_NAND_Erase_Block()
1839 …uint8_t *)((uint32_t)(deviceaddress | ADDR_AREA)) = ADDR_2ND_CYCLE(ARRAY_ADDRESS(pAddress, hnand)); in HAL_NAND_Erase_Block()
1841 …uint8_t *)((uint32_t)(deviceaddress | ADDR_AREA)) = ADDR_3RD_CYCLE(ARRAY_ADDRESS(pAddress, hnand)); in HAL_NAND_Erase_Block()
1848 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Erase_Block()
1851 __HAL_UNLOCK(hnand); in HAL_NAND_Erase_Block()
1870 uint32_t HAL_NAND_Address_Inc(const NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress) in HAL_NAND_Address_Inc() argument
1878 if (pAddress->Page == hnand->Config.BlockSize) in HAL_NAND_Address_Inc()
1883 if (pAddress->Block == hnand->Config.PlaneSize) in HAL_NAND_Address_Inc()
1888 if (pAddress->Plane == (hnand->Config.PlaneNbr)) in HAL_NAND_Address_Inc()
1911 HAL_StatusTypeDef HAL_NAND_RegisterCallback(NAND_HandleTypeDef *hnand, HAL_NAND_CallbackIDTypeDef C… in HAL_NAND_RegisterCallback() argument
1921 if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_RegisterCallback()
1926 hnand->MspInitCallback = pCallback; in HAL_NAND_RegisterCallback()
1929 hnand->MspDeInitCallback = pCallback; in HAL_NAND_RegisterCallback()
1932 hnand->ItCallback = pCallback; in HAL_NAND_RegisterCallback()
1940 else if (hnand->State == HAL_NAND_STATE_RESET) in HAL_NAND_RegisterCallback()
1945 hnand->MspInitCallback = pCallback; in HAL_NAND_RegisterCallback()
1948 hnand->MspDeInitCallback = pCallback; in HAL_NAND_RegisterCallback()
1976 HAL_StatusTypeDef HAL_NAND_UnRegisterCallback(NAND_HandleTypeDef *hnand, HAL_NAND_CallbackIDTypeDef… in HAL_NAND_UnRegisterCallback() argument
1980 if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_UnRegisterCallback()
1985 hnand->MspInitCallback = HAL_NAND_MspInit; in HAL_NAND_UnRegisterCallback()
1988 hnand->MspDeInitCallback = HAL_NAND_MspDeInit; in HAL_NAND_UnRegisterCallback()
1991 hnand->ItCallback = HAL_NAND_ITCallback; in HAL_NAND_UnRegisterCallback()
1999 else if (hnand->State == HAL_NAND_STATE_RESET) in HAL_NAND_UnRegisterCallback()
2004 hnand->MspInitCallback = HAL_NAND_MspInit; in HAL_NAND_UnRegisterCallback()
2007 hnand->MspDeInitCallback = HAL_NAND_MspDeInit; in HAL_NAND_UnRegisterCallback()
2051 HAL_StatusTypeDef HAL_NAND_ECC_Enable(NAND_HandleTypeDef *hnand) in HAL_NAND_ECC_Enable() argument
2054 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_ECC_Enable()
2058 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_ECC_Enable()
2061 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_ECC_Enable()
2064 (void)FMC_NAND_ECC_Enable(hnand->Instance, hnand->Init.NandBank); in HAL_NAND_ECC_Enable()
2067 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_ECC_Enable()
2083 HAL_StatusTypeDef HAL_NAND_ECC_Disable(NAND_HandleTypeDef *hnand) in HAL_NAND_ECC_Disable() argument
2086 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_ECC_Disable()
2090 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_ECC_Disable()
2093 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_ECC_Disable()
2096 (void)FMC_NAND_ECC_Disable(hnand->Instance, hnand->Init.NandBank); in HAL_NAND_ECC_Disable()
2099 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_ECC_Disable()
2117 HAL_StatusTypeDef HAL_NAND_GetECC(NAND_HandleTypeDef *hnand, uint32_t *ECCval, uint32_t Timeout) in HAL_NAND_GetECC() argument
2122 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_GetECC()
2126 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_GetECC()
2129 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_GetECC()
2132 status = FMC_NAND_GetECC(hnand->Instance, ECCval, hnand->Init.NandBank, Timeout); in HAL_NAND_GetECC()
2135 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_GetECC()
2171 HAL_NAND_StateTypeDef HAL_NAND_GetState(const NAND_HandleTypeDef *hnand) in HAL_NAND_GetState() argument
2173 return hnand->State; in HAL_NAND_GetState()
2182 uint32_t HAL_NAND_Read_Status(const NAND_HandleTypeDef *hnand) in HAL_NAND_Read_Status() argument
2186 UNUSED(hnand); in HAL_NAND_Read_Status()