From d98e6c5d0d6c048c99aeda810da10e6a6a130325 Mon Sep 17 00:00:00 2001 From: Joel Bodenmann Date: Sun, 21 Jul 2013 17:42:25 +0200 Subject: [PATCH] cleaned up board file mess --- drivers/gdisp/HX8347D/gdisp_lld.c | 10 +- .../gdisp/HX8347D/gdisp_lld_board_template.h | 120 ++++++++++ drivers/gdisp/HX8347D/readme.txt | 24 -- drivers/gdisp/ILI9320/gdisp_lld.c | 11 +- ...d_example.h => gdisp_lld_board_template.h} | 19 +- drivers/gdisp/ILI9320/readme.txt | 15 -- drivers/gdisp/ILI9325/gdisp_lld.c | 9 +- ...d_example.h => gdisp_lld_board_template.h} | 15 +- drivers/gdisp/ILI9325/readme.txt | 15 -- drivers/gdisp/ILI9481/gdisp_lld.c | 10 +- .../ILI9481/gdisp_lld_board_example_fsmc.h | 152 ------------ ...d_example.h => gdisp_lld_board_template.h} | 24 +- drivers/gdisp/ILI9481/readme.txt | 15 -- drivers/gdisp/Nokia6610GE12/gdisp_lld.c | 10 +- .../gdisp_lld_board_template.h} | 224 +++++++++--------- drivers/gdisp/Nokia6610GE12/readme.txt | 15 -- drivers/gdisp/Nokia6610GE8/GE8.h | 96 ++++---- drivers/gdisp/Nokia6610GE8/gdisp_lld.c | 10 +- drivers/gdisp/Nokia6610GE8/gdisp_lld.mk | 10 +- .../gdisp_lld_board_template.h} | 224 +++++++++--------- drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h | 76 +++--- drivers/gdisp/Nokia6610GE8/readme.txt | 15 -- ...d_example.h => gdisp_lld_board_template.h} | 2 +- drivers/gdisp/S6D1121/gdisp_lld.c | 9 +- drivers/gdisp/S6D1121/gdisp_lld.mk | 10 +- .../S6D1121/gdisp_lld_board_olimex_e407.h | 150 ++++++------ ...d_example.h => gdisp_lld_board_template.h} | 206 ++++++++-------- drivers/gdisp/S6D1121/gdisp_lld_config.h | 68 +++--- drivers/gdisp/S6D1121/readme.txt | 8 - drivers/gdisp/SSD1289/gdisp_lld.c | 12 +- .../SSD1289/gdisp_lld_board_example_fsmc.h | 151 ------------ ...d_example.h => gdisp_lld_board_template.h} | 206 ++++++++-------- drivers/gdisp/SSD1289/readme.txt | 20 -- drivers/gdisp/SSD1963/gdisp_lld.c | 7 +- .../SSD1963/gdisp_lld_board_example_fsmc.h | 180 -------------- .../SSD1963/gdisp_lld_board_example_gpio.h | 170 ------------- .../gdisp/SSD1963/gdisp_lld_board_template.h | 115 +++++++++ drivers/gdisp/SSD1963/readme.txt | 38 --- drivers/gdisp/SSD2119/gdisp_lld.c | 10 +- .../gdisp/SSD2119/gdisp_lld_board_template.h | 109 +++++++++ drivers/gdisp/SSD2119/readme.txt | 27 --- drivers/gdisp/TestStub/readme.txt | 16 -- .../ginput/touch/ADS7843/ginput_lld_mouse.c | 12 +- ...le.h => ginput_lld_mouse_board_template.h} | 134 +++++------ drivers/ginput/touch/ADS7843/readme.txt | 8 - ...oard.h => ginput_lld_mouse_board_marlin.h} | 0 ...le.h => ginput_lld_mouse_board_template.h} | 14 +- drivers/ginput/touch/FT5x06/readme.txt | 8 - ...le.h => ginput_lld_mouse_board_template.h} | 153 ++++++------ drivers/ginput/touch/MCU/readme.txt | 8 - .../ginput/touch/STMPE811/ginput_lld_mouse.c | 8 +- ...le.h => ginput_lld_mouse_board_template.h} | 131 +++++----- drivers/ginput/touch/STMPE811/readme.txt | 20 -- 53 files changed, 1209 insertions(+), 1920 deletions(-) create mode 100644 drivers/gdisp/HX8347D/gdisp_lld_board_template.h delete mode 100644 drivers/gdisp/HX8347D/readme.txt rename drivers/gdisp/ILI9320/{gdisp_lld_board_example.h => gdisp_lld_board_template.h} (54%) delete mode 100644 drivers/gdisp/ILI9320/readme.txt rename drivers/gdisp/ILI9325/{gdisp_lld_board_example.h => gdisp_lld_board_template.h} (58%) delete mode 100644 drivers/gdisp/ILI9325/readme.txt delete mode 100644 drivers/gdisp/ILI9481/gdisp_lld_board_example_fsmc.h rename drivers/gdisp/ILI9481/{gdisp_lld_board_example.h => gdisp_lld_board_template.h} (69%) delete mode 100644 drivers/gdisp/ILI9481/readme.txt rename drivers/gdisp/{Nokia6610GE8/gdisp_lld_board_example.h => Nokia6610GE12/gdisp_lld_board_template.h} (68%) delete mode 100644 drivers/gdisp/Nokia6610GE12/readme.txt rename drivers/gdisp/{Nokia6610GE12/gdisp_lld_board_example.h => Nokia6610GE8/gdisp_lld_board_template.h} (67%) delete mode 100644 drivers/gdisp/Nokia6610GE8/readme.txt rename drivers/gdisp/RA8875/{gdisp_lld_board_example.h => gdisp_lld_board_template.h} (96%) rename drivers/gdisp/S6D1121/{gdisp_lld_board_example.h => gdisp_lld_board_template.h} (66%) delete mode 100644 drivers/gdisp/S6D1121/readme.txt delete mode 100644 drivers/gdisp/SSD1289/gdisp_lld_board_example_fsmc.h rename drivers/gdisp/SSD1289/{gdisp_lld_board_example.h => gdisp_lld_board_template.h} (66%) delete mode 100644 drivers/gdisp/SSD1289/readme.txt delete mode 100644 drivers/gdisp/SSD1963/gdisp_lld_board_example_fsmc.h delete mode 100644 drivers/gdisp/SSD1963/gdisp_lld_board_example_gpio.h create mode 100644 drivers/gdisp/SSD1963/gdisp_lld_board_template.h delete mode 100644 drivers/gdisp/SSD1963/readme.txt create mode 100644 drivers/gdisp/SSD2119/gdisp_lld_board_template.h delete mode 100644 drivers/gdisp/SSD2119/readme.txt delete mode 100644 drivers/gdisp/TestStub/readme.txt rename drivers/ginput/touch/ADS7843/{ginput_lld_mouse_board_example.h => ginput_lld_mouse_board_template.h} (68%) delete mode 100644 drivers/ginput/touch/ADS7843/readme.txt rename drivers/ginput/touch/FT5x06/{ginput_lld_mouse_board.h => ginput_lld_mouse_board_marlin.h} (100%) rename drivers/ginput/touch/FT5x06/{ginput_lld_mouse_board_example.h => ginput_lld_mouse_board_template.h} (73%) delete mode 100644 drivers/ginput/touch/FT5x06/readme.txt rename drivers/ginput/touch/MCU/{ginput_lld_mouse_board_example.h => ginput_lld_mouse_board_template.h} (63%) delete mode 100644 drivers/ginput/touch/MCU/readme.txt rename drivers/ginput/touch/STMPE811/{ginput_lld_mouse_board_example.h => ginput_lld_mouse_board_template.h} (63%) delete mode 100644 drivers/ginput/touch/STMPE811/readme.txt diff --git a/drivers/gdisp/HX8347D/gdisp_lld.c b/drivers/gdisp/HX8347D/gdisp_lld.c index 41850600..b19e2c41 100644 --- a/drivers/gdisp/HX8347D/gdisp_lld.c +++ b/drivers/gdisp/HX8347D/gdisp_lld.c @@ -40,15 +40,7 @@ /* Driver local functions. */ /*===========================================================================*/ -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_ST_STM32F4_DISCOVERY) - #include "gdisp_lld_board_st_stm32f4_discovery.h" -#else - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" // Some common routines and macros #define write_reg(reg, data) { write_index(reg); write_data(data); } diff --git a/drivers/gdisp/HX8347D/gdisp_lld_board_template.h b/drivers/gdisp/HX8347D/gdisp_lld_board_template.h new file mode 100644 index 00000000..8c67e20d --- /dev/null +++ b/drivers/gdisp/HX8347D/gdisp_lld_board_template.h @@ -0,0 +1,120 @@ +/* + * This file is subject to the terms of the GFX License. If a copy of + * the license was not distributed with this file, you can obtain one at: + * + * http://chibios-gfx.com/license.html + */ + +/** + * @file drivers/gdisp/HX8347D/gdisp_lld_board_template.h + * @brief GDISP Graphic Driver subsystem board SPI interface for the HX8347D display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +/** + * @brief Initialise the board for the display. + * @notes This board definition uses GPIO and assumes exclusive access to these GPIO pins + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Set or clear the lcd reset pin. + * + * @param[in] state TRUE = lcd in reset, FALSE = normal operation + * + * @notapi + */ +static inline void setpin_reset(bool_t state) { + +} + +/** + * @brief Set the lcd back-light level. + * + * @param[in] percent 0 to 100% + * + * @notapi + */ +static inline void set_backlight(uint8_t percent) { + +} + +/** + * @brief Take exclusive control of the bus + * @note Not needed, not implemented + * + * @notapi + */ +static inline void acquire_bus(void) { + +} + +/** + * @brief Release exclusive control of the bus + * @note Not needed, not implemented + * + * @notapi + */ +static inline void release_bus(void) { + +} + +/** + * @brief Send data to the index register. + * + * @param[in] index The index register to set + * + * @notapi + */ +static inline void write_index(uint8_t cmd) { + +} + +/** + * @brief Send data to the lcd. + * + * @param[in] data The data to send + * + * @notapi + */ +static inline void write_data(uint8_t data) { + + + +} + +static inline void write_ram8(uint8_t data1, uint8_t data2) { + +} + +static inline void write_ram16(uint16_t data) { + +} + +#if GDISP_HARDWARE_READPIXEL || defined(__DOXYGEN__) +/** + * @brief Read data from the lcd. + * + * @return The data from the lcd + * @note The chip select may need to be asserted/de-asserted + * around the actual spi read + * + * @notapi + */ +static inline uint16_t read_data(void) { + +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ + diff --git a/drivers/gdisp/HX8347D/readme.txt b/drivers/gdisp/HX8347D/readme.txt deleted file mode 100644 index d0000287..00000000 --- a/drivers/gdisp/HX8347D/readme.txt +++ /dev/null @@ -1,24 +0,0 @@ -Description: - -Driver for LCD with 4-wire serial interface (65k colors). - -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - - c) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. - Use the gdisp_lld_board_st_stm32f4_discovery.h file as a basis. - Currently known boards are: - BOARD_ST_STM32F4_DISCOVERY - Board configuration assume that you have STM32_PWM_USE_TIM4 set to TRUE in your mcuconf.h. - - d) The following are optional - define them if you are not using the defaults below: - #define GDISP_SCREEN_WIDTH 240 - #define GDISP_SCREEN_HEIGHT 320 - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/HX8347D/gdisp_lld.mk diff --git a/drivers/gdisp/ILI9320/gdisp_lld.c b/drivers/gdisp/ILI9320/gdisp_lld.c index e566876e..457d3b7f 100644 --- a/drivers/gdisp/ILI9320/gdisp_lld.c +++ b/drivers/gdisp/ILI9320/gdisp_lld.c @@ -20,16 +20,7 @@ /* Include the emulation code for things we don't support */ #include "gdisp/lld/emulation.c" -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_OLIMEX_STM32_LCD) - #include "gdisp_lld_board_olimex_stm32_lcd.h" -#elif defined(BOARD_OLIMEX_PIC32MX_LCD) - #include "gdisp_lld_board_olimex_pic32mx_lcd.h" -#else - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" /*===========================================================================*/ /* Driver local definitions. */ diff --git a/drivers/gdisp/ILI9320/gdisp_lld_board_example.h b/drivers/gdisp/ILI9320/gdisp_lld_board_template.h similarity index 54% rename from drivers/gdisp/ILI9320/gdisp_lld_board_example.h rename to drivers/gdisp/ILI9320/gdisp_lld_board_template.h index 4834553b..f72bd237 100644 --- a/drivers/gdisp/ILI9320/gdisp_lld_board_example.h +++ b/drivers/gdisp/ILI9320/gdisp_lld_board_template.h @@ -6,7 +6,7 @@ */ /** - * @file drivers/gdisp/ILI9320/gdisp_lld_board_example.h + * @file drivers/gdisp/ILI9320/gdisp_lld_board_template.h * @brief GDISP Graphic Driver subsystem board interface for the ILI9320 display. * * @addtogroup GDISP @@ -17,36 +17,35 @@ #define GDISP_LLD_BOARD_H static inline void gdisp_lld_init_board(void) { - #error "ILI9320: You must implement the init_board routine for your board" + } static inline void gdisp_lld_reset_pin(bool_t state) { - #error "ILI9320: You must implement setpin_reset routine for your board" + } static inline void acquire_bus(void) { - #error "ILI9320: You must implement setpin_reset routine for your board" + } static inline void release_bus(void) { - #error "ILI9320: You must implement setpin_reset routine for your board" + } static inline void gdisp_lld_write_index(uint16_t data) { - #error "ILI9320: You must implement write_index routine for your board" + } static inline void gdisp_lld_write_data(uint16_t data) { - #error "ILI9320: You must implement write_data routine for your board" + } static inline uint16_t gdisp_lld_read_data(void) { - #error "ILI9320: You must implement read_data routine for your board" + } -/* if not available, just ignore the argument and return */ static inline uint16_t gdisp_lld_backlight(uint8_t percentage) { - #error "ILI9320: You must implement set_backlight routine for your board" + } #endif /* GDISP_LLD_BOARD_H */ diff --git a/drivers/gdisp/ILI9320/readme.txt b/drivers/gdisp/ILI9320/readme.txt deleted file mode 100644 index 028af728..00000000 --- a/drivers/gdisp/ILI9320/readme.txt +++ /dev/null @@ -1,15 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - - d) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. - Use the gdisp_lld_board_example.h file as a basis. - Currently known boards are: - Olimex STM32-LCD - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/ILI9320/gdisp_lld.mk diff --git a/drivers/gdisp/ILI9325/gdisp_lld.c b/drivers/gdisp/ILI9325/gdisp_lld.c index a87f999e..6d80dc3f 100644 --- a/drivers/gdisp/ILI9325/gdisp_lld.c +++ b/drivers/gdisp/ILI9325/gdisp_lld.c @@ -20,14 +20,7 @@ /* Include the emulation code for things we don't support */ #include "gdisp/lld/emulation.c" -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_HY_STM32_100P) - #include "gdisp_lld_board_hy_stm32_100p.h" -#else - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" /*===========================================================================*/ /* Driver local definitions. */ diff --git a/drivers/gdisp/ILI9325/gdisp_lld_board_example.h b/drivers/gdisp/ILI9325/gdisp_lld_board_template.h similarity index 58% rename from drivers/gdisp/ILI9325/gdisp_lld_board_example.h rename to drivers/gdisp/ILI9325/gdisp_lld_board_template.h index 72358b89..3f3eea4c 100644 --- a/drivers/gdisp/ILI9325/gdisp_lld_board_example.h +++ b/drivers/gdisp/ILI9325/gdisp_lld_board_template.h @@ -6,7 +6,7 @@ */ /** - * @file drivers/gdisp/ILI9325/gdisp_lld_board_example.h + * @file drivers/gdisp/ILI9325/gdisp_lld_board_template.h * @brief GDISP Graphic Driver subsystem board interface for the ILI9325 display. * * @addtogroup GDISP @@ -17,28 +17,27 @@ #define GDISP_LLD_BOARD_H static inline void gdisp_lld_init_board(void) { - #error "ILI9325: You must implement the init_board routine for your board" + } static inline void gdisp_lld_reset_pin(bool_t state) { - #error "ILI9325: You must implement setpin_reset routine for your board" + } static inline void gdisp_lld_write_index(uint16_t data) { - #error "ILI9325: You must implement write_index routine for your board" + } static inline void gdisp_lld_write_data(uint16_t data) { - #error "ILI9325: You must implement write_data routine for your board" + } static inline uint16_t gdisp_lld_read_data(void) { - #error "ILI9325: You must implement read_data routine for your board" + } -/* if not available, just ignore the argument and return */ static inline uint16_t gdisp_lld_backlight(uint8_t percentage) { - #error "ILI9325: You must implement set_backlight routine for your board" + } #endif /* GDISP_LLD_BOARD_H */ diff --git a/drivers/gdisp/ILI9325/readme.txt b/drivers/gdisp/ILI9325/readme.txt deleted file mode 100644 index 9bd96e6a..00000000 --- a/drivers/gdisp/ILI9325/readme.txt +++ /dev/null @@ -1,15 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - - d) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. - Use the gdisp_lld_board_example.h file as a basis. - Currently known boards are: - HY_STM32_100p - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/ILI9325/gdisp_lld.mk diff --git a/drivers/gdisp/ILI9481/gdisp_lld.c b/drivers/gdisp/ILI9481/gdisp_lld.c index 27c314d1..e9f42b4d 100644 --- a/drivers/gdisp/ILI9481/gdisp_lld.c +++ b/drivers/gdisp/ILI9481/gdisp_lld.c @@ -44,15 +44,7 @@ /* Driver local functions. */ /*===========================================================================*/ -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_FIREBULL_STM32_F103) - #include "gdisp_lld_board_firebullstm32f103.h" -#else - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" // Some common routines and macros #define write_reg(reg, data) { write_index(reg); write_data(data); } diff --git a/drivers/gdisp/ILI9481/gdisp_lld_board_example_fsmc.h b/drivers/gdisp/ILI9481/gdisp_lld_board_example_fsmc.h deleted file mode 100644 index de45c89d..00000000 --- a/drivers/gdisp/ILI9481/gdisp_lld_board_example_fsmc.h +++ /dev/null @@ -1,152 +0,0 @@ -/* - * This file is subject to the terms of the GFX License. If a copy of - * the license was not distributed with this file, you can obtain one at: - * - * http://chibios-gfx.com/license.html - */ - -/** - * @file drivers/gdisp/ILI9481/gdisp_lld_board_example_fsmc.h - * @brief GDISP Graphics Driver subsystem low level driver source for - * the ILI9481 and compatible HVGA display - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -#define GDISP_REG ((volatile uint16_t *) 0x60000000)[0] /* RS = 0 */ -#define GDISP_RAM ((volatile uint16_t *) 0x60020000)[0] /* RS = 1 */ - -/** - * @brief Initialise the board for the display. - * @notes Performs the following functions: - * 1. initialise the io port used by your display - * 2. initialise the reset pin (initial state not-in-reset) - * 3. initialise the chip select pin (initial state not-active) - * 4. initialise the backlight pin (initial state back-light off) - * - * @notapi - */ -static inline void init_board(void) { - const unsigned char FSMC_Bank; - - #if defined(STM32F1XX) || defined(STM32F3XX) - /* FSMC setup for F1/F3 */ - rccEnableAHB(RCC_AHBENR_FSMCEN, 0); - - #if defined(GDISP_USE_DMA) && defined(GDISP_DMA_STREAM) - #error "DMA not implemented for F1/F3 Devices" - #endif - #elif defined(STM32F4XX) || defined(STM32F2XX) - /* STM32F2-F4 FSMC init */ - rccEnableAHB3(RCC_AHB3ENR_FSMCEN, 0); - - #if defined(GDISP_USE_DMA) && defined(GDISP_DMA_STREAM) - if (dmaStreamAllocate(GDISP_DMA_STREAM, 0, NULL, NULL)) gfxExit(); - dmaStreamSetMemory0(GDISP_DMA_STREAM, &GDISP_RAM); - dmaStreamSetMode(GDISP_DMA_STREAM, STM32_DMA_CR_PL(0) | STM32_DMA_CR_PSIZE_HWORD | STM32_DMA_CR_MSIZE_HWORD | STM32_DMA_CR_DIR_M2M); - #endif - #else - #error "FSMC not implemented for this device" - #endif - - /* set pins to FSMC mode */ - IOBus busD = {GPIOD, (1 << 0) | (1 << 1) | (1 << 4) | (1 << 5) | (1 << 7) | (1 << 8) | - (1 << 9) | (1 << 10) | (1 << 11) | (1 << 14) | (1 << 15), 0}; - - IOBus busE = {GPIOE, (1 << 7) | (1 << 8) | (1 << 9) | (1 << 10) | (1 << 11) | (1 << 12) | - (1 << 13) | (1 << 14) | (1 << 15), 0}; - - palSetBusMode(&busD, PAL_MODE_ALTERNATE(12)); - palSetBusMode(&busE, PAL_MODE_ALTERNATE(12)); - - FSMC_Bank = 0; - - /* FSMC timing */ - FSMC_Bank1->BTCR[FSMC_Bank+1] = (FSMC_BTR1_ADDSET_1 | FSMC_BTR1_ADDSET_3) \ - | (FSMC_BTR1_DATAST_1 | FSMC_BTR1_DATAST_3) \ - | (FSMC_BTR1_BUSTURN_1 | FSMC_BTR1_BUSTURN_3) ; - - /* Bank1 NOR/SRAM control register configuration - * This is actually not needed as already set by default after reset */ - FSMC_Bank1->BTCR[FSMC_Bank] = FSMC_BCR1_MWID_0 | FSMC_BCR1_WREN | FSMC_BCR1_MBKEN; -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - (void) state; - /* Nothing to do here */ -} - -/** - * @brief Set the lcd back-light level. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - (void) percent; - /* Nothing to do here */ -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { - /* Nothing to do here */ -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { - /* Nothing to do here */ -} - -/** - * @brief Send data to the index register. - * - * @param[in] index The index register to set - * - * @notapi - */ -static inline void write_index(uint16_t index) { GDISP_REG = index; } - -/** - * @brief Send data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { GDISP_RAM = data; } - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { return GDISP_RAM; } -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ diff --git a/drivers/gdisp/ILI9481/gdisp_lld_board_example.h b/drivers/gdisp/ILI9481/gdisp_lld_board_template.h similarity index 69% rename from drivers/gdisp/ILI9481/gdisp_lld_board_example.h rename to drivers/gdisp/ILI9481/gdisp_lld_board_template.h index 8755f5a7..d287907a 100644 --- a/drivers/gdisp/ILI9481/gdisp_lld_board_example.h +++ b/drivers/gdisp/ILI9481/gdisp_lld_board_template.h @@ -6,7 +6,7 @@ */ /** - * @file drivers/gdisp/ILI9481/gdisp_lld_board_example.h + * @file drivers/gdisp/ILI9481/gdisp_lld_board_template.h * @brief GDISP Graphics Driver subsystem low level driver source for * the ILI9481 and compatible HVGA display * @@ -23,8 +23,7 @@ * @notapi */ static inline void init_board(void) { - /* Code here */ -#error "ILI9481: You must supply a definition for init_board for your board" + } /** @@ -35,8 +34,7 @@ static inline void init_board(void) { * @notapi */ static inline void setpin_reset(bool_t state) { - /* Code here */ -#error "ILI9481: You must supply a definition for setpin_reset for your board" + } /** @@ -47,8 +45,7 @@ static inline void setpin_reset(bool_t state) { * @notapi */ static inline void set_backlight(uint8_t percent) { - /* Code here */ -#error "ILI9481: You must supply a definition for set_backlight for your board" + } /** @@ -57,7 +54,7 @@ static inline void set_backlight(uint8_t percent) { * @notapi */ static inline void acquire_bus(void) { -#error "ILI9481: You must supply a definition for acquire_bus for your board" + } /** @@ -66,7 +63,7 @@ static inline void acquire_bus(void) { * @notapi */ static inline void release_bus(void) { -#error "ILI9481: You must supply a definition for release_bus for your board" + } /** @@ -77,8 +74,7 @@ static inline void release_bus(void) { * @notapi */ static inline void write_index(uint16_t index) { - /* Code here */ -#error "ILI9481: You must supply a definition for write_index for your board" + } /** @@ -89,8 +85,7 @@ static inline void write_index(uint16_t index) { * @notapi */ static inline void write_data(uint16_t data) { - /* Code here */ -#error "ILI9481: You must supply a definition for write_data for your board" + } #if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) @@ -104,8 +99,7 @@ static inline void write_data(uint16_t data) { * @notapi */ static inline uint16_t read_data(void) { - /* Code here */ -#error "ILI9481: You must supply a definition for read_data for your board" + } #endif diff --git a/drivers/gdisp/ILI9481/readme.txt b/drivers/gdisp/ILI9481/readme.txt deleted file mode 100644 index 235c2582..00000000 --- a/drivers/gdisp/ILI9481/readme.txt +++ /dev/null @@ -1,15 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - - c) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. - Use the gdisp_lld_board_example.h or gdisp_lld_board_fsmc.h file as a basis. - Currently known boards are: - BOARD_FIREBULL_STM32_F103 - GPIO interface: requires GDISP_CMD_PORT and GDISP_DATA_PORT to be defined - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/ILI9481/gdisp_lld.mk diff --git a/drivers/gdisp/Nokia6610GE12/gdisp_lld.c b/drivers/gdisp/Nokia6610GE12/gdisp_lld.c index a200d9fe..74043c96 100644 --- a/drivers/gdisp/Nokia6610GE12/gdisp_lld.c +++ b/drivers/gdisp/Nokia6610GE12/gdisp_lld.c @@ -54,15 +54,7 @@ /* Driver local functions. */ /*===========================================================================*/ -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_OLIMEX_SAM7_EX256) - #include "gdisp_lld_board_olimexsam7ex256.h" -#else - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" // Some macros just to make reading the code easier #define delayms(ms) gfxSleepMilliseconds(ms) diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_example.h b/drivers/gdisp/Nokia6610GE12/gdisp_lld_board_template.h similarity index 68% rename from drivers/gdisp/Nokia6610GE8/gdisp_lld_board_example.h rename to drivers/gdisp/Nokia6610GE12/gdisp_lld_board_template.h index 34234015..8aeb633b 100644 --- a/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_example.h +++ b/drivers/gdisp/Nokia6610GE12/gdisp_lld_board_template.h @@ -4,119 +4,111 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/gdisp/Nokia6610GE8/gdisp_lld_board_example.h - * @brief GDISP Graphic Driver subsystem board interface for the Nokia6610 GE8 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -/** - * @brief Initialise the board for the display. - * @notes Performs the following functions: - * 1. initialise the spi port used by your display - * 2. initialise the reset pin (initial state not-in-reset) - * 3. initialise the chip select pin (initial state not-active) - * 4. initialise the backlight pin (initial state back-light off) - * - * @notapi - */ -static inline void init_board(void) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for init_board for your board" -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for setpin_reset for your board" -} - -/** - * @brief Set the lcd back-light level. - * @note For now 0% turns the backlight off, anything else the backlight is on. - * While the hardware supports PWM backlight control, we are not using it - * yet. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for set_backlight for your board" -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for acquire_bus for your board" -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for release_bus for your board" -} - -/** - * @brief Send an 8 bit command to the lcd. - * - * @param[in] cmd The command to send - * - * @notapi - */ -static inline void write_cmd(uint16_t cmd) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for write_cmd for your board" -} - -/** - * @brief Send an 8 bit data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for write_data for your board" -} - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { - /* Code here */ - #error "gdispNokia6610GE8: You must supply a definition for read_data for your board" -} -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ + +/** + * @file drivers/gdisp/Nokia6610GE8/gdisp_lld_board_template.h + * @brief GDISP Graphic Driver subsystem board interface for the Nokia6610 GE8 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +/** + * @brief Initialise the board for the display. + * @notes Performs the following functions: + * 1. initialise the spi port used by your display + * 2. initialise the reset pin (initial state not-in-reset) + * 3. initialise the chip select pin (initial state not-active) + * 4. initialise the backlight pin (initial state back-light off) + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Set or clear the lcd reset pin. + * + * @param[in] state TRUE = lcd in reset, FALSE = normal operation + * + * @notapi + */ +static inline void setpin_reset(bool_t state) { + +} + +/** + * @brief Set the lcd back-light level. + * @note For now 0% turns the backlight off, anything else the backlight is on. + * While the hardware supports PWM backlight control, we are not using it + * yet. + * + * @param[in] percent 0 to 100% + * + * @notapi + */ +static inline void set_backlight(uint8_t percent) { + +} + +/** + * @brief Take exclusive control of the bus + * + * @notapi + */ +static inline void acquire_bus(void) { + +} + +/** + * @brief Release exclusive control of the bus + * + * @notapi + */ +static inline void release_bus(void) { + +} + +/** + * @brief Send an 8 bit command to the lcd. + * + * @param[in] cmd The command to send + * + * @notapi + */ +static inline void write_cmd(uint16_t cmd) { + +} + +/** + * @brief Send an 8 bit data to the lcd. + * + * @param[in] data The data to send + * + * @notapi + */ +static inline void write_data(uint16_t data) { + +} + +#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) +/** + * @brief Read data from the lcd. + * + * @return The data from the lcd + * @note The chip select may need to be asserted/de-asserted + * around the actual spi read + * + * @notapi + */ +static inline uint16_t read_data(void) { + +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ diff --git a/drivers/gdisp/Nokia6610GE12/readme.txt b/drivers/gdisp/Nokia6610GE12/readme.txt deleted file mode 100644 index bc0ee248..00000000 --- a/drivers/gdisp/Nokia6610GE12/readme.txt +++ /dev/null @@ -1,15 +0,0 @@ -This driver is for the Nokia6610 Philips (GE12) controller - -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - c) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. - Use the gdisp_lld_board_example.h file as a basis. - Currently known boards are: - Olimex SAM7-EX256 - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/Nokia6610GE12/gdisp_lld.mk diff --git a/drivers/gdisp/Nokia6610GE8/GE8.h b/drivers/gdisp/Nokia6610GE8/GE8.h index 3d02d0f3..598a6e2d 100644 --- a/drivers/gdisp/Nokia6610GE8/GE8.h +++ b/drivers/gdisp/Nokia6610GE8/GE8.h @@ -4,51 +4,51 @@ * * http://chibios-gfx.com/license.html */ - -#ifndef GE8_H -#define GE8_H - -// ***************************************************************************** -// Include file for Epson S1D15G00 LCD Controller (GE8) -// -// Author: James P Lynch August 30, 2007 -// Modified for GDISP: Andrew Hannam August 2, 2012 -// -// ***************************************************************************** - -#define DISON 0xAF // Display on -#define DISOFF 0xAE // Display off -#define DISNOR 0xA6 // Normal display -#define DISINV 0xA7 // Inverse display -#define COMSCN 0xBB // Common scan direction -#define DISCTL 0xCA // Display control -#define SLPIN 0x95 // Sleep in -#define SLPOUT 0x94 // Sleep out -#define PASET 0x75 // Page address set -#define CASET 0x15 // Column address set -#define DATCTL 0xBC // Data scan direction, etc. -#define RGBSET8 0xCE // 256-color position set -#define RAMWR 0x5C // Writing to memory -#define RAMRD 0x5D // Reading from memory -#define PTLIN 0xA8 // Partial display in -#define PTLOUT 0xA9 // Partial display out -#define RMWIN 0xE0 // Read and modify write -#define RMWOUT 0xEE // End -#define ASCSET 0xAA // Area scroll set -#define SCSTART 0xAB // Scroll start set -#define OSCON 0xD1 // Internal oscillation on -#define OSCOFF 0xD2 // Internal oscillation off -#define PWRCTR 0x20 // Power control -#define VOLCTR 0x81 // Electronic volume control -#define VOLUP 0xD6 // Increment electronic control by 1 -#define VOLDOWN 0xD7 // Decrement electronic control by 1 -#define TMPGRD 0x82 // Temperature gradient set -#define EPCTIN 0xCD // Control EEPROM -#define EPCOUT 0xCC // Cancel EEPROM control -#define EPMWR 0xFC // Write into EEPROM -#define EPMRD 0xFD // Read from EEPROM -#define EPSRRD1 0x7C // Read register 1 -#define EPSRRD2 0x7D // Read register 2 -#define NOP 0x25 // NOP instruction - -#endif /* GE8_H */ + +#ifndef GE8_H +#define GE8_H + +// ***************************************************************************** +// Include file for Epson S1D15G00 LCD Controller (GE8) +// +// Author: James P Lynch August 30, 2007 +// Modified for GDISP: Andrew Hannam August 2, 2012 +// +// ***************************************************************************** + +#define DISON 0xAF // Display on +#define DISOFF 0xAE // Display off +#define DISNOR 0xA6 // Normal display +#define DISINV 0xA7 // Inverse display +#define COMSCN 0xBB // Common scan direction +#define DISCTL 0xCA // Display control +#define SLPIN 0x95 // Sleep in +#define SLPOUT 0x94 // Sleep out +#define PASET 0x75 // Page address set +#define CASET 0x15 // Column address set +#define DATCTL 0xBC // Data scan direction, etc. +#define RGBSET8 0xCE // 256-color position set +#define RAMWR 0x5C // Writing to memory +#define RAMRD 0x5D // Reading from memory +#define PTLIN 0xA8 // Partial display in +#define PTLOUT 0xA9 // Partial display out +#define RMWIN 0xE0 // Read and modify write +#define RMWOUT 0xEE // End +#define ASCSET 0xAA // Area scroll set +#define SCSTART 0xAB // Scroll start set +#define OSCON 0xD1 // Internal oscillation on +#define OSCOFF 0xD2 // Internal oscillation off +#define PWRCTR 0x20 // Power control +#define VOLCTR 0x81 // Electronic volume control +#define VOLUP 0xD6 // Increment electronic control by 1 +#define VOLDOWN 0xD7 // Decrement electronic control by 1 +#define TMPGRD 0x82 // Temperature gradient set +#define EPCTIN 0xCD // Control EEPROM +#define EPCOUT 0xCC // Cancel EEPROM control +#define EPMWR 0xFC // Write into EEPROM +#define EPMRD 0xFD // Read from EEPROM +#define EPSRRD1 0x7C // Read register 1 +#define EPSRRD2 0x7D // Read register 2 +#define NOP 0x25 // NOP instruction + +#endif /* GE8_H */ diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld.c b/drivers/gdisp/Nokia6610GE8/gdisp_lld.c index 4e62f297..7d35d469 100644 --- a/drivers/gdisp/Nokia6610GE8/gdisp_lld.c +++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld.c @@ -59,15 +59,7 @@ /* Driver local functions. */ /*===========================================================================*/ -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_OLIMEX_SAM7_EX256) - #include "gdisp_lld_board_olimexsam7ex256.h" -#else - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" // Some macros just to make reading the code easier #define delayms(ms) gfxSleepMilliseconds(ms) diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld.mk b/drivers/gdisp/Nokia6610GE8/gdisp_lld.mk index 3a1adec9..3e1f1851 100644 --- a/drivers/gdisp/Nokia6610GE8/gdisp_lld.mk +++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld.mk @@ -1,5 +1,5 @@ -# List the required driver. -GFXSRC += $(GFXLIB)/drivers/gdisp/Nokia6610GE8/gdisp_lld.c - -# Required include directories -GFXINC += $(GFXLIB)/drivers/gdisp/Nokia6610GE8 +# List the required driver. +GFXSRC += $(GFXLIB)/drivers/gdisp/Nokia6610GE8/gdisp_lld.c + +# Required include directories +GFXINC += $(GFXLIB)/drivers/gdisp/Nokia6610GE8 diff --git a/drivers/gdisp/Nokia6610GE12/gdisp_lld_board_example.h b/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_template.h similarity index 67% rename from drivers/gdisp/Nokia6610GE12/gdisp_lld_board_example.h rename to drivers/gdisp/Nokia6610GE8/gdisp_lld_board_template.h index f4058190..8aeb633b 100644 --- a/drivers/gdisp/Nokia6610GE12/gdisp_lld_board_example.h +++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_template.h @@ -4,119 +4,111 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/gdisp/Nokia6610GE12/gdisp_lld_board_example.h - * @brief GDISP Graphic Driver subsystem board interface for the Nokia6610 GE12 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -/** - * @brief Initialise the board for the display. - * @notes Performs the following functions: - * 1. initialise the spi port used by your display - * 2. initialise the reset pin (initial state not-in-reset) - * 3. initialise the chip select pin (initial state not-active) - * 4. initialise the backlight pin (initial state back-light off) - * - * @notapi - */ -static inline void init_board(void) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for init_board for your board" -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for setpin_reset for your board" -} - -/** - * @brief Set the lcd back-light level. - * @note For now 0% turns the backlight off, anything else the backlight is on. - * While the hardware supports PWM backlight control, we are not using it - * yet. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for set_backlight for your board" -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for acquire_bus for your board" -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for release_bus for your board" -} - -/** - * @brief Send an 8 bit command to the lcd. - * - * @param[in] cmd The command to send - * - * @notapi - */ -static inline void write_cmd(uint16_t cmd) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for write_cmd for your board" -} - -/** - * @brief Send an 8 bit data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for write_data for your board" -} - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { - /* Code here */ - #error "gdispNokia6610GE12: You must supply a definition for read_data for your board" -} -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ + +/** + * @file drivers/gdisp/Nokia6610GE8/gdisp_lld_board_template.h + * @brief GDISP Graphic Driver subsystem board interface for the Nokia6610 GE8 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +/** + * @brief Initialise the board for the display. + * @notes Performs the following functions: + * 1. initialise the spi port used by your display + * 2. initialise the reset pin (initial state not-in-reset) + * 3. initialise the chip select pin (initial state not-active) + * 4. initialise the backlight pin (initial state back-light off) + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Set or clear the lcd reset pin. + * + * @param[in] state TRUE = lcd in reset, FALSE = normal operation + * + * @notapi + */ +static inline void setpin_reset(bool_t state) { + +} + +/** + * @brief Set the lcd back-light level. + * @note For now 0% turns the backlight off, anything else the backlight is on. + * While the hardware supports PWM backlight control, we are not using it + * yet. + * + * @param[in] percent 0 to 100% + * + * @notapi + */ +static inline void set_backlight(uint8_t percent) { + +} + +/** + * @brief Take exclusive control of the bus + * + * @notapi + */ +static inline void acquire_bus(void) { + +} + +/** + * @brief Release exclusive control of the bus + * + * @notapi + */ +static inline void release_bus(void) { + +} + +/** + * @brief Send an 8 bit command to the lcd. + * + * @param[in] cmd The command to send + * + * @notapi + */ +static inline void write_cmd(uint16_t cmd) { + +} + +/** + * @brief Send an 8 bit data to the lcd. + * + * @param[in] data The data to send + * + * @notapi + */ +static inline void write_data(uint16_t data) { + +} + +#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) +/** + * @brief Read data from the lcd. + * + * @return The data from the lcd + * @note The chip select may need to be asserted/de-asserted + * around the actual spi read + * + * @notapi + */ +static inline uint16_t read_data(void) { + +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h b/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h index 65e8d481..399bda0b 100644 --- a/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h +++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h @@ -4,41 +4,41 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h - * @brief GDISP Graphic Driver subsystem low level driver header for the Nokia6610 GE8 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_CONFIG_H -#define _GDISP_LLD_CONFIG_H - -#if GFX_USE_GDISP - -/*===========================================================================*/ -/* Driver hardware support. */ -/*===========================================================================*/ - -#define GDISP_DRIVER_NAME "Nokia6610GE8" - -#define GDISP_HARDWARE_FILLS TRUE -#define GDISP_HARDWARE_BITFILLS TRUE -#define GDISP_HARDWARE_CONTROL TRUE - -#define GDISP_SOFTWARE_TEXTFILLDRAW FALSE -#define GDISP_SOFTWARE_TEXTBLITCOLUMN FALSE - -#define GDISP_PIXELFORMAT GDISP_PIXELFORMAT_RGB444 -/* This driver supports both packed and unpacked pixel formats and line formats. - * By default we leave these as FALSE. - */ -#define GDISP_PACKED_PIXELS FALSE -#define GDISP_PACKED_LINES FALSE - -#endif /* GFX_USE_GDISP */ - -#endif /* _GDISP_LLD_CONFIG_H */ -/** @} */ + +/** + * @file drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h + * @brief GDISP Graphic Driver subsystem low level driver header for the Nokia6610 GE8 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_CONFIG_H +#define _GDISP_LLD_CONFIG_H + +#if GFX_USE_GDISP + +/*===========================================================================*/ +/* Driver hardware support. */ +/*===========================================================================*/ + +#define GDISP_DRIVER_NAME "Nokia6610GE8" + +#define GDISP_HARDWARE_FILLS TRUE +#define GDISP_HARDWARE_BITFILLS TRUE +#define GDISP_HARDWARE_CONTROL TRUE + +#define GDISP_SOFTWARE_TEXTFILLDRAW FALSE +#define GDISP_SOFTWARE_TEXTBLITCOLUMN FALSE + +#define GDISP_PIXELFORMAT GDISP_PIXELFORMAT_RGB444 +/* This driver supports both packed and unpacked pixel formats and line formats. + * By default we leave these as FALSE. + */ +#define GDISP_PACKED_PIXELS FALSE +#define GDISP_PACKED_LINES FALSE + +#endif /* GFX_USE_GDISP */ + +#endif /* _GDISP_LLD_CONFIG_H */ +/** @} */ diff --git a/drivers/gdisp/Nokia6610GE8/readme.txt b/drivers/gdisp/Nokia6610GE8/readme.txt deleted file mode 100644 index 503ca0b9..00000000 --- a/drivers/gdisp/Nokia6610GE8/readme.txt +++ /dev/null @@ -1,15 +0,0 @@ -This driver is for the Nokia6610 Epson (GE8) controller - -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - c) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. - Use the gdisp_lld_board_example.h file as a basis. - Currently known boards are: - Olimex SAM7-EX256 - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/Nokia6610GE8/gdisp_lld.mk diff --git a/drivers/gdisp/RA8875/gdisp_lld_board_example.h b/drivers/gdisp/RA8875/gdisp_lld_board_template.h similarity index 96% rename from drivers/gdisp/RA8875/gdisp_lld_board_example.h rename to drivers/gdisp/RA8875/gdisp_lld_board_template.h index d01c4c17..dc5b501e 100644 --- a/drivers/gdisp/RA8875/gdisp_lld_board_example.h +++ b/drivers/gdisp/RA8875/gdisp_lld_board_template.h @@ -6,7 +6,7 @@ */ /** - * @file drivers/gdisp/SSD1963/gdisp_lld_board_example.h + * @file drivers/gdisp/SSD1963/gdisp_lld_board_template.h * @brief GDISP Graphic Driver subsystem board interface for the SSD1963 display. * * @addtogroup GDISP diff --git a/drivers/gdisp/S6D1121/gdisp_lld.c b/drivers/gdisp/S6D1121/gdisp_lld.c index 93f94d94..84b494d9 100644 --- a/drivers/gdisp/S6D1121/gdisp_lld.c +++ b/drivers/gdisp/S6D1121/gdisp_lld.c @@ -43,14 +43,7 @@ /* Driver local definitions. */ /*===========================================================================*/ -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_OLIMEX_STM32_E407) - #include "gdisp_lld_board_olimex_e407.h" -#else - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" /* Some common routines and macros */ #define write_reg(reg, data) { write_index(reg); write_data(data); } diff --git a/drivers/gdisp/S6D1121/gdisp_lld.mk b/drivers/gdisp/S6D1121/gdisp_lld.mk index 38c23c43..07f9c380 100644 --- a/drivers/gdisp/S6D1121/gdisp_lld.mk +++ b/drivers/gdisp/S6D1121/gdisp_lld.mk @@ -1,5 +1,5 @@ -# List the required driver. -GFXSRC += $(GFXLIB)/drivers/gdisp/S6D1121/gdisp_lld.c - -# Required include directories -GFXINC += $(GFXLIB)/drivers/gdisp/S6D1121 +# List the required driver. +GFXSRC += $(GFXLIB)/drivers/gdisp/S6D1121/gdisp_lld.c + +# Required include directories +GFXINC += $(GFXLIB)/drivers/gdisp/S6D1121 diff --git a/drivers/gdisp/S6D1121/gdisp_lld_board_olimex_e407.h b/drivers/gdisp/S6D1121/gdisp_lld_board_olimex_e407.h index f4f2bc75..836a6d69 100644 --- a/drivers/gdisp/S6D1121/gdisp_lld_board_olimex_e407.h +++ b/drivers/gdisp/S6D1121/gdisp_lld_board_olimex_e407.h @@ -4,78 +4,78 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/gdisp/S6D1121/gdisp_lld_board_olimex_e407.h - * @brief GDISP Graphic Driver subsystem board interface for the S6D1121 display - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -#define GDISP_REG (*((volatile uint16_t *) 0x60000000)) /* RS = 0 */ -#define GDISP_RAM (*((volatile uint16_t *) 0x60020000)) /* RS = 1 */ - -static inline void init_board(void) { - int FSMC_Bank = 0; - - /* STM32F4 FSMC init */ - rccEnableAHB3(RCC_AHB3ENR_FSMCEN, 0); - - /* set pins to FSMC mode */ - IOBus busD = {GPIOD, (1 << 0) | (1 << 1) | (1 << 4) | (1 << 5) | (1 << 7) | (1 << 8) | - (1 << 9) | (1 << 10) | (1 << 11) | (1 << 14) | (1 << 15), 0}; - - IOBus busE = {GPIOE, (1 << 7) | (1 << 8) | (1 << 9) | (1 << 10) | (1 << 11) | (1 << 12) | - (1 << 13) | (1 << 14) | (1 << 15), 0}; - - palSetBusMode(&busD, PAL_MODE_ALTERNATE(12)); - palSetBusMode(&busE, PAL_MODE_ALTERNATE(12)); - - /* FSMC timing */ - FSMC_Bank1->BTCR[FSMC_Bank+1] = (6) | (10 << 8) | (10 << 16); - - /* Bank1 NOR/SRAM control register configuration */ - FSMC_Bank1->BTCR[FSMC_Bank] = FSMC_BCR1_MWID_0 | FSMC_BCR1_WREN | FSMC_BCR1_MBKEN; -} - -static inline void setpin_reset(bool_t state) { - (void)state; - - /* Nothing to do here */ -} - -static inline void set_backlight(uint8_t percent) { - (void)percent; - - /* Nothing to do here */ -} - -static inline void acquire_bus(void) { - /* Nothing to do here */ -} - -static inline void release_bus(void) { - /* Nothing to do here */ -} - -static inline void write_index(uint16_t index) { - GDISP_REG = index; -} - -static inline void write_data(uint16_t data) { - GDISP_RAM = data; -} - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -static inline uint16_t read_data(void) { - return GDISP_RAM; -} -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ - + +/** + * @file drivers/gdisp/S6D1121/gdisp_lld_board_olimex_e407.h + * @brief GDISP Graphic Driver subsystem board interface for the S6D1121 display + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +#define GDISP_REG (*((volatile uint16_t *) 0x60000000)) /* RS = 0 */ +#define GDISP_RAM (*((volatile uint16_t *) 0x60020000)) /* RS = 1 */ + +static inline void init_board(void) { + int FSMC_Bank = 0; + + /* STM32F4 FSMC init */ + rccEnableAHB3(RCC_AHB3ENR_FSMCEN, 0); + + /* set pins to FSMC mode */ + IOBus busD = {GPIOD, (1 << 0) | (1 << 1) | (1 << 4) | (1 << 5) | (1 << 7) | (1 << 8) | + (1 << 9) | (1 << 10) | (1 << 11) | (1 << 14) | (1 << 15), 0}; + + IOBus busE = {GPIOE, (1 << 7) | (1 << 8) | (1 << 9) | (1 << 10) | (1 << 11) | (1 << 12) | + (1 << 13) | (1 << 14) | (1 << 15), 0}; + + palSetBusMode(&busD, PAL_MODE_ALTERNATE(12)); + palSetBusMode(&busE, PAL_MODE_ALTERNATE(12)); + + /* FSMC timing */ + FSMC_Bank1->BTCR[FSMC_Bank+1] = (6) | (10 << 8) | (10 << 16); + + /* Bank1 NOR/SRAM control register configuration */ + FSMC_Bank1->BTCR[FSMC_Bank] = FSMC_BCR1_MWID_0 | FSMC_BCR1_WREN | FSMC_BCR1_MBKEN; +} + +static inline void setpin_reset(bool_t state) { + (void)state; + + /* Nothing to do here */ +} + +static inline void set_backlight(uint8_t percent) { + (void)percent; + + /* Nothing to do here */ +} + +static inline void acquire_bus(void) { + /* Nothing to do here */ +} + +static inline void release_bus(void) { + /* Nothing to do here */ +} + +static inline void write_index(uint16_t index) { + GDISP_REG = index; +} + +static inline void write_data(uint16_t data) { + GDISP_RAM = data; +} + +#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) +static inline uint16_t read_data(void) { + return GDISP_RAM; +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ + diff --git a/drivers/gdisp/S6D1121/gdisp_lld_board_example.h b/drivers/gdisp/S6D1121/gdisp_lld_board_template.h similarity index 66% rename from drivers/gdisp/S6D1121/gdisp_lld_board_example.h rename to drivers/gdisp/S6D1121/gdisp_lld_board_template.h index 0ba5f973..b4e192dc 100644 --- a/drivers/gdisp/S6D1121/gdisp_lld_board_example.h +++ b/drivers/gdisp/S6D1121/gdisp_lld_board_template.h @@ -4,109 +4,103 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/gdisp/S6D1121/gdisp_lld_board_example.h - * @brief GDISP Graphic Driver subsystem board interface for the S6D1121 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -/** - * @brief Initialise the board for the display. - * - * @notapi - */ -static inline void init_board(void) { - /* Code here */ -#error "SSD1289: You must supply a definition for init_board for your board" -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - /* Code here */ -#error "SSD1289: You must supply a definition for setpin_reset for your board" -} - -/** - * @brief Set the lcd back-light level. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - /* Code here */ -#error "SSD1289: You must supply a definition for set_backlight for your board" -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { -#error "SSD1289: You must supply a definition for acquire_bus for your board" -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { -#error "SSD1289: You must supply a definition for release_bus for your board" -} - -/** - * @brief Send data to the index register. - * - * @param[in] index The index register to set - * - * @notapi - */ -static inline void write_index(uint16_t index) { - /* Code here */ -#error "SSD1289: You must supply a definition for write_index for your board" -} - -/** - * @brief Send data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { - /* Code here */ -#error "SSD1289: You must supply a definition for write_data for your board" -} - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { - /* Code here */ -#error "SSD1289: You must supply a definition for read_data for your board" -} -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ + +/** + * @file drivers/gdisp/S6D1121/gdisp_lld_board_template.h + * @brief GDISP Graphic Driver subsystem board interface for the S6D1121 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +/** + * @brief Initialise the board for the display. + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Set or clear the lcd reset pin. + * + * @param[in] state TRUE = lcd in reset, FALSE = normal operation + * + * @notapi + */ +static inline void setpin_reset(bool_t state) { + +} + +/** + * @brief Set the lcd back-light level. + * + * @param[in] percent 0 to 100% + * + * @notapi + */ +static inline void set_backlight(uint8_t percent) { + +} + +/** + * @brief Take exclusive control of the bus + * + * @notapi + */ +static inline void acquire_bus(void) { + +} + +/** + * @brief Release exclusive control of the bus + * + * @notapi + */ +static inline void release_bus(void) { + +} + +/** + * @brief Send data to the index register. + * + * @param[in] index The index register to set + * + * @notapi + */ +static inline void write_index(uint16_t index) { + +} + +/** + * @brief Send data to the lcd. + * + * @param[in] data The data to send + * + * @notapi + */ +static inline void write_data(uint16_t data) { + +} + +#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) +/** + * @brief Read data from the lcd. + * + * @return The data from the lcd + * @note The chip select may need to be asserted/de-asserted + * around the actual spi read + * + * @notapi + */ +static inline uint16_t read_data(void) { + +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ diff --git a/drivers/gdisp/S6D1121/gdisp_lld_config.h b/drivers/gdisp/S6D1121/gdisp_lld_config.h index 630f73dd..cbb63546 100644 --- a/drivers/gdisp/S6D1121/gdisp_lld_config.h +++ b/drivers/gdisp/S6D1121/gdisp_lld_config.h @@ -4,37 +4,37 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/gdisp/S6D1121/gdisp_lld_config.h - * @brief GDISP Graphic Driver subsystem low level driver header for the S6D1121 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_CONFIG_H -#define _GDISP_LLD_CONFIG_H - -#if GFX_USE_GDISP - -/*===========================================================================*/ -/* Driver hardware support. */ -/*===========================================================================*/ - -#define GDISP_DRIVER_NAME "S6D1121" - -#define GDISP_HARDWARE_CLEARS TRUE -#define GDISP_HARDWARE_FILLS TRUE -#define GDISP_HARDWARE_BITFILLS TRUE -#define GDISP_HARDWARE_SCROLL TRUE -#define GDISP_HARDWARE_PIXELREAD FALSE -#define GDISP_HARDWARE_CONTROL TRUE - -#define GDISP_PIXELFORMAT GDISP_PIXELFORMAT_RGB565 - -#endif /* GFX_USE_GDISP */ - -#endif /* _GDISP_LLD_CONFIG_H */ -/** @} */ - + +/** + * @file drivers/gdisp/S6D1121/gdisp_lld_config.h + * @brief GDISP Graphic Driver subsystem low level driver header for the S6D1121 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_CONFIG_H +#define _GDISP_LLD_CONFIG_H + +#if GFX_USE_GDISP + +/*===========================================================================*/ +/* Driver hardware support. */ +/*===========================================================================*/ + +#define GDISP_DRIVER_NAME "S6D1121" + +#define GDISP_HARDWARE_CLEARS TRUE +#define GDISP_HARDWARE_FILLS TRUE +#define GDISP_HARDWARE_BITFILLS TRUE +#define GDISP_HARDWARE_SCROLL TRUE +#define GDISP_HARDWARE_PIXELREAD FALSE +#define GDISP_HARDWARE_CONTROL TRUE + +#define GDISP_PIXELFORMAT GDISP_PIXELFORMAT_RGB565 + +#endif /* GFX_USE_GDISP */ + +#endif /* _GDISP_LLD_CONFIG_H */ +/** @} */ + diff --git a/drivers/gdisp/S6D1121/readme.txt b/drivers/gdisp/S6D1121/readme.txt deleted file mode 100644 index 54bb3091..00000000 --- a/drivers/gdisp/S6D1121/readme.txt +++ /dev/null @@ -1,8 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/S6D1121/gdisp_lld.mk diff --git a/drivers/gdisp/SSD1289/gdisp_lld.c b/drivers/gdisp/SSD1289/gdisp_lld.c index 97a2cff7..6367415d 100644 --- a/drivers/gdisp/SSD1289/gdisp_lld.c +++ b/drivers/gdisp/SSD1289/gdisp_lld.c @@ -38,17 +38,7 @@ /* Driver local functions. */ /*===========================================================================*/ -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_FIREBULL_STM32_F103) - #include "gdisp_lld_board_firebullstm32f103.h" -#elif defined(BOARD_ST_STM32F4_DISCOVERY) - #include "gdisp_lld_board_st_stm32f4_discovery.h" -#else - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" // Some common routines and macros #define write_reg(reg, data) { write_index(reg); write_data(data); } diff --git a/drivers/gdisp/SSD1289/gdisp_lld_board_example_fsmc.h b/drivers/gdisp/SSD1289/gdisp_lld_board_example_fsmc.h deleted file mode 100644 index 0988f409..00000000 --- a/drivers/gdisp/SSD1289/gdisp_lld_board_example_fsmc.h +++ /dev/null @@ -1,151 +0,0 @@ -/* - * This file is subject to the terms of the GFX License. If a copy of - * the license was not distributed with this file, you can obtain one at: - * - * http://chibios-gfx.com/license.html - */ - -/** - * @file drivers/gdisp/SSD1289/gdisp_lld_board_example_fsmc.h - * @brief GDISP Graphic Driver subsystem board interface for the SSD1289 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -#define GDISP_REG ((volatile uint16_t *) 0x60000000)[0] /* RS = 0 */ -#define GDISP_RAM ((volatile uint16_t *) 0x60020000)[0] /* RS = 1 */ - -/** - * @brief Initialise the board for the display. - * @notes Performs the following functions: - * 1. initialise the io port used by your display - * 2. initialise the reset pin (initial state not-in-reset) - * 3. initialise the chip select pin (initial state not-active) - * 4. initialise the backlight pin (initial state back-light off) - * - * @notapi - */ -static inline void init_board(void) { - const unsigned char FSMC_Bank; - - #if defined(STM32F1XX) || defined(STM32F3XX) - /* FSMC setup for F1/F3 */ - rccEnableAHB(RCC_AHBENR_FSMCEN, 0); - - #if defined(GDISP_USE_DMA) && defined(GDISP_DMA_STREAM) - #error "DMA not implemented for F1/F3 Devices" - #endif - #elif defined(STM32F4XX) || defined(STM32F2XX) - /* STM32F2-F4 FSMC init */ - rccEnableAHB3(RCC_AHB3ENR_FSMCEN, 0); - - #if defined(GDISP_USE_DMA) && defined(GDISP_DMA_STREAM) - if (dmaStreamAllocate(GDISP_DMA_STREAM, 0, NULL, NULL)) gfxExit(); - dmaStreamSetMemory0(GDISP_DMA_STREAM, &GDISP_RAM); - dmaStreamSetMode(GDISP_DMA_STREAM, STM32_DMA_CR_PL(0) | STM32_DMA_CR_PSIZE_HWORD | STM32_DMA_CR_MSIZE_HWORD | STM32_DMA_CR_DIR_M2M); - #endif - #else - #error "FSMC not implemented for this device" - #endif - - /* set pins to FSMC mode */ - IOBus busD = {GPIOD, (1 << 0) | (1 << 1) | (1 << 4) | (1 << 5) | (1 << 7) | (1 << 8) | - (1 << 9) | (1 << 10) | (1 << 11) | (1 << 14) | (1 << 15), 0}; - - IOBus busE = {GPIOE, (1 << 7) | (1 << 8) | (1 << 9) | (1 << 10) | (1 << 11) | (1 << 12) | - (1 << 13) | (1 << 14) | (1 << 15), 0}; - - palSetBusMode(&busD, PAL_MODE_ALTERNATE(12)); - palSetBusMode(&busE, PAL_MODE_ALTERNATE(12)); - - FSMC_Bank = 0; - - /* FSMC timing */ - FSMC_Bank1->BTCR[FSMC_Bank+1] = (FSMC_BTR1_ADDSET_1 | FSMC_BTR1_ADDSET_3) \ - | (FSMC_BTR1_DATAST_1 | FSMC_BTR1_DATAST_3) \ - | (FSMC_BTR1_BUSTURN_1 | FSMC_BTR1_BUSTURN_3) ; - - /* Bank1 NOR/SRAM control register configuration - * This is actually not needed as already set by default after reset */ - FSMC_Bank1->BTCR[FSMC_Bank] = FSMC_BCR1_MWID_0 | FSMC_BCR1_WREN | FSMC_BCR1_MBKEN; -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - (void) state; - /* Nothing to do here */ -} - -/** - * @brief Set the lcd back-light level. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - (void) percent; - /* Nothing to do here */ -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { - /* Nothing to do here */ -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { - /* Nothing to do here */ -} - -/** - * @brief Send data to the index register. - * - * @param[in] index The index register to set - * - * @notapi - */ -static inline void write_index(uint16_t index) { GDISP_REG = index; } - -/** - * @brief Send data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { GDISP_RAM = data; } - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { return GDISP_RAM; } -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ diff --git a/drivers/gdisp/SSD1289/gdisp_lld_board_example.h b/drivers/gdisp/SSD1289/gdisp_lld_board_template.h similarity index 66% rename from drivers/gdisp/SSD1289/gdisp_lld_board_example.h rename to drivers/gdisp/SSD1289/gdisp_lld_board_template.h index 8a68be23..f5077480 100644 --- a/drivers/gdisp/SSD1289/gdisp_lld_board_example.h +++ b/drivers/gdisp/SSD1289/gdisp_lld_board_template.h @@ -4,109 +4,103 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/gdisp/SSD1289/gdisp_lld_board_example.h - * @brief GDISP Graphic Driver subsystem board interface for the SSD1289 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -/** - * @brief Initialise the board for the display. - * - * @notapi - */ -static inline void init_board(void) { - /* Code here */ -#error "SSD1289: You must supply a definition for init_board for your board" -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - /* Code here */ -#error "SSD1289: You must supply a definition for setpin_reset for your board" -} - -/** - * @brief Set the lcd back-light level. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - /* Code here */ -#error "SSD1289: You must supply a definition for set_backlight for your board" -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { -#error "SSD1289: You must supply a definition for acquire_bus for your board" -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { -#error "SSD1289: You must supply a definition for release_bus for your board" -} - -/** - * @brief Send data to the index register. - * - * @param[in] index The index register to set - * - * @notapi - */ -static inline void write_index(uint16_t index) { - /* Code here */ -#error "SSD1289: You must supply a definition for write_index for your board" -} - -/** - * @brief Send data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { - /* Code here */ -#error "SSD1289: You must supply a definition for write_data for your board" -} - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { - /* Code here */ -#error "SSD1289: You must supply a definition for read_data for your board" -} -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ + +/** + * @file drivers/gdisp/SSD1289/gdisp_lld_board_template.h + * @brief GDISP Graphic Driver subsystem board interface for the SSD1289 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +/** + * @brief Initialise the board for the display. + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Set or clear the lcd reset pin. + * + * @param[in] state TRUE = lcd in reset, FALSE = normal operation + * + * @notapi + */ +static inline void setpin_reset(bool_t state) { + +} + +/** + * @brief Set the lcd back-light level. + * + * @param[in] percent 0 to 100% + * + * @notapi + */ +static inline void set_backlight(uint8_t percent) { + +} + +/** + * @brief Take exclusive control of the bus + * + * @notapi + */ +static inline void acquire_bus(void) { + +} + +/** + * @brief Release exclusive control of the bus + * + * @notapi + */ +static inline void release_bus(void) { + +} + +/** + * @brief Send data to the index register. + * + * @param[in] index The index register to set + * + * @notapi + */ +static inline void write_index(uint16_t index) { + +} + +/** + * @brief Send data to the lcd. + * + * @param[in] data The data to send + * + * @notapi + */ +static inline void write_data(uint16_t data) { + +} + +#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) +/** + * @brief Read data from the lcd. + * + * @return The data from the lcd + * @note The chip select may need to be asserted/de-asserted + * around the actual spi read + * + * @notapi + */ +static inline uint16_t read_data(void) { + +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ diff --git a/drivers/gdisp/SSD1289/readme.txt b/drivers/gdisp/SSD1289/readme.txt deleted file mode 100644 index 80d2bdab..00000000 --- a/drivers/gdisp/SSD1289/readme.txt +++ /dev/null @@ -1,20 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - - c) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. - Use the gdisp_lld_board_example.h or gdisp_lld_board_fsmc.h file as a basis. - Currently known boards are: - BOARD_FIREBULL_STM32_F103 - GPIO interface: requires GDISP_CMD_PORT and GDISP_DATA_PORT to be defined - BOARD_ST_STM32F4_DISCOVERY - FSMC interface - - d) The following are optional - define them if you are not using the defaults below: - #define GDISP_SCREEN_WIDTH 320 - #define GDISP_SCREEN_HEIGHT 240 - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/SSD1289/gdisp_lld.mk diff --git a/drivers/gdisp/SSD1963/gdisp_lld.c b/drivers/gdisp/SSD1963/gdisp_lld.c index c9792c98..573efdae 100644 --- a/drivers/gdisp/SSD1963/gdisp_lld.c +++ b/drivers/gdisp/SSD1963/gdisp_lld.c @@ -25,12 +25,7 @@ /* All the board specific code should go in these include file so the driver * can be ported to another board just by creating a suitable file. */ -#if defined(BOARD_YOURBOARDNAME) - #include "gdisp_lld_board_yourboardname.h" -#else - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" /*===========================================================================*/ /* Driver interrupt handlers. */ diff --git a/drivers/gdisp/SSD1963/gdisp_lld_board_example_fsmc.h b/drivers/gdisp/SSD1963/gdisp_lld_board_example_fsmc.h deleted file mode 100644 index 9dde7bde..00000000 --- a/drivers/gdisp/SSD1963/gdisp_lld_board_example_fsmc.h +++ /dev/null @@ -1,180 +0,0 @@ -/* - * This file is subject to the terms of the GFX License. If a copy of - * the license was not distributed with this file, you can obtain one at: - * - * http://chibios-gfx.com/license.html - */ - -/** - * @file drivers/gdisp/SSD1289/gdisp_lld_board_example_fsmc.h - * @brief GDISP Graphic Driver subsystem board interface for the SSD1289 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -#if defined(GDISP_USE_GPIO) - #define Set_CS palSetPad(GDISP_CMD_PORT, GDISP_CS); - #define Clr_CS palClearPad(GDISP_CMD_PORT, GDISP_CS); - #define Set_RS palSetPad(GDISP_CMD_PORT, GDISP_RS); - #define Clr_RS palClearPad(GDISP_CMD_PORT, GDISP_RS); - #define Set_WR palSetPad(GDISP_CMD_PORT, GDISP_WR); - #define Clr_WR palClearPad(GDISP_CMD_PORT, GDISP_WR); - #define Set_RD palSetPad(GDISP_CMD_PORT, GDISP_RD); - #define Clr_RD palClearPad(GDISP_CMD_PORT, GDISP_RD); -#endif - -#if defined(GDISP_USE_FSMC) - /* Using FSMC A16 as RS */ - #define GDISP_REG (*((volatile uint16_t *) 0x60000000)) /* RS = 0 */ - #define GDISP_RAM (*((volatile uint16_t *) 0x60020000)) /* RS = 1 */ -#endif - -/** - * @brief Send data to the index register. - * - * @param[in] index The index register to set - * - * @notapi - */ -static inline void write_index(uint16_t index) { GDISP_REG = index; } - -/** - * @brief Send data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { GDISP_RAM = data; } - -/** - * @brief Initialise the board for the display. - * @notes Performs the following functions: - * 1. initialise the io port used by your display - * 2. initialise the reset pin (initial state not-in-reset) - * 3. initialise the chip select pin (initial state not-active) - * 4. initialise the backlight pin (initial state back-light off) - * - * @notapi - */ -static inline void init_board(void) { - const unsigned char FSMC_Bank = 0; - - #if defined(STM32F1XX) || defined(STM32F3XX) - /* FSMC setup for F1/F3 */ - rccEnableAHB(RCC_AHBENR_FSMCEN, 0); - - #if defined(GDISP_USE_DMA) && defined(GDISP_DMA_STREAM) - #error "DMA not implemented for F1/F3 Devices" - #endif - #elif defined(STM32F4XX) || defined(STM32F2XX) - /* STM32F2-F4 FSMC init */ - rccEnableAHB3(RCC_AHB3ENR_FSMCEN, 0); - - #if defined(GDISP_USE_DMA) && defined(GDISP_DMA_STREAM) - if (dmaStreamAllocate(GDISP_DMA_STREAM, 0, NULL, NULL)) gfxExit(); - dmaStreamSetMemory0(GDISP_DMA_STREAM, &GDISP_RAM); - dmaStreamSetMode(GDISP_DMA_STREAM, STM32_DMA_CR_PL(0) | STM32_DMA_CR_PSIZE_HWORD | STM32_DMA_CR_MSIZE_HWORD | STM32_DMA_CR_DIR_M2M); - #endif - #else - #error "FSMC not implemented for this device" - #endif - - /* set pins to FSMC mode */ - IOBus busD = {GPIOD, (1 << 0) | (1 << 1) | (1 << 4) | (1 << 5) | (1 << 7) | (1 << 8) | - (1 << 9) | (1 << 10) | (1 << 11) | (1 << 14) | (1 << 15), 0}; - - IOBus busE = {GPIOE, (1 << 7) | (1 << 8) | (1 << 9) | (1 << 10) | (1 << 11) | (1 << 12) | - (1 << 13) | (1 << 14) | (1 << 15), 0}; - - palSetBusMode(&busD, PAL_MODE_ALTERNATE(12)); - palSetBusMode(&busE, PAL_MODE_ALTERNATE(12)); - - /* FSMC timing */ - FSMC_Bank1->BTCR[FSMC_Bank+1] = (FSMC_BTR1_ADDSET_1 | FSMC_BTR1_ADDSET_3) \ - | (FSMC_BTR1_DATAST_1 | FSMC_BTR1_DATAST_3) \ - | (FSMC_BTR1_BUSTURN_1 | FSMC_BTR1_BUSTURN_3) ; - - /* Bank1 NOR/SRAM control register configuration - * This is actually not needed as already set by default after reset */ - FSMC_Bank1->BTCR[FSMC_Bank] = FSMC_BCR1_MWID_0 | FSMC_BCR1_WREN | FSMC_BCR1_MBKEN; -} - -static inline void post_init_board(void) { - const unsigned char FSMC_Bank = 0; - /* FSMC delay reduced as the controller now runs at full speed */ - FSMC_Bank1->BTCR[FSMC_Bank+1] = FSMC_BTR1_ADDSET_0 | FSMC_BTR1_DATAST_2 | FSMC_BTR1_BUSTURN_0 ; - FSMC_Bank1->BTCR[FSMC_Bank] = FSMC_BCR1_MWID_0 | FSMC_BCR1_WREN | FSMC_BCR1_MBKEN; -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - (void) state; - /* Nothing to do here */ -} - -/** - * @brief Set the lcd back-light level. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - //duty_cycle is 00..FF - //Work in progress: the SSD1963 has a built-in PWM, its output can - //be used by a Dynamic Background Control or by a host (user) - //Check your LCD's hardware, the PWM connection is default left open and instead - //connected to a LED connection on the breakout board - write_index(SSD1963_SET_PWM_CONF);//set PWM for BackLight - write_data(0x0001); - write_data(percent & 0x00FF); - write_data(0x0001);//controlled by host (not DBC), enabled - write_data(0x00FF); - write_data(0x0060);//don't let it go too dark, avoid a useless LCD - write_data(0x000F);//prescaler ??? -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { - /* Nothing to do here */ -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { - /* Nothing to do here */ -} - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { return GDISP_RAM; } -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ diff --git a/drivers/gdisp/SSD1963/gdisp_lld_board_example_gpio.h b/drivers/gdisp/SSD1963/gdisp_lld_board_example_gpio.h deleted file mode 100644 index 90ff8a15..00000000 --- a/drivers/gdisp/SSD1963/gdisp_lld_board_example_gpio.h +++ /dev/null @@ -1,170 +0,0 @@ -/* - * This file is subject to the terms of the GFX License. If a copy of - * the license was not distributed with this file, you can obtain one at: - * - * http://chibios-gfx.com/license.html - */ - -/** - * @file drivers/gdisp/SSD1963/gdisp_lld_board_example_gpio.h - * @brief GDISP Graphic Driver subsystem board interface for the SSD1963 display. - * - * @addtogroup GDISP - * @{ - */ - -#ifndef _GDISP_LLD_BOARD_H -#define _GDISP_LLD_BOARD_H - -#if defined(GDISP_USE_GPIO) - #define Set_CS palSetPad(GDISP_CMD_PORT, GDISP_CS); - #define Clr_CS palClearPad(GDISP_CMD_PORT, GDISP_CS); - #define Set_RS palSetPad(GDISP_CMD_PORT, GDISP_RS); - #define Clr_RS palClearPad(GDISP_CMD_PORT, GDISP_RS); - #define Set_WR palSetPad(GDISP_CMD_PORT, GDISP_WR); - #define Clr_WR palClearPad(GDISP_CMD_PORT, GDISP_WR); - #define Set_RD palSetPad(GDISP_CMD_PORT, GDISP_RD); - #define Clr_RD palClearPad(GDISP_CMD_PORT, GDISP_RD); -#endif - -#if defined(GDISP_USE_FSMC) - /* Using FSMC A16 as RS */ - #define GDISP_REG (*((volatile uint16_t *) 0x60000000)) /* RS = 0 */ - #define GDISP_RAM (*((volatile uint16_t *) 0x60020000)) /* RS = 1 */ -#endif - -/** - * @brief Send data to the index register. - * - * @param[in] index The index register to set - * - * @notapi - */ -static inline void write_index(uint16_t index) { - Set_CS; Set_RS; Set_WR; Clr_RD; - palWritePort(GDISP_DATA_PORT, index); - Clr_CS; -} - -/** - * @brief Send data to the lcd. - * - * @param[in] data The data to send - * - * @notapi - */ -static inline void write_data(uint16_t data) { - Set_CS; Clr_RS; Set_WR; Clr_RD; - palWritePort(GDISP_DATA_PORT, data); - Clr_CS; -} - -/** - * @brief Initialise the board for the display. - * - * @notapi - */ -static inline void init_board(void) { - - IOBus busCMD = {GDISP_CMD_PORT, (1 << GDISP_CS) | (1 << GDISP_RS) | (1 << GDISP_WR) | (1 << GDISP_RD), 0}; - IOBus busDATA = {GDISP_CMD_PORT, 0xFFFFF, 0}; - palSetBusMode(&busCMD, PAL_MODE_OUTPUT_PUSHPULL); - palSetBusMode(&busDATA, PAL_MODE_OUTPUT_PUSHPULL); -} - -static inline void post_init_board(void) { - /* Nothing to do here */ -} - -/** - * @brief Set or clear the lcd reset pin. - * - * @param[in] state TRUE = lcd in reset, FALSE = normal operation - * - * @notapi - */ -static inline void setpin_reset(bool_t state) { - -} - -/** - * @brief Set the lcd back-light level. - * - * @param[in] percent 0 to 100% - * - * @notapi - */ -static inline void set_backlight(uint8_t percent) { - //duty_cycle is 00..FF - //Work in progress: the SSD1963 has a built-in PWM, its output can - //be used by a Dynamic Background Control or by a host (user) - //Check your LCD's hardware, the PWM connection is default left open and instead - //connected to a LED connection on the breakout board - write_index(SSD1963_SET_PWM_CONF);//set PWM for BackLight - write_data(0x0001); - write_data(percent & 0x00FF); - write_data(0x0001);//controlled by host (not DBC), enabled - write_data(0x00FF); - write_data(0x0060);//don't let it go too dark, avoid a useless LCD - write_data(0x000F);//prescaler ??? -} - -/** - * @brief Take exclusive control of the bus - * - * @notapi - */ -static inline void acquire_bus(void) { - /* Nothing to do here */ -} - -/** - * @brief Release exclusive control of the bus - * - * @notapi - */ -static inline void release_bus(void) { - /* Nothing to do here */ -} - -__inline void write_stream(uint16_t *buffer, uint16_t size) { - uint16_t i; - Set_CS; Clr_RS; Set_WR; Clr_RD; - for(i = 0; i < size; i++) { - Set_WR; - palWritePort(GDISP_DATA_PORT, buffer[i]); - Clr_WR; - } - Clr_CS; -} - -__inline void read_stream(uint16_t *buffer, size_t size) { - uint16_t i; - Set_CS; Clr_RS; Clr_WR; Set_RD; - for(i = 0; i < size; i++) { - Set_RD; - buffer[i] = palReadPort(GDISP_DATA_PORT); - Clr_RD; - } -} - -#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) -/** - * @brief Read data from the lcd. - * - * @return The data from the lcd - * @note The chip select may need to be asserted/de-asserted - * around the actual spi read - * - * @notapi - */ -static inline uint16_t read_data(void) { - Set_CS; Clr_RS; Clr_WR; Set_RD; - uint16_t data = palReadPort(GDISP_DATA_PORT); - Clr_CS; - return data; -} -#endif - -#endif /* _GDISP_LLD_BOARD_H */ -/** @} */ diff --git a/drivers/gdisp/SSD1963/gdisp_lld_board_template.h b/drivers/gdisp/SSD1963/gdisp_lld_board_template.h new file mode 100644 index 00000000..233d9a7a --- /dev/null +++ b/drivers/gdisp/SSD1963/gdisp_lld_board_template.h @@ -0,0 +1,115 @@ +/* + * This file is subject to the terms of the GFX License. If a copy of + * the license was not distributed with this file, you can obtain one at: + * + * http://chibios-gfx.com/license.html + */ + +/** + * @file drivers/gdisp/SSD1963/gdisp_lld_board_template.h + * @brief GDISP Graphic Driver subsystem board interface for the SSD1963 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +/** + * @brief Send data to the index register. + * + * @param[in] index The index register to set + * + * @notapi + */ +static inline void write_index(uint16_t index) { + +} + +/** + * @brief Send data to the lcd. + * + * @param[in] data The data to send + * + * @notapi + */ +static inline void write_data(uint16_t data) { + +} + +/** + * @brief Initialise the board for the display. + * @notes Performs the following functions: + * 1. initialise the io port used by your display + * 2. initialise the reset pin (initial state not-in-reset) + * 3. initialise the chip select pin (initial state not-active) + * 4. initialise the backlight pin (initial state back-light off) + * + * @notapi + */ +static inline void init_board(void) { + +} + +static inline void post_init_board(void) { + +} + +/** + * @brief Set or clear the lcd reset pin. + * + * @param[in] state TRUE = lcd in reset, FALSE = normal operation + * + * @notapi + */ +static inline void setpin_reset(bool_t state) { + +} + +/** + * @brief Set the lcd back-light level. + * + * @param[in] percent 0 to 100% + * + * @notapi + */ +static inline void set_backlight(uint8_t percent) { + +} + +/** + * @brief Take exclusive control of the bus + * + * @notapi + */ +static inline void acquire_bus(void) { + +} + +/** + * @brief Release exclusive control of the bus + * + * @notapi + */ +static inline void release_bus(void) { + +} + +#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) +/** + * @brief Read data from the lcd. + * + * @return The data from the lcd + * @note The chip select may need to be asserted/de-asserted + * around the actual spi read + * + * @notapi + */ +static inline uint16_t read_data(void) { + +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ diff --git a/drivers/gdisp/SSD1963/readme.txt b/drivers/gdisp/SSD1963/readme.txt deleted file mode 100644 index f74e9b7f..00000000 --- a/drivers/gdisp/SSD1963/readme.txt +++ /dev/null @@ -1,38 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - b) Any optional high level driver defines (see gdisp.h) eg: #define GDISP_NEED_MULTITHREAD TRUE - c) One (only) of: - #define GDISP_USE_GPIO - #define GDISP_USE_FSMC - d) If you want to use DMA (only works with FSMC): - #define GDISP_USE_DMA - #define GDISP_DMA_STREAM STM32_DMA2_STREAM6 //You can change the DMA channel according to your needs - -2. Edit gdisp_lld_panel.h with your panel properties - -3. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/SSD1963/gdisp_lld.mk - - -Example FSMC config with DMA: - -#define GDISP_SCREEN_WIDTH 480 -#define GDISP_SCREEN_HEIGHT 272 - -#define GDISP_USE_FSMC - -#define GDISP_USE_DMA -#define GDISP_DMA_STREAM STM32_DMA2_STREAM6 - -#if defined(GDISP_USE_GPIO) - - #define GDISP_CMD_PORT GPIOC - #define GDISP_DATA_PORT GPIOD - - #define GDISP_CS 0 - #define GDISP_RS 1 - #define GDISP_WR 2 - #define GDISP_RD 3 -#endif diff --git a/drivers/gdisp/SSD2119/gdisp_lld.c b/drivers/gdisp/SSD2119/gdisp_lld.c index b3fa4fd3..fc2523e0 100644 --- a/drivers/gdisp/SSD2119/gdisp_lld.c +++ b/drivers/gdisp/SSD2119/gdisp_lld.c @@ -40,15 +40,7 @@ /* Driver local functions. */ /*===========================================================================*/ -#if defined(GDISP_USE_CUSTOM_BOARD) && GDISP_USE_CUSTOM_BOARD - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#elif defined(BOARD_EMBEST_DMSTF4BB) - #include "gdisp_lld_board_embest_dmstf4bb.h" -#else - /* Include the user supplied board definitions */ - #include "gdisp_lld_board.h" -#endif +#include "gdisp_lld_board.h" // Some common routines and macros #define write_reg(reg, data) { write_index(reg); write_data(data); } diff --git a/drivers/gdisp/SSD2119/gdisp_lld_board_template.h b/drivers/gdisp/SSD2119/gdisp_lld_board_template.h new file mode 100644 index 00000000..26ca0d32 --- /dev/null +++ b/drivers/gdisp/SSD2119/gdisp_lld_board_template.h @@ -0,0 +1,109 @@ +/* + * This file is subject to the terms of the GFX License. If a copy of + * the license was not distributed with this file, you can obtain one at: + * + * http://chibios-gfx.com/license.html + */ + +/** + * @file drivers/gdisp/SSD2119/gdisp_lld_board_template.h + * @brief GDISP Graphic Driver subsystem board template for the SSD2119 display. + * + * @addtogroup GDISP + * @{ + */ + +#ifndef _GDISP_LLD_BOARD_H +#define _GDISP_LLD_BOARD_H + +/** + * @brief Initialise the board for the display. + * @notes This board definition uses GPIO and assumes exclusive access to these GPIO pins + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Set or clear the lcd reset pin. + * + * @param[in] state TRUE = lcd in reset, FALSE = normal operation + * + * @notapi + */ +static inline void setpin_reset(bool_t state) { + +} + +/** + * @brief Set the lcd back-light level. + * + * @param[in] percent 0 to 100% + * + * @notapi + */ +static inline void set_backlight(uint8_t percent) { + +} + +/** + * @brief Take exclusive control of the bus + * @note Not needed, not implemented + * + * @notapi + */ +static inline void acquire_bus(void) { + /* Nothing to do here since LCD is the only device on that bus */ +} + +/** + * @brief Release exclusive control of the bus + * @note Not needed, not implemented + * + * @notapi + */ +static inline void release_bus(void) { + /* Nothing to do here since LCD is the only device on that bus */ +} + +/** + * @brief Send data to the index register. + * + * @param[in] index The index register to set + * + * @notapi + */ +static inline void write_index(uint16_t index) { + +} + +/** + * @brief Send data to the lcd. + * + * @param[in] data The data to send + * + * @notapi + */ +static inline void write_data(uint16_t data) { + +} + +#if GDISP_HARDWARE_READPIXEL || GDISP_HARDWARE_SCROLL || defined(__DOXYGEN__) +/** + * @brief Read data from the lcd. + * + * @return The data from the lcd + * @note The chip select may need to be asserted/de-asserted + * around the actual spi read + * + * @notapi + */ +static inline uint16_t read_data(void) { + +} +#endif + +#endif /* _GDISP_LLD_BOARD_H */ +/** @} */ diff --git a/drivers/gdisp/SSD2119/readme.txt b/drivers/gdisp/SSD2119/readme.txt deleted file mode 100644 index 23d82eb7..00000000 --- a/drivers/gdisp/SSD2119/readme.txt +++ /dev/null @@ -1,27 +0,0 @@ -Description: - -Driver for LCD with 16-bit 8080 interface (65k colors). - -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - - b) Any optional high level driver defines (see gdisp.h) eg: GDISP_NEED_MULTITHREAD - - c) If you are not using a known board then create a gdisp_lld_board.h file - and ensure it is on your include path. Use the gdisp_lld_board_embest_dmstf4bb.h - file as a basis. - Currently known boards are: - BOARD_EMBEST_DMSTF4BB - FSMC interface - This board configuration assumes that you have PWM driver enabled - and STM32_PWM_USE_TIM4 set to TRUE in your mcuconf.h. - If you use FSMC, define in your board file GDISP_USE_FSMC. If you use DMA, - define GDISP_USE_DMA. - - d) The following are optional - define them if you are not using the defaults below: - #define GDISP_SCREEN_WIDTH 320 - #define GDISP_SCREEN_HEIGHT 240 - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/SSD2119/gdisp_lld.mk diff --git a/drivers/gdisp/TestStub/readme.txt b/drivers/gdisp/TestStub/readme.txt deleted file mode 100644 index ddd7d38e..00000000 --- a/drivers/gdisp/TestStub/readme.txt +++ /dev/null @@ -1,16 +0,0 @@ -This low level driver is a test stub that doesn't talk to any -real hardware. It is included to allow testing of the compilation -process. - -Do not use this driver as a template for new drivers. Use the - templates/gdispXXXXX directory for that. - -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GDISP TRUE - b) Any optional high level driver defines (see gdisp.h) - you want to compile test eg: GDISP_NEED_MULTITHREAD - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/gdisp/TestStub/gdisp_lld.mk diff --git a/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c b/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c index a25e6bac..f9ebe56d 100644 --- a/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c +++ b/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c @@ -20,17 +20,7 @@ #include "ginput/lld/mouse.h" -#if defined(GINPUT_MOUSE_USE_CUSTOM_BOARD) && GINPUT_MOUSE_USE_CUSTOM_BOARD - #include "ginput_lld_mouse_board.h" -#elif defined(BOARD_FIREBULL_STM32_F103) - #include "ginput_lld_mouse_board_firebull_stm32f103.h" -#elif defined(BOARD_OLIMEX_STM32_E407) - #include "ginput_lld_mouse_board_olimex_stm32_e407.h" -#elif defined(BOARD_ST_STM32F4_DISCOVERY) - #include "ginput_lld_mouse_board_st_stm32f4_discovery.h" -#else - #include "ginput_lld_mouse_board_example.h" -#endif +#include "ginput_lld_mouse_board.h" #if defined(GINPUT_MOUSE_YX_INVERTED) && GINPUT_MOUSE_YX_INVERTED #define CMD_X 0x91 diff --git a/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_example.h b/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h similarity index 68% rename from drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_example.h rename to drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h index 61f2ee50..8808d24d 100644 --- a/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_example.h +++ b/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h @@ -4,72 +4,68 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_example.h - * @brief GINPUT Touch low level driver source for the ADS7843 on the example board. - * - * @defgroup Mouse Mouse - * @ingroup GINPUT - * @{ - */ - -#ifndef _GINPUT_LLD_MOUSE_BOARD_H -#define _GINPUT_LLD_MOUSE_BOARD_H - -/** - * @brief Initialise the board for the touch. - * - * @notapi - */ -static inline void init_board(void) { - /* Code here */ - #error "ginputADS7843: You must supply a definition for init_board for your board" -} - -/** - * @brief Check whether the surface is currently touched - * @return TRUE if the surface is currently touched - * - * @notapi - */ -static inline bool_t getpin_pressed(void) { - /* Code here */ - #error "ginputADS7843: You must supply a definition for getpin_pressed for your board" -} - -/** - * @brief Aquire the bus ready for readings - * - * @notapi - */ -static inline void aquire_bus(void) { - /* Code here */ - #error "ginputADS7843: You must supply a definition for aquire_bus for your board" -} - -/** - * @brief Release the bus after readings - * - * @notapi - */ -static inline void release_bus(void) { - /* Code here */ - #error "ginputADS7843: You must supply a definition for release_bus for your board" -} - -/** - * @brief Read a value from touch controller - * @return The value read from the controller - * - * params[in] port The controller port to read. - * - * @notapi - */ -static inline uint16_t read_value(uint16_t port) { - /* Code here */ - #error "ginputADS7843: You must supply a definition for read_value for your board" -} - -#endif /* _GINPUT_LLD_MOUSE_BOARD_H */ -/** @} */ + +/** + * @file drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h + * @brief GINPUT Touch low level driver source for the ADS7843 on the example board. + * + * @defgroup Mouse Mouse + * @ingroup GINPUT + * @{ + */ + +#ifndef _GINPUT_LLD_MOUSE_BOARD_H +#define _GINPUT_LLD_MOUSE_BOARD_H + +/** + * @brief Initialise the board for the touch. + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Check whether the surface is currently touched + * @return TRUE if the surface is currently touched + * + * @notapi + */ +static inline bool_t getpin_pressed(void) { + +} + +/** + * @brief Aquire the bus ready for readings + * + * @notapi + */ +static inline void aquire_bus(void) { + +} + +/** + * @brief Release the bus after readings + * + * @notapi + */ +static inline void release_bus(void) { + +} + +/** + * @brief Read a value from touch controller + * @return The value read from the controller + * + * params[in] port The controller port to read. + * + * @notapi + */ +static inline uint16_t read_value(uint16_t port) { + +} + +#endif /* _GINPUT_LLD_MOUSE_BOARD_H */ +/** @} */ + diff --git a/drivers/ginput/touch/ADS7843/readme.txt b/drivers/ginput/touch/ADS7843/readme.txt deleted file mode 100644 index abc4b0e9..00000000 --- a/drivers/ginput/touch/ADS7843/readme.txt +++ /dev/null @@ -1,8 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GINPUT TRUE - b) #define GINPUT_NEED_MOUSE TRUE - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/ginput/touch/ADS7843/ginput_lld.mk diff --git a/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board.h b/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_marlin.h similarity index 100% rename from drivers/ginput/touch/FT5x06/ginput_lld_mouse_board.h rename to drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_marlin.h diff --git a/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_example.h b/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h similarity index 73% rename from drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_example.h rename to drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h index 19e824e5..3ae7f85c 100644 --- a/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_example.h +++ b/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h @@ -6,7 +6,7 @@ */ /** - * @file drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_example.h + * @file drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h * @brief GINPUT Touch low level driver source for the FT5x06 on the example board. * * @defgroup Mouse Mouse @@ -23,8 +23,7 @@ * @notapi */ static void init_board(void) { - /* Code here */ - #error "ginputFT5x06: You must supply a definition for init_board for your board" + } /** @@ -34,8 +33,7 @@ static void init_board(void) { * @notapi */ static inline bool_t getpin_irq(void) { - /* Code here */ - #error "ginputFT5x06: You must supply a definition for getpin_irq for your board" + } /** @@ -48,8 +46,7 @@ static inline bool_t getpin_irq(void) { * @notapi */ static void write_reg(uint8_t reg, uint8_t n, uint16_t val) { - /* Code here */ - #error "ginputFT5x06: You must supply a definition for write_reg for your board" + } /** @@ -63,8 +60,7 @@ static void write_reg(uint8_t reg, uint8_t n, uint16_t val) { * @notapi */ static uint16_t read_reg(uint8_t reg, uint8_t n) { - /* Code here */ - #error "ginputFT5x06: You must supply a definition for read_reg for your board" + } #endif /* _GINPUT_LLD_MOUSE_BOARD_H */ diff --git a/drivers/ginput/touch/FT5x06/readme.txt b/drivers/ginput/touch/FT5x06/readme.txt deleted file mode 100644 index ec3ae757..00000000 --- a/drivers/ginput/touch/FT5x06/readme.txt +++ /dev/null @@ -1,8 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GINPUT TRUE - b) #define GINPUT_NEED_MOUSE TRUE - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/ginput/touch/FT5x06/ginput_lld.mk diff --git a/drivers/ginput/touch/MCU/ginput_lld_mouse_board_example.h b/drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h similarity index 63% rename from drivers/ginput/touch/MCU/ginput_lld_mouse_board_example.h rename to drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h index 3109f818..e835f020 100644 --- a/drivers/ginput/touch/MCU/ginput_lld_mouse_board_example.h +++ b/drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h @@ -4,82 +4,77 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/ginput/touch/MCU/ginput_lld_mouse_board_example.h - * @brief GINPUT Touch low level driver source for the MCU on the example board. - * - * @defgroup Mouse Mouse - * @ingroup GINPUT - * - * @{ - */ - -#ifndef _GINPUT_LLD_MOUSE_BOARD_H -#define _GINPUT_LLD_MOUSE_BOARD_H - -/** - * @brief Initialise the board for the touch. - * - * @notapi - */ -static inline void init_board(void) { - /* Code here */ - #error "ginputMCU: You must supply a definition for init_board for your board" -} - -/** - * @brief Check whether the surface is currently touched - * @return TRUE if the surface is currently touched - * - * @notapi - */ -static inline bool_t getpin_pressed(void) { - /* Code here */ - #error "ginputMCU: You must supply a definition for getpin_pressed for your board" -} - -/** - * @brief Aquire the bus ready for readings - * - * @notapi - */ -static inline void aquire_bus(void) { - /* Code here */ - #error "ginputMCU: You must supply a definition for aquire_bus for your board" -} - -/** - * @brief Release the bus after readings - * - * @notapi - */ -static inline void release_bus(void) { - /* Code here */ - #error "ginputMCU: You must supply a definition for release_bus for your board" -} - -/** - * @brief Read an x value from touch controller - * @return The value read from the controller - * - * @notapi - */ -static inline uint16_t read_x_value(void) { - /* Code here */ - #error "ginputMCU: You must supply a definition for read_x_value for your board" -} - -/** - * @brief Read an y value from touch controller - * @return The value read from the controller - * - * @notapi - */ -static inline uint16_t read_y_value(void) { - /* Code here */ - #error "ginputMCU: You must supply a definition for read_y_value for your board" -} - -#endif /* _GINPUT_LLD_MOUSE_BOARD_H */ -/** @} */ + +/** + * @file drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h + * @brief GINPUT Touch low level driver source for the MCU on the example board. + * + * @defgroup Mouse Mouse + * @ingroup GINPUT + * + * @{ + */ + +#ifndef _GINPUT_LLD_MOUSE_BOARD_H +#define _GINPUT_LLD_MOUSE_BOARD_H + +/** + * @brief Initialise the board for the touch. + * + * @notapi + */ +static inline void init_board(void) { + +} + +/** + * @brief Check whether the surface is currently touched + * @return TRUE if the surface is currently touched + * + * @notapi + */ +static inline bool_t getpin_pressed(void) { + +} + +/** + * @brief Aquire the bus ready for readings + * + * @notapi + */ +static inline void aquire_bus(void) { + +} + +/** + * @brief Release the bus after readings + * + * @notapi + */ +static inline void release_bus(void) { + +} + +/** + * @brief Read an x value from touch controller + * @return The value read from the controller + * + * @notapi + */ +static inline uint16_t read_x_value(void) { + +} + +/** + * @brief Read an y value from touch controller + * @return The value read from the controller + * + * @notapi + */ +static inline uint16_t read_y_value(void) { + +} + +#endif /* _GINPUT_LLD_MOUSE_BOARD_H */ +/** @} */ + diff --git a/drivers/ginput/touch/MCU/readme.txt b/drivers/ginput/touch/MCU/readme.txt deleted file mode 100644 index c7bb90f8..00000000 --- a/drivers/ginput/touch/MCU/readme.txt +++ /dev/null @@ -1,8 +0,0 @@ -To use this driver: - -1. Add in your gfxconf.h: - a) #define GFX_USE_GINPUT TRUE - b) #define GINPUT_NEED_MOUSE TRUE - -2. To your makefile add the following lines: - include $(GFXLIB)/drivers/ginput/touch/MCU/ginput_lld.mk diff --git a/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c b/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c index 5e4b78ef..0d6aa147 100644 --- a/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c +++ b/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c @@ -22,13 +22,7 @@ #include "ginput/lld/mouse.h" -#if defined(GINPUT_MOUSE_USE_CUSTOM_BOARD) && GINPUT_MOUSE_USE_CUSTOM_BOARD - #include "ginput_lld_mouse_board.h" -#elif defined(BOARD_EMBEST_DMSTF4BB) - #include "ginput_lld_mouse_board_embest_dmstf4bb.h" -#else - #include "ginput_lld_mouse_board_example.h" -#endif +#include "ginput_lld_mouse_board.h" #ifndef STMP811_NO_GPIO_IRQPIN #define STMP811_NO_GPIO_IRQPIN FALSE diff --git a/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_example.h b/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h similarity index 63% rename from drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_example.h rename to drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h index 926fd3fa..a60da459 100644 --- a/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_example.h +++ b/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h @@ -4,72 +4,65 @@ * * http://chibios-gfx.com/license.html */ - -/** - * @file drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_example.h - * @brief GINPUT Touch low level driver source for the STMPE811 on the example board. - * - * @defgroup Mouse Mouse - * @ingroup GINPUT - * @{ - */ - -#ifndef _GINPUT_LLD_MOUSE_BOARD_H -#define _GINPUT_LLD_MOUSE_BOARD_H - -/** - * @brief Initialise the board for the touch. - * - * @notapi - */ -static void init_board(void) -{ - /* Code here */ - #error "ginputSTMPE811: You must supply a definition for init_board for your board" -} - -/** - * @brief Check whether an interrupt is raised - * @return TRUE if there is an interrupt signal present - * - * @notapi - */ -static inline bool_t getpin_irq(void) -{ - /* Code here */ - #error "ginputSTMPE811: You must supply a definition for getpin_irq for your board" -} - -/** - * @brief Write a value into a certain register - * - * @param[in] reg The register address - * @param[in] n The amount of bytes (one or two) - * @param[in] val The value - * - * @notapi - */ -static void write_reg(uint8_t reg, uint8_t n, uint16_t val) -{ - /* Code here */ - #error "ginputSTMPE811: You must supply a definition for write_reg for your board" -} - -/** - * @brief Read the value of a certain register - * - * @param[in] reg The register address - * @param[in] n The amount of bytes (one or two) - * - * @return Data read from device (one byte or two depending on n param) - * - * @notapi - */ -static uint16_t read_reg(uint8_t reg, uint8_t n) -{ - /* Code here */ - #error "ginputSTMPE811: You must supply a definition for read_reg for your board" -} - -#endif /* _GINPUT_LLD_MOUSE_BOARD_H */ -/** @} */ + +/** + * @file drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h + * @brief GINPUT Touch low level driver source for the STMPE811 on the example board. + * + * @defgroup Mouse Mouse + * @ingroup GINPUT + * @{ + */ + +#ifndef _GINPUT_LLD_MOUSE_BOARD_H +#define _GINPUT_LLD_MOUSE_BOARD_H + +/** + * @brief Initialise the board for the touch. + * + * @notapi + */ +static void init_board(void) { + +} + +/** + * @brief Check whether an interrupt is raised + * @return TRUE if there is an interrupt signal present + * + * @notapi + */ +static inline bool_t getpin_irq(void) { + +} + +/** + * @brief Write a value into a certain register + * + * @param[in] reg The register address + * @param[in] n The amount of bytes (one or two) + * @param[in] val The value + * + * @notapi + */ +static void write_reg(uint8_t reg, uint8_t n, uint16_t val) { + +} + +/** + * @brief Read the value of a certain register + * + * @param[in] reg The register address + * @param[in] n The amount of bytes (one or two) + * + * @return Data read from device (one byte or two depending on n param) + * + * @notapi + */ +static uint16_t read_reg(uint8_t reg, uint8_t n) { + +} + +#endif /* _GINPUT_LLD_MOUSE_BOARD_H */ +/** @} */ + diff --git a/drivers/ginput/touch/STMPE811/readme.txt b/drivers/ginput/touch/STMPE811/readme.txt deleted file mode 100644 index 065840d8..00000000 --- a/drivers/ginput/touch/STMPE811/readme.txt +++ /dev/null @@ -1,20 +0,0 @@ -The STMPE811 driver comes with two different #defines to perfectly fit -your application: - - -STMPE811_NO_GPIO_IRQPIN -This Macro is meant to be set in your board file. When you set this macro to -TRUE, the GINPUT module will not use the IRQ lane which might be connected -to a GPIO pin to recognize interrupts by the STMPE811 controller. This -costs a few more I2C calls. -When the interrupt IRQ pin is connected to a GPIO of your MCU, set this -macro to FALSE. - - -STMP811_SLOW_CPU -If you have a slow CPU and you need to take care of your resources, you can -set this macro TRUE. This will save some IRQs and therefore a few I2C calls. -The disadvantage is a little higher response time. -If you don't want to draw continious lines on your display, it's recommended -to set this to TRUE anyways. -