mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-19 14:25:20 +03:00
Fix after rebase
This commit is contained in:
parent
907762f2a7
commit
4fd046470b
5 changed files with 33 additions and 22 deletions
|
@ -141,8 +141,14 @@ void spiInitDevice(SPIDevice device)
|
||||||
|
|
||||||
|
|
||||||
#ifdef SDCARD_SPI_INSTANCE
|
#ifdef SDCARD_SPI_INSTANCE
|
||||||
if (spi->dev == SDCARD_SPI_INSTANCE)
|
if (spi->dev == SDCARD_SPI_INSTANCE) {
|
||||||
spi->sdcard = true;
|
spi->leadingEdge = true;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#ifdef RX_SPI_INSTANCE
|
||||||
|
if (spi->dev == RX_SPI_INSTANCE) {
|
||||||
|
spi->leadingEdge = true;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Enable SPI clock
|
// Enable SPI clock
|
||||||
|
@ -157,15 +163,19 @@ void spiInitDevice(SPIDevice device)
|
||||||
IOConfigGPIOAF(IOGetByTag(spi->sck), SPI_IO_AF_CFG, spi->af);
|
IOConfigGPIOAF(IOGetByTag(spi->sck), SPI_IO_AF_CFG, spi->af);
|
||||||
IOConfigGPIOAF(IOGetByTag(spi->miso), SPI_IO_AF_CFG, spi->af);
|
IOConfigGPIOAF(IOGetByTag(spi->miso), SPI_IO_AF_CFG, spi->af);
|
||||||
IOConfigGPIOAF(IOGetByTag(spi->mosi), SPI_IO_AF_CFG, spi->af);
|
IOConfigGPIOAF(IOGetByTag(spi->mosi), SPI_IO_AF_CFG, spi->af);
|
||||||
if (spi->nss)
|
|
||||||
|
if (spi->nss) {
|
||||||
IOConfigGPIOAF(IOGetByTag(spi->nss), SPI_IO_CS_CFG, spi->af);
|
IOConfigGPIOAF(IOGetByTag(spi->nss), SPI_IO_CS_CFG, spi->af);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
#if defined(STM32F10X)
|
#if defined(STM32F10X)
|
||||||
IOConfigGPIO(IOGetByTag(spi->sck), SPI_IO_AF_SCK_CFG);
|
IOConfigGPIO(IOGetByTag(spi->sck), SPI_IO_AF_SCK_CFG);
|
||||||
IOConfigGPIO(IOGetByTag(spi->miso), SPI_IO_AF_MISO_CFG);
|
IOConfigGPIO(IOGetByTag(spi->miso), SPI_IO_AF_MISO_CFG);
|
||||||
IOConfigGPIO(IOGetByTag(spi->mosi), SPI_IO_AF_MOSI_CFG);
|
IOConfigGPIO(IOGetByTag(spi->mosi), SPI_IO_AF_MOSI_CFG);
|
||||||
if (spi->nss)
|
|
||||||
|
if (spi->nss) {
|
||||||
IOConfigGPIO(IOGetByTag(spi->nss), SPI_IO_CS_CFG);
|
IOConfigGPIO(IOGetByTag(spi->nss), SPI_IO_CS_CFG);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
SPI_HandleTypeDef Handle;
|
SPI_HandleTypeDef Handle;
|
||||||
Handle.Instance = spi->dev;
|
Handle.Instance = spi->dev;
|
||||||
|
@ -182,7 +192,7 @@ void spiInitDevice(SPIDevice device)
|
||||||
spiInit.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
spiInit.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||||||
spiInit.TIMode = SPI_TIMODE_DISABLED;
|
spiInit.TIMode = SPI_TIMODE_DISABLED;
|
||||||
|
|
||||||
if (spi->sdcard) {
|
if (spi->leadingEdge) {
|
||||||
spiInit.CLKPolarity = SPI_POLARITY_LOW;
|
spiInit.CLKPolarity = SPI_POLARITY_LOW;
|
||||||
spiInit.CLKPhase = SPI_PHASE_1EDGE;
|
spiInit.CLKPhase = SPI_PHASE_1EDGE;
|
||||||
}
|
}
|
||||||
|
@ -200,8 +210,9 @@ void spiInitDevice(SPIDevice device)
|
||||||
if (HAL_SPI_Init(&Handle) == HAL_OK)
|
if (HAL_SPI_Init(&Handle) == HAL_OK)
|
||||||
{
|
{
|
||||||
spiHandle[device].Handle = Handle;
|
spiHandle[device].Handle = Handle;
|
||||||
if (spi->nss)
|
if (spi->nss) {
|
||||||
IOHi(IOGetByTag(spi->nss));
|
IOHi(IOGetByTag(spi->nss));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -262,7 +262,7 @@ void uartStartTxDMA(uartPort_t *s)
|
||||||
s->txDMAEmpty = false;
|
s->txDMAEmpty = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t uartTotalRxBytesWaiting(serialPort_t *instance)
|
uint32_t uartTotalRxBytesWaiting(const serialPort_t *instance)
|
||||||
{
|
{
|
||||||
uartPort_t *s = (uartPort_t*)instance;
|
uartPort_t *s = (uartPort_t*)instance;
|
||||||
|
|
||||||
|
@ -283,7 +283,7 @@ uint32_t uartTotalRxBytesWaiting(serialPort_t *instance)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t uartTotalTxBytesFree(serialPort_t *instance)
|
uint32_t uartTotalTxBytesFree(const serialPort_t *instance)
|
||||||
{
|
{
|
||||||
uartPort_t *s = (uartPort_t*)instance;
|
uartPort_t *s = (uartPort_t*)instance;
|
||||||
|
|
||||||
|
@ -318,7 +318,7 @@ uint32_t uartTotalTxBytesFree(serialPort_t *instance)
|
||||||
return (s->port.txBufferSize - 1) - bytesUsed;
|
return (s->port.txBufferSize - 1) - bytesUsed;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isUartTransmitBufferEmpty(serialPort_t *instance)
|
bool isUartTransmitBufferEmpty(const serialPort_t *instance)
|
||||||
{
|
{
|
||||||
uartPort_t *s = (uartPort_t *)instance;
|
uartPort_t *s = (uartPort_t *)instance;
|
||||||
if (s->txDMAStream)
|
if (s->txDMAStream)
|
||||||
|
@ -371,13 +371,13 @@ void uartWrite(serialPort_t *instance, uint8_t ch)
|
||||||
|
|
||||||
const struct serialPortVTable uartVTable[] = {
|
const struct serialPortVTable uartVTable[] = {
|
||||||
{
|
{
|
||||||
uartWrite,
|
.serialWrite = uartWrite,
|
||||||
uartTotalRxBytesWaiting,
|
.serialTotalRxWaiting = uartTotalRxBytesWaiting,
|
||||||
uartTotalTxBytesFree,
|
.serialTotalTxFree = uartTotalTxBytesFree,
|
||||||
uartRead,
|
.serialRead = uartRead,
|
||||||
uartSetBaudRate,
|
.serialSetBaudRate = uartSetBaudRate,
|
||||||
isUartTransmitBufferEmpty,
|
.isSerialTransmitBufferEmpty = isUartTransmitBufferEmpty,
|
||||||
uartSetMode,
|
.setMode = uartSetMode,
|
||||||
.writeBuf = NULL,
|
.writeBuf = NULL,
|
||||||
.beginWrite = NULL,
|
.beginWrite = NULL,
|
||||||
.endWrite = NULL,
|
.endWrite = NULL,
|
||||||
|
|
|
@ -54,13 +54,13 @@ static void usbVcpSetMode(serialPort_t *instance, portMode_t mode)
|
||||||
// TODO implement
|
// TODO implement
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool isUsbVcpTransmitBufferEmpty(serialPort_t *instance)
|
static bool isUsbVcpTransmitBufferEmpty(const serialPort_t *instance)
|
||||||
{
|
{
|
||||||
UNUSED(instance);
|
UNUSED(instance);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t usbVcpAvailable(serialPort_t *instance)
|
static uint32_t usbVcpAvailable(const serialPort_t *instance)
|
||||||
{
|
{
|
||||||
UNUSED(instance);
|
UNUSED(instance);
|
||||||
uint32_t receiveLength = vcpAvailable();
|
uint32_t receiveLength = vcpAvailable();
|
||||||
|
@ -73,7 +73,7 @@ static uint8_t usbVcpRead(serialPort_t *instance)
|
||||||
return vcpRead();
|
return vcpRead();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void usbVcpWriteBuf(serialPort_t *instance, void *data, int count)
|
static void usbVcpWriteBuf(serialPort_t *instance, const void *data, int count)
|
||||||
{
|
{
|
||||||
UNUSED(instance);
|
UNUSED(instance);
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@ static void usbVcpWriteBuf(serialPort_t *instance, void *data, int count)
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t start = millis();
|
uint32_t start = millis();
|
||||||
uint8_t *p = data;
|
const uint8_t *p = data;
|
||||||
while (count > 0) {
|
while (count > 0) {
|
||||||
uint32_t txed = vcpWrite(p, count);
|
uint32_t txed = vcpWrite(p, count);
|
||||||
count -= txed;
|
count -= txed;
|
||||||
|
|
|
@ -357,7 +357,7 @@ uint32_t CDC_Send_FreeBytes(void)
|
||||||
* @param Len: Number of data to be sent (in bytes)
|
* @param Len: Number of data to be sent (in bytes)
|
||||||
* @retval Result of the opeartion: USBD_OK if all operations are OK else VCP_FAIL
|
* @retval Result of the opeartion: USBD_OK if all operations are OK else VCP_FAIL
|
||||||
*/
|
*/
|
||||||
uint32_t vcpWrite(uint8_t* Buf, uint32_t Len)
|
uint32_t vcpWrite(const uint8_t* Buf, uint32_t Len)
|
||||||
{
|
{
|
||||||
uint32_t ptr_head = UserTxBufPtrIn;
|
uint32_t ptr_head = UserTxBufPtrIn;
|
||||||
uint32_t ptr_tail = UserTxBufPtrOut;
|
uint32_t ptr_tail = UserTxBufPtrOut;
|
||||||
|
|
|
@ -69,7 +69,7 @@ extern USBD_CDC_ItfTypeDef USBD_CDC_fops;
|
||||||
|
|
||||||
uint8_t vcpRead();
|
uint8_t vcpRead();
|
||||||
uint8_t vcpAvailable();
|
uint8_t vcpAvailable();
|
||||||
uint32_t vcpWrite(uint8_t* Buf, uint32_t Len);
|
uint32_t vcpWrite(const uint8_t* Buf, uint32_t Len);
|
||||||
uint32_t vcpBaudrate();
|
uint32_t vcpBaudrate();
|
||||||
uint8_t vcpIsConnected();
|
uint8_t vcpIsConnected();
|
||||||
uint32_t CDC_Send_FreeBytes(void);
|
uint32_t CDC_Send_FreeBytes(void);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue