Merge branch 'dev' into DigitalSequence_PulseReader

This commit is contained in:
g3gg0.de
2023-02-01 23:38:55 +01:00
committed by GitHub
65 changed files with 935 additions and 126 deletions
+9 -3
View File
@@ -1,5 +1,5 @@
entry,status,name,type,params
Version,+,11.7,,
Version,+,11.9,,
Header,+,applications/services/bt/bt_service/bt.h,,
Header,+,applications/services/cli/cli.h,,
Header,+,applications/services/cli/cli_vcp.h,,
@@ -189,6 +189,7 @@ Header,+,lib/toolbox/stream/file_stream.h,,
Header,+,lib/toolbox/stream/stream.h,,
Header,+,lib/toolbox/stream/string_stream.h,,
Header,+,lib/toolbox/tar/tar_archive.h,,
Header,+,lib/toolbox/value_index.h,,
Header,+,lib/toolbox/version.h,,
Function,-,LL_ADC_CommonDeInit,ErrorStatus,ADC_Common_TypeDef*
Function,-,LL_ADC_CommonInit,ErrorStatus,"ADC_Common_TypeDef*, LL_ADC_CommonInitTypeDef*"
@@ -1399,6 +1400,7 @@ Function,-,furi_hal_vibro_init,void,
Function,+,furi_hal_vibro_on,void,_Bool
Function,-,furi_init,void,
Function,+,furi_kernel_get_tick_frequency,uint32_t,
Function,+,furi_kernel_is_irq_or_masked,_Bool,
Function,+,furi_kernel_lock,int32_t,
Function,+,furi_kernel_restore_lock,int32_t,int32_t
Function,+,furi_kernel_unlock,int32_t,
@@ -1523,6 +1525,7 @@ Function,+,furi_thread_get_name,const char*,FuriThreadId
Function,+,furi_thread_get_return_code,int32_t,FuriThread*
Function,+,furi_thread_get_stack_space,uint32_t,FuriThreadId
Function,+,furi_thread_get_state,FuriThreadState,FuriThread*
Function,+,furi_thread_get_stdout_callback,FuriThreadStdoutWriteCallback,
Function,+,furi_thread_is_suspended,_Bool,FuriThreadId
Function,+,furi_thread_join,_Bool,FuriThread*
Function,+,furi_thread_mark_as_service,void,FuriThread*
@@ -1890,7 +1893,7 @@ Function,-,mf_classic_dict_is_key_present,_Bool,"MfClassicDict*, uint8_t*"
Function,-,mf_classic_dict_is_key_present_str,_Bool,"MfClassicDict*, FuriString*"
Function,-,mf_classic_dict_rewind,_Bool,MfClassicDict*
Function,-,mf_classic_emulator,_Bool,"MfClassicEmulator*, FuriHalNfcTxRxContext*"
Function,-,mf_classic_get_classic_type,MfClassicType,"int8_t, uint8_t, uint8_t"
Function,-,mf_classic_get_classic_type,MfClassicType,"uint8_t, uint8_t, uint8_t"
Function,-,mf_classic_get_read_sectors_and_keys,void,"MfClassicData*, uint8_t*, uint8_t*"
Function,-,mf_classic_get_sector_by_block,uint8_t,uint8_t
Function,-,mf_classic_get_sector_trailer_block_num_by_sector,uint8_t,uint8_t
@@ -2076,7 +2079,7 @@ Function,-,posix_memalign,int,"void**, size_t, size_t"
Function,-,pow,double,"double, double"
Function,-,pow10,double,double
Function,-,pow10f,float,float
Function,-,power_enable_low_battery_level_notification,void,"Power*, _Bool"
Function,+,power_enable_low_battery_level_notification,void,"Power*, _Bool"
Function,+,power_get_info,void,"Power*, PowerInfo*"
Function,+,power_get_pubsub,FuriPubSub*,Power*
Function,+,power_is_battery_healthy,_Bool,Power*
@@ -2823,6 +2826,9 @@ Function,-,vTimerSetTimerNumber,void,"TimerHandle_t, UBaseType_t"
Function,+,validator_is_file_alloc_init,ValidatorIsFile*,"const char*, const char*, const char*"
Function,+,validator_is_file_callback,_Bool,"const char*, FuriString*, void*"
Function,+,validator_is_file_free,void,ValidatorIsFile*
Function,+,value_index_bool,uint8_t,"const _Bool, const _Bool[], uint8_t"
Function,+,value_index_float,uint8_t,"const float, const float[], uint8_t"
Function,+,value_index_uint32,uint8_t,"const uint32_t, const uint32_t[], uint8_t"
Function,+,variable_item_get_context,void*,VariableItem*
Function,+,variable_item_get_current_value_index,uint8_t,VariableItem*
Function,+,variable_item_list_add,VariableItem*,"VariableItemList*, const char*, uint8_t, VariableItemChangeCallback, void*"
1 entry status name type params
2 Version + 11.7 11.9
3 Header + applications/services/bt/bt_service/bt.h
4 Header + applications/services/cli/cli.h
5 Header + applications/services/cli/cli_vcp.h
189 Header + lib/toolbox/stream/stream.h
190 Header + lib/toolbox/stream/string_stream.h
191 Header + lib/toolbox/tar/tar_archive.h
192 Header + lib/toolbox/value_index.h
193 Header + lib/toolbox/version.h
194 Function - LL_ADC_CommonDeInit ErrorStatus ADC_Common_TypeDef*
195 Function - LL_ADC_CommonInit ErrorStatus ADC_Common_TypeDef*, LL_ADC_CommonInitTypeDef*
1400 Function + furi_hal_vibro_on void _Bool
1401 Function - furi_init void
1402 Function + furi_kernel_get_tick_frequency uint32_t
1403 Function + furi_kernel_is_irq_or_masked _Bool
1404 Function + furi_kernel_lock int32_t
1405 Function + furi_kernel_restore_lock int32_t int32_t
1406 Function + furi_kernel_unlock int32_t
1525 Function + furi_thread_get_return_code int32_t FuriThread*
1526 Function + furi_thread_get_stack_space uint32_t FuriThreadId
1527 Function + furi_thread_get_state FuriThreadState FuriThread*
1528 Function + furi_thread_get_stdout_callback FuriThreadStdoutWriteCallback
1529 Function + furi_thread_is_suspended _Bool FuriThreadId
1530 Function + furi_thread_join _Bool FuriThread*
1531 Function + furi_thread_mark_as_service void FuriThread*
1893 Function - mf_classic_dict_is_key_present_str _Bool MfClassicDict*, FuriString*
1894 Function - mf_classic_dict_rewind _Bool MfClassicDict*
1895 Function - mf_classic_emulator _Bool MfClassicEmulator*, FuriHalNfcTxRxContext*
1896 Function - mf_classic_get_classic_type MfClassicType int8_t, uint8_t, uint8_t uint8_t, uint8_t, uint8_t
1897 Function - mf_classic_get_read_sectors_and_keys void MfClassicData*, uint8_t*, uint8_t*
1898 Function - mf_classic_get_sector_by_block uint8_t uint8_t
1899 Function - mf_classic_get_sector_trailer_block_num_by_sector uint8_t uint8_t
2079 Function - pow double double, double
2080 Function - pow10 double double
2081 Function - pow10f float float
2082 Function - + power_enable_low_battery_level_notification void Power*, _Bool
2083 Function + power_get_info void Power*, PowerInfo*
2084 Function + power_get_pubsub FuriPubSub* Power*
2085 Function + power_is_battery_healthy _Bool Power*
2826 Function + validator_is_file_alloc_init ValidatorIsFile* const char*, const char*, const char*
2827 Function + validator_is_file_callback _Bool const char*, FuriString*, void*
2828 Function + validator_is_file_free void ValidatorIsFile*
2829 Function + value_index_bool uint8_t const _Bool, const _Bool[], uint8_t
2830 Function + value_index_float uint8_t const float, const float[], uint8_t
2831 Function + value_index_uint32 uint8_t const uint32_t, const uint32_t[], uint8_t
2832 Function + variable_item_get_context void* VariableItem*
2833 Function + variable_item_get_current_value_index uint8_t VariableItem*
2834 Function + variable_item_list_add VariableItem* VariableItemList*, const char*, uint8_t, VariableItemChangeCallback, void*
+21 -20
View File
@@ -779,25 +779,10 @@ uint8_t SD_GetCIDRegister(SD_CID* Cid) {
Cid->ManufacturerID = CID_Tab[0];
/* Byte 1 */
Cid->OEM_AppliID = CID_Tab[1] << 8;
/* Byte 2 */
Cid->OEM_AppliID |= CID_Tab[2];
memcpy(Cid->OEM_AppliID, CID_Tab + 1, 2);
/* Byte 3 */
Cid->ProdName1 = CID_Tab[3] << 24;
/* Byte 4 */
Cid->ProdName1 |= CID_Tab[4] << 16;
/* Byte 5 */
Cid->ProdName1 |= CID_Tab[5] << 8;
/* Byte 6 */
Cid->ProdName1 |= CID_Tab[6];
/* Byte 7 */
Cid->ProdName2 = CID_Tab[7];
memcpy(Cid->ProdName, CID_Tab + 3, 5);
/* Byte 8 */
Cid->ProdRev = CID_Tab[8];
@@ -815,11 +800,12 @@ uint8_t SD_GetCIDRegister(SD_CID* Cid) {
Cid->ProdSN |= CID_Tab[12];
/* Byte 13 */
Cid->Reserved1 |= (CID_Tab[13] & 0xF0) >> 4;
Cid->ManufactDate = (CID_Tab[13] & 0x0F) << 8;
Cid->Reserved1 = (CID_Tab[13] & 0xF0) >> 4;
Cid->ManufactYear = (CID_Tab[13] & 0x0F) << 4;
/* Byte 14 */
Cid->ManufactDate |= CID_Tab[14];
Cid->ManufactYear |= (CID_Tab[14] & 0xF0) >> 4;
Cid->ManufactMonth = (CID_Tab[14] & 0x0F);
/* Byte 15 */
Cid->CID_CRC = (CID_Tab[15] & 0xFE) >> 1;
@@ -837,6 +823,21 @@ uint8_t SD_GetCIDRegister(SD_CID* Cid) {
return retr;
}
uint8_t BSP_SD_GetCIDRegister(SD_CID* Cid) {
uint8_t retr = BSP_SD_ERROR;
/* Slow speed init */
furi_hal_spi_acquire(&furi_hal_spi_bus_handle_sd_slow);
furi_hal_sd_spi_handle = &furi_hal_spi_bus_handle_sd_slow;
memset(Cid, 0, sizeof(SD_CID));
retr = SD_GetCIDRegister(Cid);
furi_hal_sd_spi_handle = NULL;
furi_hal_spi_release(&furi_hal_spi_bus_handle_sd_slow);
return retr;
}
/**
* @brief Sends 5 bytes command to the SD card and get response
* @param Cmd: The user expected command to send to SD card.
+11 -10
View File
@@ -133,16 +133,16 @@ typedef struct {
* @brief Card Identification Data: CID Register
*/
typedef struct {
__IO uint8_t ManufacturerID; /* ManufacturerID */
__IO uint16_t OEM_AppliID; /* OEM/Application ID */
__IO uint32_t ProdName1; /* Product Name part1 */
__IO uint8_t ProdName2; /* Product Name part2*/
__IO uint8_t ProdRev; /* Product Revision */
__IO uint32_t ProdSN; /* Product Serial Number */
__IO uint8_t Reserved1; /* Reserved1 */
__IO uint16_t ManufactDate; /* Manufacturing Date */
__IO uint8_t CID_CRC; /* CID CRC */
__IO uint8_t Reserved2; /* always 1 */
uint8_t ManufacturerID; /* ManufacturerID */
char OEM_AppliID[2]; /* OEM/Application ID */
char ProdName[5]; /* Product Name */
uint8_t ProdRev; /* Product Revision */
uint32_t ProdSN; /* Product Serial Number */
uint8_t Reserved1; /* Reserved1 */
uint8_t ManufactYear; /* Manufacturing Year */
uint8_t ManufactMonth; /* Manufacturing Month */
uint8_t CID_CRC; /* CID CRC */
uint8_t Reserved2; /* always 1 */
} SD_CID;
/**
@@ -207,6 +207,7 @@ uint8_t
uint8_t BSP_SD_Erase(uint32_t StartAddr, uint32_t EndAddr);
uint8_t BSP_SD_GetCardState(void);
uint8_t BSP_SD_GetCardInfo(SD_CardInfo* pCardInfo);
uint8_t BSP_SD_GetCIDRegister(SD_CID* Cid);
/* Link functions for SD Card peripheral*/
void SD_SPI_Slow_Init(void);