Rpc: StorageInfo, StorageRename, SystemReboot, SystemDeviceInfo (bonus: +FuriHalInfo) (#862)

* Rpc: update protobuf sources
* Rpc: rename Status to System
* Rpc: implement StorageInfoRequest
* Rpc: implement StorageRenameRequest
* Rpc: implement SystemRebootRequest
* FuriHal: introduce FuriHalInfo, refactor device_info
* Rpc: implement DeviceInfoRequest
* Rpc: use strdup where it suites the best.
* Make: add do not page align data to linker flag.

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
Anna Prosvetova
2021-12-07 16:47:20 +03:00
committed by GitHub
parent 604d80aed4
commit 03d7476e4f
19 changed files with 1005 additions and 224 deletions

View File

@@ -0,0 +1,33 @@
/**
* @file furi-hal-info.h
* Device info HAL API
*/
#pragma once
#include <stdbool.h>
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
/** Callback type called every time another key-value pair of device information is ready
*
* @param key[in] device information type identifier
* @param value[in] device information value
* @param last[in] whether the passed key-value pair is the last one
* @param context[in] to pass to callback
*/
typedef void (*FuriHalInfoValueCallback) (const char* key, const char* value, bool last, void* context);
/** Get device information
*
* @param[in] callback callback to provide with new data
* @param[in] context context to pass to callback
*/
void furi_hal_info_get(FuriHalInfoValueCallback callback, void* context);
#ifdef __cplusplus
}
#endif

View File

@@ -38,6 +38,7 @@ template <unsigned int N> struct STOP_EXTERNING_ME {};
#include "furi-hal-usb-hid.h"
#include "furi-hal-compress.h"
#include "furi-hal-uart.h"
#include "furi-hal-info.h"
/** Init furi-hal */
void furi_hal_init();