mirror of
https://github.com/apache/nuttx.git
synced 2026-06-08 10:32:47 +08:00
board/spresense: Add pin selection of ILI934x
Add Kconfig choice for selecting RST and DC pins on ILI934x LCD.
This commit is contained in:
committed by
Masayuki Ishikawa
parent
22d2ef0bf4
commit
771bd8ca17
@@ -514,6 +514,189 @@ config LCD_ON_MAIN_BOARD
|
||||
Display connected to main board.
|
||||
|
||||
endchoice
|
||||
|
||||
if LCD_ON_MAIN_BOARD
|
||||
|
||||
choice
|
||||
prompt "LCD ILI934x RST Pin selection"
|
||||
default LCD_RSTPIN_I2S0_BCK
|
||||
|
||||
config LCD_RSTPIN_UART2_TX
|
||||
bool "UART2_TX (D01) PIN"
|
||||
|
||||
config LCD_RSTPIN_UART2_RX
|
||||
bool "UART2_RX (D00) PIN"
|
||||
|
||||
config LCD_RSTPIN_UART2_RTS
|
||||
bool "UART2_RTS (D28) PIN"
|
||||
|
||||
config LCD_RSTPIN_UART2_CTS
|
||||
bool "UART2_CTS (D27) PIN"
|
||||
|
||||
config LCD_RSTPIN_I2S0_BCK
|
||||
bool "I2S0_BCK (D26) PIN"
|
||||
|
||||
config LCD_RSTPIN_I2S0_LRCK
|
||||
bool "I2S0_LRCK (D25) PIN"
|
||||
|
||||
config LCD_RSTPIN_SEN_IRQ_IN
|
||||
bool "SEN_IRQ_IN (D22) PIN"
|
||||
|
||||
config LCD_RSTPIN_EMMC_DATA3
|
||||
bool "EMMC_DATA3 (D21) PIN"
|
||||
|
||||
config LCD_RSTPIN_EMMC_DATA2
|
||||
bool "EMMC_DATA2 (D20) PIN"
|
||||
|
||||
config LCD_RSTPIN_I2S0_DATA_IN
|
||||
bool "I2S0_DATA_IN (D19) PIN"
|
||||
|
||||
config LCD_RSTPIN_I2S0_DATA_OUT
|
||||
bool "I2S0_DATA_OUT (D18) PIN"
|
||||
|
||||
config LCD_RSTPIN_I2C0_SCL
|
||||
bool "I2C0_SCL (D15) PIN"
|
||||
|
||||
config LCD_RSTPIN_I2C0_SDA
|
||||
bool "I2C0_SDA (D14) PIN"
|
||||
|
||||
endchoice
|
||||
|
||||
choice
|
||||
prompt "LCD ILI934x DC Pin selection"
|
||||
default LCD_DCPIN_I2S0_LRCK
|
||||
|
||||
config LCD_DCPIN_UART2_TX
|
||||
bool "UART2_TX (D01) PIN"
|
||||
|
||||
config LCD_DCPIN_UART2_RX
|
||||
bool "UART2_RX (D00) PIN"
|
||||
|
||||
config LCD_DCPIN_UART2_RTS
|
||||
bool "UART2_RTS (D28) PIN"
|
||||
|
||||
config LCD_DCPIN_UART2_CTS
|
||||
bool "UART2_CTS (D27) PIN"
|
||||
|
||||
config LCD_DCPIN_I2S0_BCK
|
||||
bool "I2S0_BCK (D26) PIN"
|
||||
|
||||
config LCD_DCPIN_I2S0_LRCK
|
||||
bool "I2S0_LRCK (D25) PIN"
|
||||
|
||||
config LCD_DCPIN_SEN_IRQ_IN
|
||||
bool "SEN_IRQ_IN (D22) PIN"
|
||||
|
||||
config LCD_DCPIN_EMMC_DATA3
|
||||
bool "EMMC_DATA3 (D21) PIN"
|
||||
|
||||
config LCD_DCPIN_EMMC_DATA2
|
||||
bool "EMMC_DATA2 (D20) PIN"
|
||||
|
||||
config LCD_DCPIN_I2S0_DATA_IN
|
||||
bool "I2S0_DATA_IN (D19) PIN"
|
||||
|
||||
config LCD_DCPIN_I2S0_DATA_OUT
|
||||
bool "I2S0_DATA_OUT (D18) PIN"
|
||||
|
||||
config LCD_DCPIN_I2C0_SCL
|
||||
bool "I2C0_SCL (D15) PIN"
|
||||
|
||||
config LCD_DCPIN_I2C0_SDA
|
||||
bool "I2C0_SDA (D14) PIN"
|
||||
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
if LCD_ON_EXTENSION_BOARD
|
||||
|
||||
choice
|
||||
prompt "LCD ILI934x RST Pin selection"
|
||||
default LCD_RSTPIN_SPI2_MISO
|
||||
|
||||
config LCD_RSTPIN_I2C0_SCL_E
|
||||
bool "I2C0_SCL (D15) PIN"
|
||||
|
||||
config LCD_RSTPIN_I2C0_SDA_E
|
||||
bool "I2C0_SDA (D14) PIN"
|
||||
|
||||
config LCD_RSTPIN_PWM2
|
||||
bool "PWM2 (D09) PIN"
|
||||
|
||||
config LCD_RSTPIN_SPI2_MISO
|
||||
bool "SPI2_MISO (D08) PIN"
|
||||
|
||||
config LCD_RSTPIN_SPI3_CS1_X
|
||||
bool "SPI3_CS1_X (D07) PIN"
|
||||
|
||||
config LCD_RSTPIN_PWM0
|
||||
bool "PWM0 (D06) PIN"
|
||||
|
||||
config LCD_RSTPIN_PWM1
|
||||
bool "PWM1 (D05) PIN"
|
||||
|
||||
config LCD_RSTPIN_SPI2_MOSI
|
||||
bool "SPI2_MOSI (D04) PIN"
|
||||
|
||||
config LCD_RSTPIN_PWM3
|
||||
bool "PWM3 (D03) PIN"
|
||||
|
||||
config LCD_RSTPIN_HIF_IRQ_OUT
|
||||
bool "HIF_IRQ_OUT (D02) PIN"
|
||||
|
||||
config LCD_RSTPIN_UART2_TX_E
|
||||
bool "UART2_TX (D01) PIN"
|
||||
|
||||
config LCD_RSTPIN_UART2_RX_E
|
||||
bool "UART2_RX (D00) PIN"
|
||||
|
||||
endchoice
|
||||
|
||||
choice
|
||||
prompt "LCD ILI934x DC Pin selection"
|
||||
default LCD_DCPIN_PWM2
|
||||
|
||||
config LCD_DCPIN_I2C0_SCL_E
|
||||
bool "I2C0_SCL (D15) PIN"
|
||||
|
||||
config LCD_DCPIN_I2C0_SDA_E
|
||||
bool "I2C0_SDA (D14) PIN"
|
||||
|
||||
config LCD_DCPIN_PWM2
|
||||
bool "PWM2 (D09) PIN"
|
||||
|
||||
config LCD_DCPIN_SPI2_MISO
|
||||
bool "SPI2_MISO (D08) PIN"
|
||||
|
||||
config LCD_DCPIN_SPI3_CS1_X
|
||||
bool "SPI3_CS1_X (D07) PIN"
|
||||
|
||||
config LCD_DCPIN_PWM0
|
||||
bool "PWM0 (D06) PIN"
|
||||
|
||||
config LCD_DCPIN_PWM1
|
||||
bool "PWM1 (D05) PIN"
|
||||
|
||||
config LCD_DCPIN_SPI2_MOSI
|
||||
bool "SPI2_MOSI (D04) PIN"
|
||||
|
||||
config LCD_DCPIN_PWM3
|
||||
bool "PWM3 (D03) PIN"
|
||||
|
||||
config LCD_DCPIN_HIF_IRQ_OUT
|
||||
bool "HIF_IRQ_OUT (D02) PIN"
|
||||
|
||||
config LCD_DCPIN_UART2_TX_E
|
||||
bool "UART2_TX (D01) PIN"
|
||||
|
||||
config LCD_DCPIN_UART2_RX_E
|
||||
bool "UART2_RX (D00) PIN"
|
||||
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
choice
|
||||
|
||||
@@ -30,6 +30,8 @@
|
||||
#include <sys/boardctl.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#include "board_lcdpins.h"
|
||||
|
||||
#include "cxd56_clock.h"
|
||||
#include "cxd56_power.h"
|
||||
#include "cxd56_flash.h"
|
||||
@@ -212,9 +214,6 @@ enum board_power_device
|
||||
|
||||
#if defined(CONFIG_LCD_ON_MAIN_BOARD) /* Display connected to main board. */
|
||||
|
||||
#define DISPLAY_RST PIN_I2S0_BCK
|
||||
#define DISPLAY_DC PIN_I2S0_LRCK
|
||||
|
||||
#define DISPLAY_SPI 5
|
||||
|
||||
#define DISPLAY_DMA_TXCH (4)
|
||||
@@ -226,9 +225,6 @@ enum board_power_device
|
||||
|
||||
#else /* Display is connected through extension board. */
|
||||
|
||||
#define DISPLAY_RST PIN_SPI2_MISO
|
||||
#define DISPLAY_DC PIN_PWM2
|
||||
|
||||
#define DISPLAY_SPI 4
|
||||
|
||||
#define DISPLAY_DMA_TXCH (2)
|
||||
@@ -240,6 +236,9 @@ enum board_power_device
|
||||
|
||||
#endif
|
||||
|
||||
#define DISPLAY_RST ILI934X_RST_PIN
|
||||
#define DISPLAY_DC ILI934X_DC_PIN
|
||||
|
||||
/* Sensor device bus definitions ********************************************/
|
||||
|
||||
#define SENSOR_I2C 0
|
||||
|
||||
@@ -0,0 +1,146 @@
|
||||
/****************************************************************************
|
||||
* boards/arm/cxd56xx/spresense/include/board_lcdpins.h
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership. The
|
||||
* ASF licenses this file to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance with the
|
||||
* License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
* License for the specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __BOARDS_ARM_CXD56XX_SPRESENSE_INCLUDE_BOARD_LCDPINS_H
|
||||
#define __BOARDS_ARM_CXD56XX_SPRESENSE_INCLUDE_BOARD_LCDPINS_H
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/* ILI934X RST pin definition */
|
||||
|
||||
#if defined(CONFIG_LCD_RSTPIN_UART2_TX) \
|
||||
|| defined(CONFIG_LCD_RSTPIN_UART2_TX_E)
|
||||
# define ILI934X_RST_PIN PIN_UART2_TXD
|
||||
#elif defined(CONFIG_LCD_RSTPIN_UART2_RX) \
|
||||
|| defined(CONFIG_LCD_RSTPIN_UART2_RX_E)
|
||||
# define ILI934X_RST_PIN PIN_UART2_RXD
|
||||
#elif defined(CONFIG_LCD_RSTPIN_UART2_RTS)
|
||||
# define ILI934X_RST_PIN PIN_UART2_RTS
|
||||
#elif defined(CONFIG_LCD_RSTPIN_UART2_CTS)
|
||||
# define ILI934X_RST_PIN PIN_UART2_CTS
|
||||
#elif defined(CONFIG_LCD_RSTPIN_I2S0_BCK)
|
||||
# define ILI934X_RST_PIN PIN_I2S0_BCK
|
||||
#elif defined(CONFIG_LCD_RSTPIN_I2S0_LRCK)
|
||||
# define ILI934X_RST_PIN PIN_I2S0_LRCK
|
||||
#elif defined(CONFIG_LCD_RSTPIN_SEN_IRQ_IN)
|
||||
# define ILI934X_RST_PIN PIN_SEN_IRQ_IN
|
||||
#elif defined(CONFIG_LCD_RSTPIN_EMMC_DATA3)
|
||||
# define ILI934X_RST_PIN PIN_EMMC_DATA3
|
||||
#elif defined(CONFIG_LCD_RSTPIN_EMMC_DATA2)
|
||||
# define ILI934X_RST_PIN PIN_EMMC_DATA2
|
||||
#elif defined(CONFIG_LCD_RSTPIN_I2S0_DATA_IN)
|
||||
# define ILI934X_RST_PIN PIN_I2S0_DATA_IN
|
||||
#elif defined(CONFIG_LCD_RSTPIN_I2S0_DATA_OUT)
|
||||
# define ILI934X_RST_PIN PIN_I2S0_DATA_OUT
|
||||
#elif defined(CONFIG_LCD_RSTPIN_I2C0_SCL) \
|
||||
|| defined(CONFIG_LCD_RSTPIN_I2C0_SCL_E)
|
||||
# define ILI934X_RST_PIN PIN_I2C0_BCK
|
||||
#elif defined(CONFIG_LCD_RSTPIN_I2C0_SDA) \
|
||||
|| defined(CONFIG_LCD_RSTPIN_I2C0_SDA_E)
|
||||
# define ILI934X_RST_PIN PIN_I2C0_BDT
|
||||
#elif defined(CONFIG_LCD_RSTPIN_PWM2)
|
||||
# define ILI934X_RST_PIN PIN_PWM2
|
||||
#elif defined(CONFIG_LCD_RSTPIN_SPI2_MISO)
|
||||
# define ILI934X_RST_PIN PIN_SPI2_MISO
|
||||
#elif defined(CONFIG_LCD_RSTPIN_SPI3_CS1_X)
|
||||
# define ILI934X_RST_PIN PIN_SPI3_CS1_X
|
||||
#elif defined(CONFIG_LCD_RSTPIN_PWM0)
|
||||
# define ILI934X_RST_PIN PIN_PWM0
|
||||
#elif defined(CONFIG_LCD_RSTPIN_PWM1)
|
||||
# define ILI934X_RST_PIN PIN_PWM1
|
||||
#elif defined(CONFIG_LCD_RSTPIN_SPI2_MOSI)
|
||||
# define ILI934X_RST_PIN PIN_SPI2_MOSI
|
||||
#elif defined(CONFIG_LCD_RSTPIN_PWM3)
|
||||
# define ILI934X_RST_PIN PIN_PWM3
|
||||
#elif defined(CONFIG_LCD_RSTPIN_HIF_IRQ_OUT)
|
||||
# define ILI934X_RST_PIN PIN_HIF_IRQ_OUT
|
||||
#endif
|
||||
|
||||
/* ILI934X DC pin definition */
|
||||
|
||||
#if defined(CONFIG_LCD_DCPIN_UART2_TX) \
|
||||
|| defined(CONFIG_LCD_DCPIN_UART2_TX_E)
|
||||
# define ILI934X_DC_PIN PIN_UART2_TXD
|
||||
#elif defined(CONFIG_LCD_DCPIN_UART2_RX) \
|
||||
|| defined(CONFIG_LCD_DCPIN_UART2_RX_E)
|
||||
# define ILI934X_DC_PIN PIN_UART2_RXD
|
||||
#elif defined(CONFIG_LCD_DCPIN_UART2_RTS)
|
||||
# define ILI934X_DC_PIN PIN_UART2_RTS
|
||||
#elif defined(CONFIG_LCD_DCPIN_UART2_CTS)
|
||||
# define ILI934X_DC_PIN PIN_UART2_CTS
|
||||
#elif defined(CONFIG_LCD_DCPIN_I2S0_BCK)
|
||||
# define ILI934X_DC_PIN PIN_I2S0_BCK
|
||||
#elif defined(CONFIG_LCD_DCPIN_I2S0_LRCK)
|
||||
# define ILI934X_DC_PIN PIN_I2S0_LRCK
|
||||
#elif defined(CONFIG_LCD_DCPIN_SEN_IRQ_IN)
|
||||
# define ILI934X_DC_PIN PIN_SEN_IRQ_IN
|
||||
#elif defined(CONFIG_LCD_DCPIN_EMMC_DATA3)
|
||||
# define ILI934X_DC_PIN PIN_EMMC_DATA3
|
||||
#elif defined(CONFIG_LCD_DCPIN_EMMC_DATA2)
|
||||
# define ILI934X_DC_PIN PIN_EMMC_DATA2
|
||||
#elif defined(CONFIG_LCD_DCPIN_I2S0_DATA_IN)
|
||||
# define ILI934X_DC_PIN PIN_I2S0_DATA_IN
|
||||
#elif defined(CONFIG_LCD_DCPIN_I2S0_DATA_OUT)
|
||||
# define ILI934X_DC_PIN PIN_I2S0_DATA_OUT
|
||||
#elif defined(CONFIG_LCD_DCPIN_I2C0_SCL) \
|
||||
|| defined(CONFIG_LCD_DCPIN_I2C0_SCL_E)
|
||||
# define ILI934X_DC_PIN PIN_I2C0_BCK
|
||||
#elif defined(CONFIG_LCD_DCPIN_I2C0_SDA) \
|
||||
|| defined(CONFIG_LCD_DCPIN_I2C0_SDA_E)
|
||||
# define ILI934X_DC_PIN PIN_I2C0_BDT
|
||||
#elif defined(CONFIG_LCD_DCPIN_PWM2)
|
||||
# define ILI934X_DC_PIN PIN_PWM2
|
||||
#elif defined(CONFIG_LCD_DCPIN_SPI2_MISO)
|
||||
# define ILI934X_DC_PIN PIN_SPI2_MISO
|
||||
#elif defined(CONFIG_LCD_DCPIN_SPI3_CS1_X)
|
||||
# define ILI934X_DC_PIN PIN_SPI3_CS1_X
|
||||
#elif defined(CONFIG_LCD_DCPIN_PWM0)
|
||||
# define ILI934X_DC_PIN PIN_PWM0
|
||||
#elif defined(CONFIG_LCD_DCPIN_PWM1)
|
||||
# define ILI934X_DC_PIN PIN_PWM1
|
||||
#elif defined(CONFIG_LCD_DCPIN_SPI2_MOSI)
|
||||
# define ILI934X_DC_PIN PIN_SPI2_MOSI
|
||||
#elif defined(CONFIG_LCD_DCPIN_PWM3)
|
||||
# define ILI934X_DC_PIN PIN_PWM3
|
||||
#elif defined(CONFIG_LCD_DCPIN_HIF_IRQ_OUT)
|
||||
# define ILI934X_DC_PIN PIN_HIF_IRQ_OUT
|
||||
#endif
|
||||
|
||||
#if !defined(CONFIG_LCD)
|
||||
|
||||
# if !defined(ILI934X_RST_PIN)
|
||||
# define ILI934X_RST_PIN 0
|
||||
# endif
|
||||
|
||||
# if !defined(ILI934X_DC_PIN)
|
||||
# define ILI934X_DC_PIN 0
|
||||
# endif
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* __BOARDS_ARM_CXD56XX_SPRESENSE_INCLUDE_BOARD_LCDPINS_H */
|
||||
Reference in New Issue
Block a user