STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
emmc_stm32.h
Go to the documentation of this file.
1
#ifndef STAR_EMMC_STM32_H
2
#define STAR_EMMC_STM32_H
3
4
/*
5
* Board side of the eMMC flight log: emmc_port_t on SDMMC1 (4-bit, IDMA),
6
* the log's RAM buffers in AXI SRAM, and the writer task.
7
*
8
* NOT YET COMPILED: the STM32 build (PlatformIO env:flight) comes with
9
* PR #165. The portable log it serves is host-tested (tests/emmc). What
10
* integration still needs (linker section for the DMA buffers, SDMMC1
11
* interrupt, writer task) is listed in EMMC-ARCHITECTURE.md, section 7.
12
*/
13
14
#include <stdint.h>
15
16
#include "
emmc_card.h
"
17
#include "
emmc_log.h
"
18
19
#ifdef __cplusplus
20
extern
"C"
{
21
#endif
22
23
/*
24
* Create the mutex and completion semaphore and initialise the log. No card
25
* I/O. Call once after osKernelInitialize(), before any task appends.
26
*/
27
emmc_status_t
emmc_stm32_init
(
void
);
28
29
/* The board's one flight log, for emmc_log_on_state()/emmc_log_append(). */
30
emmc_log_t
*
emmc_stm32_log
(
void
);
31
32
/*
33
* What start() read from the card (CID/EXT_CSD) and emmc_card_check()'s
34
* verdict. Valid once the log has mounted (first service after Arm);
35
* returns NULL before.
36
*/
37
const
emmc_card_info_t
*
emmc_stm32_card
(uint32_t* issues);
38
39
/* The writer: loops emmc_log_service(). Run at low priority. */
40
void
emmc_stm32_writer_task
(
void
* argument);
41
42
#ifdef __cplusplus
43
}
44
#endif
45
#endif
emmc_card.h
emmc_log.h
emmc_status_t
emmc_status_t
Definition
emmc_port.h:22
emmc_stm32_card
const emmc_card_info_t * emmc_stm32_card(uint32_t *issues)
Definition
emmc_stm32.c:250
emmc_stm32_writer_task
void emmc_stm32_writer_task(void *argument)
Definition
emmc_stm32.c:260
emmc_stm32_init
emmc_status_t emmc_stm32_init(void)
Definition
emmc_stm32.c:235
emmc_stm32_log
emmc_log_t * emmc_stm32_log(void)
Definition
emmc_stm32.c:246
emmc_card_info_t
Definition
emmc_card.h:36
emmc_log_t
Definition
emmc_log.h:114
firmware
Flight_Computer
src
board
emmc_stm32.h
Generated by
1.15.0