rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
pin_repository.h
Go to the documentation of this file.
1/**
2 * @file pin_repository.h
3 * @brief I/O pin registry header
4 *
5 *
6 *
7 * @date Jan 15, 2013
8 * @author Andrey Belomutskiy, (c) 2012-2020
9 */
10
11#pragma once
12
13#include "global.h"
14#include "io_pins.h"
15#include "efi_gpio.h"
17
18bool isBrainPinValid(Gpio brainPin);
19const char *hwOnChipPhysicalPinName(ioportid_t hwPort, int hwPin);
21bool brain_pin_is_onchip(Gpio brainPin);
22bool brain_pin_is_ext(Gpio brainPin);
23void pinDiag2string(char *buffer, size_t size, brain_pin_diag_e pin_diag);
24
25/**
26 * Usually high-level code would invoke efiSetPadMode, not this method directly
27 */
28bool brain_pin_markUsed(brain_pin_e brainPin, const char *msg);
29
30const char * getPinFunction(brain_input_pin_e brainPin);
31
32#if EFI_PROD_CODE
33/* For on-chip gpios only */
34bool gpio_pin_markUsed(ioportid_t port, ioportmask_t pin, const char *msg);
36#endif /* EFI_PROD_CODE*/
37
38/* defined in ports/ */
41int getBrainPinIndex(Gpio brainPin);
43const char *hwPortname(Gpio brainPin);
44const char *hwPhysicalPinName(Gpio brainPin);
45// the main usage for human-readable board-specific pin reference is convenience of error messages in case of pin conflict.
46const char * getBoardSpecificPinName(Gpio brainPin);
47
48void debugBrainPin(char *buffer, size_t size, brain_pin_e brainPin);
49
50const char* & getBrainUsedPin(size_t idx);
EFI-related GPIO code.
uint32_t ioportmask_t
Digital I/O port sized unsigned type.
Definition hal_pal_lld.h:78
GPIO_TypeDef * ioportid_t
Port Identifier.
this file is about general input/output utility methods, not much EFI-specifics
const char * hwPhysicalPinName(Gpio brainPin)
void gpio_pin_markUnused(ioportid_t port, ioportmask_t pin)
size_t getBrainPinOnchipNum()
bool brain_pin_is_onchip(Gpio brainPin)
const char * hwPortname(Gpio brainPin)
bool brain_pin_is_ext(Gpio brainPin)
int getBrainPinIndex(Gpio brainPin)
void pinDiag2string(char *buffer, size_t size, brain_pin_diag_e pin_diag)
const char * getBoardSpecificPinName(Gpio brainPin)
int getPortPinIndex(ioportid_t port, ioportmask_t pin)
const char * hwOnChipPhysicalPinName(ioportid_t hwPort, int hwPin)
void initPinRepository()
const char *& getBrainUsedPin(size_t idx)
void debugBrainPin(char *buffer, size_t size, brain_pin_e brainPin)
const char * getPinFunction(brain_input_pin_e brainPin)
bool isBrainPinValid(Gpio brainPin)
bool brain_pin_markUsed(brain_pin_e brainPin, const char *msg)
ioportid_t getBrainPinPort(brain_pin_e brainPin)
bool gpio_pin_markUsed(ioportid_t port, ioportmask_t pin, const char *msg)
brain_pin_diag_e
brain_pin_e pin
Definition stm32_adc.cpp:15
composite packet size
static BigBufferHandle buffer