Browse Source

AP_HAL_Linux: add GPIO definitions for minlure

master
Lucas De Marchi 9 years ago committed by Andrew Tridgell
parent
commit
4992375bab
  1. 2
      libraries/AP_HAL_Linux/GPIO.h
  2. 37
      libraries/AP_HAL_Linux/GPIO_Minnow.cpp
  3. 29
      libraries/AP_HAL_Linux/GPIO_Minnow.h
  4. 2
      libraries/AP_HAL_Linux/HAL_Linux_Class.cpp

2
libraries/AP_HAL_Linux/GPIO.h

@ -21,6 +21,8 @@ private: @@ -21,6 +21,8 @@ private:
#include "GPIO_BBB.h"
#elif CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_NAVIO || CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_RASPILOT
#include "GPIO_RPI.h"
#elif CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_MINLURE
#include "GPIO_Minnow.h"
#endif
#endif // CONFIG_HAL_BOARD == HAL_BOARD_LINUX

37
libraries/AP_HAL_Linux/GPIO_Minnow.cpp

@ -0,0 +1,37 @@ @@ -0,0 +1,37 @@
#include <AP_Common/AP_Common.h>
#include "GPIO_Minnow.h"
#if CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_MINLURE
const unsigned Linux::GPIO_Sysfs::pin_table[] = {
[MINNOW_GPIO_SPI_CS] = 476,
[MINNOW_GPIO_SPI_MISO] = 477,
[MINNOW_GPIO_SPI_MOSI] = 478,
[MINNOW_GPIO_SPI_CLK] = 479,
[MINNOW_GPIO_I2C_SCL] = 499,
[MINNOW_GPIO_I2C_SDA] = 498,
[MINNOW_GPIO_UART2_TXD] = 485,
[MINNOW_GPIO_UART2_RXD] = 484,
[MINNOW_GPIO_S5_0] = 338,
[MINNOW_GPIO_S5_1] = 339,
[MINNOW_GPIO_S5_2] = 340,
[MINNOW_GPIO_UART1_TXD] = 481,
[MINNOW_GPIO_UART1_RXD] = 480,
[MINNOW_GPIO_UART1_CTS] = 483,
[MINNOW_GPIO_UART1_RTS] = 482,
[MINNOW_GPIO_I2S_CLK] = 472,
[MINNOW_GPIO_I2S_FRM] = 473,
[MINNOW_GPIO_I2S_DO] = 475,
[MINNOW_GPIO_I2S_DI] = 474,
[MINNOW_GPIO_PWM0] = 504,
[MINNOW_GPIO_PWM1] = 505,
[MINNOW_GPIO_IBL_8254] = 464,
};
const uint8_t Linux::GPIO_Sysfs::n_pins = _MINNOW_GPIO_MAX;
static_assert(ARRAY_SIZE(Linux::GPIO_Sysfs::pin_table) == _MINNOW_GPIO_MAX,
"GPIO pin_table must have the same size of entries in enum gpio_minnow");
#endif

29
libraries/AP_HAL_Linux/GPIO_Minnow.h

@ -0,0 +1,29 @@ @@ -0,0 +1,29 @@
#pragma once
#include "GPIO_Sysfs.h"
enum gpio_minnow {
MINNOW_GPIO_SPI_CS,
MINNOW_GPIO_SPI_MISO,
MINNOW_GPIO_SPI_MOSI,
MINNOW_GPIO_SPI_CLK,
MINNOW_GPIO_I2C_SCL,
MINNOW_GPIO_I2C_SDA,
MINNOW_GPIO_UART2_TXD,
MINNOW_GPIO_UART2_RXD,
MINNOW_GPIO_S5_0,
MINNOW_GPIO_S5_1,
MINNOW_GPIO_S5_2,
MINNOW_GPIO_UART1_TXD,
MINNOW_GPIO_UART1_RXD,
MINNOW_GPIO_UART1_CTS,
MINNOW_GPIO_UART1_RTS,
MINNOW_GPIO_I2S_CLK,
MINNOW_GPIO_I2S_FRM,
MINNOW_GPIO_I2S_DO,
MINNOW_GPIO_I2S_DI,
MINNOW_GPIO_PWM0,
MINNOW_GPIO_PWM1,
MINNOW_GPIO_IBL_8254,
_MINNOW_GPIO_MAX,
};

2
libraries/AP_HAL_Linux/HAL_Linux_Class.cpp

@ -72,6 +72,8 @@ static GPIO_BBB gpioDriver; @@ -72,6 +72,8 @@ static GPIO_BBB gpioDriver;
*/
#elif CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_NAVIO || CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_RASPILOT
static GPIO_RPI gpioDriver;
#elif CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_MINLURE
static GPIO_Sysfs gpioDriver;
#else
static Empty::EmptyGPIO gpioDriver;
#endif

Loading…
Cancel
Save