[FL-2733] multitarget support for fbt (#2209)

* First part of multitarget porting
* Delete firmware/targets/f7/Inc directory
* Delete firmware/targets/f7/Src directory
* gpio: cli fixes; about: using version from HAL
* sdk: path fixes
* gui: include fixes
* applications: more include fixes
* gpio: ported to new apis
* hal: introduced furi_hal_target_hw.h; libs: added one_wire
* hal: f18 target
* github: also build f18 by default
* typo fix
* fbt: removed extra checks on app list
* api: explicitly bundling select mlib headers with sdk
* hal: f18: changed INPUT_DEBOUNCE_TICKS to match f7
* cleaned up commented out code
* docs: added info on hw targets
* docs: targets: formatting fixes
* f18: fixed link error
* f18: fixed API version to match f7
* docs: hardware: minor wording fixes
* faploader: added fw target check
* docs: typo fixes
* github: not building komi target by default
* fbt: support for `targets` field for built-in apps
* github: reworked build flow to exclude app_set; fbt: removed komi-specific appset; added additional target buildset check
* github: fixed build; nfc: fixed pvs warnings
* attempt to fix target id
* f7, f18: removed certain HAL function from public API
* apps: debug: enabled bt_debug_app for f18
* Targets: backport input pins configuration routine from F7 to F18

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
hedger
2023-02-07 19:33:05 +03:00
committed by GitHub
parent 1eda913367
commit 224d0aefe4
152 changed files with 4140 additions and 495 deletions

View File

@@ -1,5 +1,5 @@
entry,status,name,type,params
Version,+,11.10,,
Version,+,12.1,,
Header,+,applications/services/bt/bt_service/bt.h,,
Header,+,applications/services/cli/cli.h,,
Header,+,applications/services/cli/cli_vcp.h,,
@@ -41,14 +41,19 @@ Header,+,firmware/targets/f7/furi_hal/furi_hal_flash.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_gpio.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_i2c_config.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_i2c_types.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_ibutton.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_idle_timer.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_interrupt.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_nfc.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_os.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_pwm.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_resources.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_rfid.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_spi_config.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_spi_types.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_subghz.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_subghz_configs.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_target_hw.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_uart.h,,
Header,+,firmware/targets/f7/furi_hal/furi_hal_usb_cdc.h,,
Header,+,firmware/targets/f7/platform_specific/intrinsic_export.h,,
@@ -61,22 +66,18 @@ Header,+,firmware/targets/furi_hal_include/furi_hal_cortex.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_crypto.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_debug.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_i2c.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_ibutton.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_info.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_infrared.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_light.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_memory.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_mpu.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_nfc.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_power.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_random.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_region.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_rfid.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_rtc.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_sd.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_speaker.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_spi.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_subghz.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_usb.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_usb_hid.h,,
Header,+,firmware/targets/furi_hal_include/furi_hal_usb_hid_u2f.h,,
@@ -150,6 +151,16 @@ Header,+,lib/libusb_stm32/inc/usbd_core.h,,
Header,+,lib/mbedtls/include/mbedtls/des.h,,
Header,+,lib/mbedtls/include/mbedtls/sha1.h,,
Header,+,lib/micro-ecc/uECC.h,,
Header,+,lib/mlib/m-algo.h,,
Header,+,lib/mlib/m-array.h,,
Header,+,lib/mlib/m-bptree.h,,
Header,+,lib/mlib/m-core.h,,
Header,+,lib/mlib/m-deque.h,,
Header,+,lib/mlib/m-dict.h,,
Header,+,lib/mlib/m-list.h,,
Header,+,lib/mlib/m-rbtree.h,,
Header,+,lib/mlib/m-tuple.h,,
Header,+,lib/mlib/m-variant.h,,
Header,+,lib/nfc/nfc_device.h,,
Header,+,lib/one_wire/ibutton/ibutton_worker.h,,
Header,+,lib/one_wire/maxim_crc.h,,
@@ -852,6 +863,7 @@ Function,+,flipper_application_free,void,FlipperApplication*
Function,+,flipper_application_get_manifest,const FlipperApplicationManifest*,FlipperApplication*
Function,+,flipper_application_load_status_to_string,const char*,FlipperApplicationLoadStatus
Function,+,flipper_application_manifest_is_compatible,_Bool,"const FlipperApplicationManifest*, const ElfApiInterface*"
Function,+,flipper_application_manifest_is_target_compatible,_Bool,const FlipperApplicationManifest*
Function,+,flipper_application_manifest_is_valid,_Bool,const FlipperApplicationManifest*
Function,+,flipper_application_map_to_memory,FlipperApplicationLoadStatus,FlipperApplication*
Function,+,flipper_application_preload,FlipperApplicationPreloadStatus,"FlipperApplication*, const char*"
@@ -1022,7 +1034,7 @@ Function,+,furi_hal_cdc_get_port_settings,usb_cdc_line_coding*,uint8_t
Function,+,furi_hal_cdc_receive,int32_t,"uint8_t, uint8_t*, uint16_t"
Function,+,furi_hal_cdc_send,void,"uint8_t, uint8_t*, uint16_t"
Function,+,furi_hal_cdc_set_callbacks,void,"uint8_t, CdcCallbacks*, void*"
Function,+,furi_hal_clock_deinit_early,void,
Function,-,furi_hal_clock_deinit_early,void,
Function,-,furi_hal_clock_init,void,
Function,-,furi_hal_clock_init_early,void,
Function,+,furi_hal_clock_mco_disable,void,
@@ -1103,7 +1115,7 @@ Function,+,furi_hal_hid_u2f_is_connected,_Bool,
Function,+,furi_hal_hid_u2f_send_response,void,"uint8_t*, uint8_t"
Function,+,furi_hal_hid_u2f_set_callback,void,"HidU2fCallback, void*"
Function,+,furi_hal_i2c_acquire,void,FuriHalI2cBusHandle*
Function,+,furi_hal_i2c_deinit_early,void,
Function,-,furi_hal_i2c_deinit_early,void,
Function,-,furi_hal_i2c_init,void,
Function,-,furi_hal_i2c_init_early,void,
Function,+,furi_hal_i2c_is_device_ready,_Bool,"FuriHalI2cBusHandle*, uint8_t, uint32_t"
@@ -1241,7 +1253,7 @@ Function,-,furi_hal_region_init,void,
Function,+,furi_hal_region_is_frequency_allowed,_Bool,uint32_t
Function,+,furi_hal_region_is_provisioned,_Bool,
Function,+,furi_hal_region_set,void,FuriHalRegion*
Function,+,furi_hal_resources_deinit_early,void,
Function,-,furi_hal_resources_deinit_early,void,
Function,-,furi_hal_resources_init,void,
Function,-,furi_hal_resources_init_early,void,
Function,+,furi_hal_rfid_change_read_config,void,"float, float"
@@ -1270,7 +1282,7 @@ Function,+,furi_hal_rfid_tim_read_start,void,
Function,+,furi_hal_rfid_tim_read_stop,void,
Function,+,furi_hal_rfid_tim_reset,void,
Function,+,furi_hal_rtc_datetime_to_timestamp,uint32_t,FuriHalRtcDateTime*
Function,+,furi_hal_rtc_deinit_early,void,
Function,-,furi_hal_rtc_deinit_early,void,
Function,+,furi_hal_rtc_get_boot_mode,FuriHalRtcBootMode,
Function,+,furi_hal_rtc_get_datetime,void,FuriHalRtcDateTime*
Function,+,furi_hal_rtc_get_fault_data,uint32_t,
@@ -1314,9 +1326,9 @@ Function,+,furi_hal_spi_bus_init,void,FuriHalSpiBus*
Function,+,furi_hal_spi_bus_rx,_Bool,"FuriHalSpiBusHandle*, uint8_t*, size_t, uint32_t"
Function,+,furi_hal_spi_bus_trx,_Bool,"FuriHalSpiBusHandle*, uint8_t*, uint8_t*, size_t, uint32_t"
Function,+,furi_hal_spi_bus_tx,_Bool,"FuriHalSpiBusHandle*, uint8_t*, size_t, uint32_t"
Function,+,furi_hal_spi_deinit_early,void,
Function,-,furi_hal_spi_init,void,
Function,+,furi_hal_spi_init_early,void,
Function,-,furi_hal_spi_config_deinit_early,void,
Function,-,furi_hal_spi_config_init,void,
Function,-,furi_hal_spi_config_init_early,void,
Function,+,furi_hal_spi_release,void,FuriHalSpiBusHandle*
Function,-,furi_hal_subghz_dump_state,void,
Function,+,furi_hal_subghz_flush_rx,void,
@@ -1370,6 +1382,7 @@ Function,+,furi_hal_version_do_i_belong_here,_Bool,
Function,+,furi_hal_version_get_ble_local_device_name_ptr,const char*,
Function,+,furi_hal_version_get_ble_mac,const uint8_t*,
Function,+,furi_hal_version_get_device_name_ptr,const char*,
Function,+,furi_hal_version_get_fcc_id,const char*,
Function,+,furi_hal_version_get_firmware_version,const Version*,
Function,+,furi_hal_version_get_hw_body,uint8_t,
Function,+,furi_hal_version_get_hw_color,FuriHalVersionColor,
@@ -1380,6 +1393,8 @@ Function,+,furi_hal_version_get_hw_region_name,const char*,
Function,+,furi_hal_version_get_hw_target,uint8_t,
Function,+,furi_hal_version_get_hw_timestamp,uint32_t,
Function,+,furi_hal_version_get_hw_version,uint8_t,
Function,+,furi_hal_version_get_ic_id,const char*,
Function,+,furi_hal_version_get_model_code,const char*,
Function,+,furi_hal_version_get_model_name,const char*,
Function,+,furi_hal_version_get_name_ptr,const char*,
Function,+,furi_hal_version_get_otp_version,FuriHalVersionOtpVersion,
@@ -3026,6 +3041,8 @@ Variable,+,gpio_infrared_rx,const GpioPin,
Variable,+,gpio_infrared_tx,const GpioPin,
Variable,+,gpio_nfc_cs,const GpioPin,
Variable,+,gpio_nfc_irq_rfid_pull,const GpioPin,
Variable,+,gpio_pins,const GpioPinRecord[],
Variable,+,gpio_pins_count,const size_t,
Variable,+,gpio_rf_sw_0,const GpioPin,
Variable,+,gpio_rfid_carrier,const GpioPin,
Variable,+,gpio_rfid_carrier_out,const GpioPin,
1 entry status name type params
2 Version + 11.10 12.1
3 Header + applications/services/bt/bt_service/bt.h
4 Header + applications/services/cli/cli.h
5 Header + applications/services/cli/cli_vcp.h
41 Header + firmware/targets/f7/furi_hal/furi_hal_gpio.h
42 Header + firmware/targets/f7/furi_hal/furi_hal_i2c_config.h
43 Header + firmware/targets/f7/furi_hal/furi_hal_i2c_types.h
44 Header + firmware/targets/f7/furi_hal/furi_hal_ibutton.h
45 Header + firmware/targets/f7/furi_hal/furi_hal_idle_timer.h
46 Header + firmware/targets/f7/furi_hal/furi_hal_interrupt.h
47 Header + firmware/targets/f7/furi_hal/furi_hal_nfc.h
48 Header + firmware/targets/f7/furi_hal/furi_hal_os.h
49 Header + firmware/targets/f7/furi_hal/furi_hal_pwm.h
50 Header + firmware/targets/f7/furi_hal/furi_hal_resources.h
51 Header + firmware/targets/f7/furi_hal/furi_hal_rfid.h
52 Header + firmware/targets/f7/furi_hal/furi_hal_spi_config.h
53 Header + firmware/targets/f7/furi_hal/furi_hal_spi_types.h
54 Header + firmware/targets/f7/furi_hal/furi_hal_subghz.h
55 Header + firmware/targets/f7/furi_hal/furi_hal_subghz_configs.h
56 Header + firmware/targets/f7/furi_hal/furi_hal_target_hw.h
57 Header + firmware/targets/f7/furi_hal/furi_hal_uart.h
58 Header + firmware/targets/f7/furi_hal/furi_hal_usb_cdc.h
59 Header + firmware/targets/f7/platform_specific/intrinsic_export.h
66 Header + firmware/targets/furi_hal_include/furi_hal_crypto.h
67 Header + firmware/targets/furi_hal_include/furi_hal_debug.h
68 Header + firmware/targets/furi_hal_include/furi_hal_i2c.h
Header + firmware/targets/furi_hal_include/furi_hal_ibutton.h
69 Header + firmware/targets/furi_hal_include/furi_hal_info.h
70 Header + firmware/targets/furi_hal_include/furi_hal_infrared.h
71 Header + firmware/targets/furi_hal_include/furi_hal_light.h
72 Header + firmware/targets/furi_hal_include/furi_hal_memory.h
73 Header + firmware/targets/furi_hal_include/furi_hal_mpu.h
Header + firmware/targets/furi_hal_include/furi_hal_nfc.h
74 Header + firmware/targets/furi_hal_include/furi_hal_power.h
75 Header + firmware/targets/furi_hal_include/furi_hal_random.h
76 Header + firmware/targets/furi_hal_include/furi_hal_region.h
Header + firmware/targets/furi_hal_include/furi_hal_rfid.h
77 Header + firmware/targets/furi_hal_include/furi_hal_rtc.h
78 Header + firmware/targets/furi_hal_include/furi_hal_sd.h
79 Header + firmware/targets/furi_hal_include/furi_hal_speaker.h
80 Header + firmware/targets/furi_hal_include/furi_hal_spi.h
Header + firmware/targets/furi_hal_include/furi_hal_subghz.h
81 Header + firmware/targets/furi_hal_include/furi_hal_usb.h
82 Header + firmware/targets/furi_hal_include/furi_hal_usb_hid.h
83 Header + firmware/targets/furi_hal_include/furi_hal_usb_hid_u2f.h
151 Header + lib/mbedtls/include/mbedtls/des.h
152 Header + lib/mbedtls/include/mbedtls/sha1.h
153 Header + lib/micro-ecc/uECC.h
154 Header + lib/mlib/m-algo.h
155 Header + lib/mlib/m-array.h
156 Header + lib/mlib/m-bptree.h
157 Header + lib/mlib/m-core.h
158 Header + lib/mlib/m-deque.h
159 Header + lib/mlib/m-dict.h
160 Header + lib/mlib/m-list.h
161 Header + lib/mlib/m-rbtree.h
162 Header + lib/mlib/m-tuple.h
163 Header + lib/mlib/m-variant.h
164 Header + lib/nfc/nfc_device.h
165 Header + lib/one_wire/ibutton/ibutton_worker.h
166 Header + lib/one_wire/maxim_crc.h
863 Function + flipper_application_get_manifest const FlipperApplicationManifest* FlipperApplication*
864 Function + flipper_application_load_status_to_string const char* FlipperApplicationLoadStatus
865 Function + flipper_application_manifest_is_compatible _Bool const FlipperApplicationManifest*, const ElfApiInterface*
866 Function + flipper_application_manifest_is_target_compatible _Bool const FlipperApplicationManifest*
867 Function + flipper_application_manifest_is_valid _Bool const FlipperApplicationManifest*
868 Function + flipper_application_map_to_memory FlipperApplicationLoadStatus FlipperApplication*
869 Function + flipper_application_preload FlipperApplicationPreloadStatus FlipperApplication*, const char*
1034 Function + furi_hal_cdc_receive int32_t uint8_t, uint8_t*, uint16_t
1035 Function + furi_hal_cdc_send void uint8_t, uint8_t*, uint16_t
1036 Function + furi_hal_cdc_set_callbacks void uint8_t, CdcCallbacks*, void*
1037 Function + - furi_hal_clock_deinit_early void
1038 Function - furi_hal_clock_init void
1039 Function - furi_hal_clock_init_early void
1040 Function + furi_hal_clock_mco_disable void
1115 Function + furi_hal_hid_u2f_send_response void uint8_t*, uint8_t
1116 Function + furi_hal_hid_u2f_set_callback void HidU2fCallback, void*
1117 Function + furi_hal_i2c_acquire void FuriHalI2cBusHandle*
1118 Function + - furi_hal_i2c_deinit_early void
1119 Function - furi_hal_i2c_init void
1120 Function - furi_hal_i2c_init_early void
1121 Function + furi_hal_i2c_is_device_ready _Bool FuriHalI2cBusHandle*, uint8_t, uint32_t
1253 Function + furi_hal_region_is_frequency_allowed _Bool uint32_t
1254 Function + furi_hal_region_is_provisioned _Bool
1255 Function + furi_hal_region_set void FuriHalRegion*
1256 Function + - furi_hal_resources_deinit_early void
1257 Function - furi_hal_resources_init void
1258 Function - furi_hal_resources_init_early void
1259 Function + furi_hal_rfid_change_read_config void float, float
1282 Function + furi_hal_rfid_tim_read_stop void
1283 Function + furi_hal_rfid_tim_reset void
1284 Function + furi_hal_rtc_datetime_to_timestamp uint32_t FuriHalRtcDateTime*
1285 Function + - furi_hal_rtc_deinit_early void
1286 Function + furi_hal_rtc_get_boot_mode FuriHalRtcBootMode
1287 Function + furi_hal_rtc_get_datetime void FuriHalRtcDateTime*
1288 Function + furi_hal_rtc_get_fault_data uint32_t
1326 Function + furi_hal_spi_bus_rx _Bool FuriHalSpiBusHandle*, uint8_t*, size_t, uint32_t
1327 Function + furi_hal_spi_bus_trx _Bool FuriHalSpiBusHandle*, uint8_t*, uint8_t*, size_t, uint32_t
1328 Function + furi_hal_spi_bus_tx _Bool FuriHalSpiBusHandle*, uint8_t*, size_t, uint32_t
1329 Function + - furi_hal_spi_deinit_early furi_hal_spi_config_deinit_early void
1330 Function - furi_hal_spi_init furi_hal_spi_config_init void
1331 Function + - furi_hal_spi_init_early furi_hal_spi_config_init_early void
1332 Function + furi_hal_spi_release void FuriHalSpiBusHandle*
1333 Function - furi_hal_subghz_dump_state void
1334 Function + furi_hal_subghz_flush_rx void
1382 Function + furi_hal_version_get_ble_local_device_name_ptr const char*
1383 Function + furi_hal_version_get_ble_mac const uint8_t*
1384 Function + furi_hal_version_get_device_name_ptr const char*
1385 Function + furi_hal_version_get_fcc_id const char*
1386 Function + furi_hal_version_get_firmware_version const Version*
1387 Function + furi_hal_version_get_hw_body uint8_t
1388 Function + furi_hal_version_get_hw_color FuriHalVersionColor
1393 Function + furi_hal_version_get_hw_target uint8_t
1394 Function + furi_hal_version_get_hw_timestamp uint32_t
1395 Function + furi_hal_version_get_hw_version uint8_t
1396 Function + furi_hal_version_get_ic_id const char*
1397 Function + furi_hal_version_get_model_code const char*
1398 Function + furi_hal_version_get_model_name const char*
1399 Function + furi_hal_version_get_name_ptr const char*
1400 Function + furi_hal_version_get_otp_version FuriHalVersionOtpVersion
3041 Variable + gpio_infrared_tx const GpioPin
3042 Variable + gpio_nfc_cs const GpioPin
3043 Variable + gpio_nfc_irq_rfid_pull const GpioPin
3044 Variable + gpio_pins const GpioPinRecord[]
3045 Variable + gpio_pins_count const size_t
3046 Variable + gpio_rf_sw_0 const GpioPin
3047 Variable + gpio_rfid_carrier const GpioPin
3048 Variable + gpio_rfid_carrier_out const GpioPin