Lines Matching refs:hnand

158 HAL_StatusTypeDef  HAL_NAND_Init(NAND_HandleTypeDef *hnand, FSMC_NAND_PCC_TimingTypeDef *ComSpace_T…  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)FSMC_NAND_Init(hnand->Instance, &(hnand->Init)); in HAL_NAND_Init()
191 (void)FSMC_NAND_CommonSpace_Timing_Init(hnand->Instance, ComSpace_Timing, hnand->Init.NandBank); in HAL_NAND_Init()
194 …(void)FSMC_NAND_AttributeSpace_Timing_Init(hnand->Instance, AttSpace_Timing, hnand->Init.NandBank); in HAL_NAND_Init()
197 __FSMC_NAND_ENABLE(hnand->Instance, hnand->Init.NandBank); 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)FSMC_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 (__FSMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_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 __FSMC_NAND_CLEAR_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_FLAG_RISING_EDGE); in HAL_NAND_IRQHandler()
294 if (__FSMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_FLAG_LEVEL)) in HAL_NAND_IRQHandler()
298 hnand->ItCallback(hnand); in HAL_NAND_IRQHandler()
300 HAL_NAND_ITCallback(hnand); in HAL_NAND_IRQHandler()
304 __FSMC_NAND_CLEAR_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_FLAG_LEVEL); in HAL_NAND_IRQHandler()
308 if (__FSMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_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 __FSMC_NAND_CLEAR_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_FLAG_FALLING_EDGE); in HAL_NAND_IRQHandler()
322 if (__FSMC_NAND_GET_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_FLAG_FEMPT)) in HAL_NAND_IRQHandler()
326 hnand->ItCallback(hnand); in HAL_NAND_IRQHandler()
328 HAL_NAND_ITCallback(hnand); in HAL_NAND_IRQHandler()
332 __FSMC_NAND_CLEAR_FLAG(hnand->Instance, hnand->Init.NandBank, FSMC_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()
399 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Read_ID()
415 if (hnand->Init.MemoryDataWidth == FSMC_NAND_PCC_MEM_BUS_WIDTH_8) in HAL_NAND_Read_ID()
438 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_ID()
441 __HAL_UNLOCK(hnand); in HAL_NAND_Read_ID()
457 HAL_StatusTypeDef HAL_NAND_Reset(NAND_HandleTypeDef *hnand) in HAL_NAND_Reset() argument
462 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Reset()
466 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Reset()
469 __HAL_LOCK(hnand); in HAL_NAND_Reset()
472 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Reset()
475 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Reset()
488 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Reset()
491 __HAL_UNLOCK(hnand); in HAL_NAND_Reset()
509 HAL_StatusTypeDef HAL_NAND_ConfigDevice(NAND_HandleTypeDef *hnand, const NAND_DeviceConfigTypeDef … in HAL_NAND_ConfigDevice() argument
511 hnand->Config.PageSize = pDeviceConfig->PageSize; in HAL_NAND_ConfigDevice()
512 hnand->Config.SpareAreaSize = pDeviceConfig->SpareAreaSize; in HAL_NAND_ConfigDevice()
513 hnand->Config.BlockSize = pDeviceConfig->BlockSize; in HAL_NAND_ConfigDevice()
514 hnand->Config.BlockNbr = pDeviceConfig->BlockNbr; in HAL_NAND_ConfigDevice()
515 hnand->Config.PlaneSize = pDeviceConfig->PlaneSize; in HAL_NAND_ConfigDevice()
516 hnand->Config.PlaneNbr = pDeviceConfig->PlaneNbr; in HAL_NAND_ConfigDevice()
517 hnand->Config.ExtraCommandEnable = pDeviceConfig->ExtraCommandEnable; in HAL_NAND_ConfigDevice()
531 HAL_StatusTypeDef HAL_NAND_Read_Page_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAddr… in HAL_NAND_Read_Page_8b() argument
543 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_Page_8b()
547 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_Page_8b()
550 __HAL_LOCK(hnand); in HAL_NAND_Read_Page_8b()
553 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_Page_8b()
556 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Read_Page_8b()
566 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_Page_8b()
569 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_Page_8b()
576 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_Page_8b()
578 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_8b()
601 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_8b()
631 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_Page_8b()
637 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_Page_8b()
642 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_Page_8b()
645 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_8b()
657 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Read_Page_8b()
674 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_Page_8b()
677 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_8b()
696 HAL_StatusTypeDef HAL_NAND_Read_Page_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAdd… in HAL_NAND_Read_Page_16b() argument
708 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_Page_16b()
712 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_Page_16b()
715 __HAL_LOCK(hnand); in HAL_NAND_Read_Page_16b()
718 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_Page_16b()
721 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Read_Page_16b()
731 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_Page_16b()
734 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_Page_16b()
741 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_Page_16b()
743 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_16b()
766 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_Page_16b()
795 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_Page_16b()
801 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_Page_16b()
806 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_Page_16b()
809 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_16b()
821 if (hnand->Init.MemoryDataWidth == FSMC_NAND_PCC_MEM_BUS_WIDTH_8) in HAL_NAND_Read_Page_16b()
823 hnand->Config.PageSize = hnand->Config.PageSize / 2U; in HAL_NAND_Read_Page_16b()
832 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Read_Page_16b()
849 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_Page_16b()
852 __HAL_UNLOCK(hnand); in HAL_NAND_Read_Page_16b()
871 HAL_StatusTypeDef HAL_NAND_Write_Page_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAdd… in HAL_NAND_Write_Page_8b() argument
883 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_Page_8b()
887 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_Page_8b()
890 __HAL_LOCK(hnand); in HAL_NAND_Write_Page_8b()
893 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_Page_8b()
896 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Write_Page_8b()
906 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_Page_8b()
909 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_Page_8b()
918 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_Page_8b()
920 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_8b()
943 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_8b()
970 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Write_Page_8b()
984 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_Page_8b()
989 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_Page_8b()
992 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_8b()
1009 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_Page_8b()
1012 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_8b()
1031 HAL_StatusTypeDef HAL_NAND_Write_Page_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAd… in HAL_NAND_Write_Page_16b() argument
1043 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_Page_16b()
1047 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_Page_16b()
1050 __HAL_LOCK(hnand); in HAL_NAND_Write_Page_16b()
1053 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_Page_16b()
1056 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Write_Page_16b()
1066 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_Page_16b()
1069 … while ((nbpages != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_Page_16b()
1078 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_Page_16b()
1080 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_16b()
1103 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_Page_16b()
1130 if (hnand->Init.MemoryDataWidth == FSMC_NAND_PCC_MEM_BUS_WIDTH_8) in HAL_NAND_Write_Page_16b()
1132 hnand->Config.PageSize = hnand->Config.PageSize / 2U; in HAL_NAND_Write_Page_16b()
1141 for (index = 0U; index < hnand->Config.PageSize; index++) in HAL_NAND_Write_Page_16b()
1155 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_Page_16b()
1160 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_Page_16b()
1163 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_16b()
1180 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_Page_16b()
1183 __HAL_UNLOCK(hnand); in HAL_NAND_Write_Page_16b()
1202 HAL_StatusTypeDef HAL_NAND_Read_SpareArea_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *… in HAL_NAND_Read_SpareArea_8b() argument
1215 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_SpareArea_8b()
1219 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_SpareArea_8b()
1222 __HAL_LOCK(hnand); in HAL_NAND_Read_SpareArea_8b()
1225 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_SpareArea_8b()
1228 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Read_SpareArea_8b()
1238 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_SpareArea_8b()
1241 columnaddress = COLUMN_ADDRESS(hnand); in HAL_NAND_Read_SpareArea_8b()
1244 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_SpareArea_8b()
1247 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_SpareArea_8b()
1253 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_8b()
1280 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_8b()
1309 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_SpareArea_8b()
1315 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_SpareArea_8b()
1320 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_SpareArea_8b()
1323 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_8b()
1335 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Read_SpareArea_8b()
1352 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_SpareArea_8b()
1355 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_8b()
1374 HAL_StatusTypeDef HAL_NAND_Read_SpareArea_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef … in HAL_NAND_Read_SpareArea_16b() argument
1387 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Read_SpareArea_16b()
1391 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Read_SpareArea_16b()
1394 __HAL_LOCK(hnand); in HAL_NAND_Read_SpareArea_16b()
1397 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Read_SpareArea_16b()
1400 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Read_SpareArea_16b()
1410 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Read_SpareArea_16b()
1413 columnaddress = (uint32_t)(COLUMN_ADDRESS(hnand)); in HAL_NAND_Read_SpareArea_16b()
1416 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Read_SpareArea_16b()
1419 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Read_SpareArea_16b()
1425 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_16b()
1452 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Read_SpareArea_16b()
1481 if (hnand->Config.ExtraCommandEnable == ENABLE) in HAL_NAND_Read_SpareArea_16b()
1487 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Read_SpareArea_16b()
1492 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Read_SpareArea_16b()
1495 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_16b()
1507 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Read_SpareArea_16b()
1524 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Read_SpareArea_16b()
1527 __HAL_UNLOCK(hnand); in HAL_NAND_Read_SpareArea_16b()
1546 HAL_StatusTypeDef HAL_NAND_Write_SpareArea_8b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef … in HAL_NAND_Write_SpareArea_8b() argument
1559 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_SpareArea_8b()
1563 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_SpareArea_8b()
1566 __HAL_LOCK(hnand); in HAL_NAND_Write_SpareArea_8b()
1569 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_SpareArea_8b()
1572 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Write_SpareArea_8b()
1582 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_SpareArea_8b()
1585 columnaddress = COLUMN_ADDRESS(hnand); in HAL_NAND_Write_SpareArea_8b()
1588 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_SpareArea_8b()
1591 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_SpareArea_8b()
1599 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_8b()
1628 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_8b()
1655 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Write_SpareArea_8b()
1669 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_SpareArea_8b()
1674 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_SpareArea_8b()
1677 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_8b()
1694 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_SpareArea_8b()
1697 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_8b()
1716 HAL_StatusTypeDef HAL_NAND_Write_SpareArea_16b(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef… in HAL_NAND_Write_SpareArea_16b() argument
1729 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Write_SpareArea_16b()
1733 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Write_SpareArea_16b()
1736 __HAL_LOCK(hnand); in HAL_NAND_Write_SpareArea_16b()
1739 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Write_SpareArea_16b()
1742 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Write_SpareArea_16b()
1752 nandaddress = ARRAY_ADDRESS(pAddress, hnand); in HAL_NAND_Write_SpareArea_16b()
1755 columnaddress = (uint32_t)(COLUMN_ADDRESS(hnand)); in HAL_NAND_Write_SpareArea_16b()
1758 … while ((nbspare != 0U) && (nandaddress < ((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)))) in HAL_NAND_Write_SpareArea_16b()
1761 if ((hnand->Config.PageSize) <= 512U) in HAL_NAND_Write_SpareArea_16b()
1769 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_16b()
1798 if (((hnand->Config.BlockSize) * (hnand->Config.BlockNbr)) <= 65535U) in HAL_NAND_Write_SpareArea_16b()
1825 for (index = 0U; index < hnand->Config.SpareAreaSize; index++) in HAL_NAND_Write_SpareArea_16b()
1839 while (HAL_NAND_Read_Status(hnand) != NAND_READY) in HAL_NAND_Write_SpareArea_16b()
1844 hnand->State = HAL_NAND_STATE_ERROR; in HAL_NAND_Write_SpareArea_16b()
1847 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_16b()
1864 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Write_SpareArea_16b()
1867 __HAL_UNLOCK(hnand); in HAL_NAND_Write_SpareArea_16b()
1884 HAL_StatusTypeDef HAL_NAND_Erase_Block(NAND_HandleTypeDef *hnand, const NAND_AddressTypeDef *pAddre… in HAL_NAND_Erase_Block() argument
1889 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_Erase_Block()
1893 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_Erase_Block()
1896 __HAL_LOCK(hnand); in HAL_NAND_Erase_Block()
1899 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_Erase_Block()
1902 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Erase_Block()
1914 …uint8_t *)((uint32_t)(deviceaddress | ADDR_AREA)) = ADDR_1ST_CYCLE(ARRAY_ADDRESS(pAddress, hnand)); in HAL_NAND_Erase_Block()
1916 …uint8_t *)((uint32_t)(deviceaddress | ADDR_AREA)) = ADDR_2ND_CYCLE(ARRAY_ADDRESS(pAddress, hnand)); in HAL_NAND_Erase_Block()
1918 …uint8_t *)((uint32_t)(deviceaddress | ADDR_AREA)) = ADDR_3RD_CYCLE(ARRAY_ADDRESS(pAddress, hnand)); in HAL_NAND_Erase_Block()
1925 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_Erase_Block()
1928 __HAL_UNLOCK(hnand); in HAL_NAND_Erase_Block()
1947 uint32_t HAL_NAND_Address_Inc(const NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress) in HAL_NAND_Address_Inc() argument
1955 if (pAddress->Page == hnand->Config.BlockSize) in HAL_NAND_Address_Inc()
1960 if (pAddress->Block == hnand->Config.PlaneSize) in HAL_NAND_Address_Inc()
1965 if (pAddress->Plane == (hnand->Config.PlaneNbr)) in HAL_NAND_Address_Inc()
1988 HAL_StatusTypeDef HAL_NAND_RegisterCallback(NAND_HandleTypeDef *hnand, HAL_NAND_CallbackIDTypeDef C… in HAL_NAND_RegisterCallback() argument
1998 if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_RegisterCallback()
2003 hnand->MspInitCallback = pCallback; in HAL_NAND_RegisterCallback()
2006 hnand->MspDeInitCallback = pCallback; in HAL_NAND_RegisterCallback()
2009 hnand->ItCallback = pCallback; in HAL_NAND_RegisterCallback()
2017 else if (hnand->State == HAL_NAND_STATE_RESET) in HAL_NAND_RegisterCallback()
2022 hnand->MspInitCallback = pCallback; in HAL_NAND_RegisterCallback()
2025 hnand->MspDeInitCallback = pCallback; in HAL_NAND_RegisterCallback()
2053 HAL_StatusTypeDef HAL_NAND_UnRegisterCallback(NAND_HandleTypeDef *hnand, HAL_NAND_CallbackIDTypeDef… in HAL_NAND_UnRegisterCallback() argument
2057 if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_UnRegisterCallback()
2062 hnand->MspInitCallback = HAL_NAND_MspInit; in HAL_NAND_UnRegisterCallback()
2065 hnand->MspDeInitCallback = HAL_NAND_MspDeInit; in HAL_NAND_UnRegisterCallback()
2068 hnand->ItCallback = HAL_NAND_ITCallback; in HAL_NAND_UnRegisterCallback()
2076 else if (hnand->State == HAL_NAND_STATE_RESET) in HAL_NAND_UnRegisterCallback()
2081 hnand->MspInitCallback = HAL_NAND_MspInit; in HAL_NAND_UnRegisterCallback()
2084 hnand->MspDeInitCallback = HAL_NAND_MspDeInit; in HAL_NAND_UnRegisterCallback()
2128 HAL_StatusTypeDef HAL_NAND_ECC_Enable(NAND_HandleTypeDef *hnand) in HAL_NAND_ECC_Enable() argument
2131 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_ECC_Enable()
2135 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_ECC_Enable()
2138 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_ECC_Enable()
2141 (void)FSMC_NAND_ECC_Enable(hnand->Instance, hnand->Init.NandBank); in HAL_NAND_ECC_Enable()
2144 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_ECC_Enable()
2160 HAL_StatusTypeDef HAL_NAND_ECC_Disable(NAND_HandleTypeDef *hnand) in HAL_NAND_ECC_Disable() argument
2163 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_ECC_Disable()
2167 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_ECC_Disable()
2170 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_ECC_Disable()
2173 (void)FSMC_NAND_ECC_Disable(hnand->Instance, hnand->Init.NandBank); in HAL_NAND_ECC_Disable()
2176 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_ECC_Disable()
2194 HAL_StatusTypeDef HAL_NAND_GetECC(NAND_HandleTypeDef *hnand, uint32_t *ECCval, uint32_t Timeout) in HAL_NAND_GetECC() argument
2199 if (hnand->State == HAL_NAND_STATE_BUSY) in HAL_NAND_GetECC()
2203 else if (hnand->State == HAL_NAND_STATE_READY) in HAL_NAND_GetECC()
2206 hnand->State = HAL_NAND_STATE_BUSY; in HAL_NAND_GetECC()
2209 status = FSMC_NAND_GetECC(hnand->Instance, ECCval, hnand->Init.NandBank, Timeout); in HAL_NAND_GetECC()
2212 hnand->State = HAL_NAND_STATE_READY; in HAL_NAND_GetECC()
2248 HAL_NAND_StateTypeDef HAL_NAND_GetState(const NAND_HandleTypeDef *hnand) in HAL_NAND_GetState() argument
2250 return hnand->State; in HAL_NAND_GetState()
2259 uint32_t HAL_NAND_Read_Status(const NAND_HandleTypeDef *hnand) in HAL_NAND_Read_Status() argument
2263 UNUSED(hnand); in HAL_NAND_Read_Status()
2266 if (hnand->Init.NandBank == FSMC_NAND_BANK2) in HAL_NAND_Read_Status()