aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gdisp/SSD1289
diff options
context:
space:
mode:
authorJoel Bodenmann <joel@unormal.org>2013-07-21 17:42:25 +0200
committerJoel Bodenmann <joel@unormal.org>2013-07-21 17:42:25 +0200
commitd98e6c5d0d6c048c99aeda810da10e6a6a130325 (patch)
tree397a911a667c873bcd68419307519210fe150e9b /drivers/gdisp/SSD1289
parentc29950c7670397d60b32e92fa4aadb29fea227a4 (diff)
downloaduGFX-d98e6c5d0d6c048c99aeda810da10e6a6a130325.tar.gz
uGFX-d98e6c5d0d6c048c99aeda810da10e6a6a130325.tar.bz2
uGFX-d98e6c5d0d6c048c99aeda810da10e6a6a130325.zip
cleaned up board file mess
Diffstat (limited to 'drivers/gdisp/SSD1289')
-rw-r--r--drivers/gdisp/SSD1289/gdisp_lld.c12
-rw-r--r--drivers/gdisp/SSD1289/gdisp_lld_board_example_fsmc.h151
-rw-r--r--drivers/gdisp/SSD1289/gdisp_lld_board_template.h (renamed from drivers/gdisp/SSD1289/gdisp_lld_board_example.h)206
-rw-r--r--drivers/gdisp/SSD1289/readme.txt20
4 files changed, 101 insertions, 288 deletions
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
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