Massive naming fix: STMPE11->STMPE811

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4782 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo
2012-05-29 00:54:22 +00:00
parent 5e81918c8c
commit 26d1e5ab3f
27 changed files with 545 additions and 543 deletions
+12 -10
View File
@@ -2708,7 +2708,7 @@
position, not an offset.
* graphics/nxtk/nxtk_drawframe.c: Framed windows are now drawn in three
colors (instead of just two).
* drivers/input/stmpe11_*: Added a driver to support the STMicro STMPE11
* drivers/input/stmpe811_*: Added a driver to support the STMicro STMPE811
IO Expander and touchscreen driver.
* configs/stm3240g-eval/nxwm: Added to configuration for testing the NxWM
window manager on the STM3240G-EVAL board.
@@ -2720,8 +2720,8 @@
Then add CONFIG_NX_WRITEONLY which is the more generic way of saying that
no NX component should try to read from the underlying graphic device (LCD
or other).
* configs/stm3240g-eval/src/up_stmpe11.c: Add board-specific support for the
the STMPE11 I/O expander on the STM3240G-EVAL board. Verfied that the
* configs/stm3240g-eval/src/up_stmpe811.c: Add board-specific support for the
the STMPE811 I/O expander on the STM3240G-EVAL board. Verfied that the
STM3240G-EVAL touchscreen is now fully functional.
* include/cxx/cfcntl: Added std:: header file.
* graphics/nxbe/nxbe_filltrapezoid.c and graphics/nxglib/fb/nxglib_filltrapezoid.c:
@@ -2730,14 +2730,14 @@
* configs/sam3u-ek, configs/sim, arch/sim/src/up_touchscreen.c, and
apps/examples/touchscreen: Standardize the board-specific, touchscreen
initialization interfaces.
* drivers/input/stmpe11_base.c and configs/stm3240g-eval: The STMPE11-based
* drivers/input/stmpe811_base.c and configs/stm3240g-eval: The STMPE811-based
touchscreen seems to work better with edge (vs. level) interrupts
* drivers/input/stmpe11_tsc.c: Fix some status checks so that the touchscreen
* drivers/input/stmpe811_tsc.c: Fix some status checks so that the touchscreen
interrupt handling logic does not read data if the fifo is not at the
threshold level.
* include/nuttx/wqueue.h: Add macro work_available() to determine if the
previously scheduled work has completed.
* drivers/stmpe11_tsc.c: Correct errors: (1) Since all interrupt logic is done on
* drivers/stmpe811_tsc.c: Correct errors: (1) Since all interrupt logic is done on
the worker thread, disabling interrupts does not provide protected; Need to
disable pre-emption. (2) Fix handling of touch ID and (2) add some logic to
prevent certain kinds of data overrun.
@@ -2746,7 +2746,7 @@
other logic can use the defaults.
* graphics/nxtk/nxtk_events.c: Fixed an important but in the logic that
translates the mouse/touchscreen position data for framed windows and toolbars.
* drivers/input/stmpe11_tsc.c, tsc2007.c, and ads7843e.c: Need to keep track of
* drivers/input/stmpe811_tsc.c, tsc2007.c, and ads7843e.c: Need to keep track of
when if positional data is valid. When the touch is released, the X/Y position
of the release must be the same as the X/Y position of the last touch (se that
the release occurs in the same window as the last touch).
@@ -2760,7 +2760,7 @@
window to revert to the previous window. Not good behavior.
* sched/sched_mergepending.c: Add task switching instrumentation. There is a case
here where instrumentation was missing. Contributed by Petri Tanskanen.
* CONFIG_STMPE11_THRESHX, CONFIG_STMPE11_THRESHX, and drivers/stmpe11_tsc.c: Add some
* CONFIG_STMPE811_THRESHX, CONFIG_STMPE811_THRESHX, and drivers/stmpe811_tsc.c: Add some
thresholding controls to all slow down processing of touchscreen samples.
This is a problem with NX in multi-user mode: touchscreen data gets sent
via a message and when the message queue gets full the sender blocks and
@@ -2769,7 +2769,7 @@
* include/sched.h: Fix a typo (missing semicolon) in prototype of on_exit();
* sched/on_exit.c and include/nuttx/sched.h: Fix some old typos that caused
compilation errors when CONFIG_SCHED_ONEXIT is defined.
* configs/stm3240g-eval/nxwm/defconfig: The default NxWM now uses the STMPE11
* configs/stm3240g-eval/nxwm/defconfig: The default NxWM now uses the STMPE811
touchscreen.
* include/cxx/csched: Added
* graphic/nxmu/nxmu_sendserver.c, nxmu_sendwindow.c, and nxmu_sendclient.c:
@@ -2796,7 +2796,7 @@
keyboard data in multi-user mode.
* graphics/nxconsole/nxcon_kdbind.c: Fixed unmatched sem_wait and sem_post.
Fix some conditional compilation that included a few too many lines of code.
* drivers/input/stmpe11_tsc.c and stmpe11.h: Add a timeout to catch missed
* drivers/input/stmpe811_tsc.c and stmpe811.h: Add a timeout to catch missed
pen up events. Now the STM3240G-EVAL touchscreen works very smoothly.
* configs/stm3240g-eval/nxwm/defconfig: Enable support for NxConsole keyboard
input. Increasing spacing of icons.
@@ -2830,3 +2830,5 @@
as the corresponding STM3240G-EVAL configurations. This adds FSMC SRAM,
touchscreen, and LCD support.
* configs/stm3220g-eval/: Add a NxWM configuration for the STM3220G-EVAL.
* stmpe11*: Fix a massive naming problem. All references to STMPE11 should be
STMPE811.
+12 -12
View File
@@ -970,7 +970,7 @@
<ul>
<li><b>Drivers</b>.
Added a watchdog timer driver infrastructure.
Add general support for STMicro STMPE11 I/O Expander/touchscreen device.
Add general support for STMicro STMPE811 I/O Expander/touchscreen device.
</li>
<li><b>STM32</b>.
Add support for the STM32 IWDG and WWDG watchodog timers.
@@ -978,7 +978,7 @@
serial driver now uses circular DMA to improve Rx performance (Contributed by Mike Smith).
</li>
<li><b>STM3240G-EVAL Board</b>.
Add support for the LCD and for the STMPE11 I/O Expander as a touchscreen controller.
Add support for the LCD and for the STMPE811 I/O Expander as a touchscreen controller.
</li>
<li><b>PIC32 Boards</b>.
Board support for the Mikroelektronika PIC32MX7 Multimedia Board (MMB) and for the Sparkfun UBW32 PIC32 board.
@@ -1856,7 +1856,7 @@
A more complete port would include support for SDIO and USB OTG which are not available in NuttX 6.13.
The USB OTG device controller driver, and LCD driver and a function I2C driver were added in NuttX 6.17.
STM32 IWDG and WWDG watchdog timer drivers were added in NuttX 6.18 (should be compatible with F1 and F2).
An LCD driver and a touchscreen driver for the STM3240G-EVAL based on the STMPE11 I/O expander were also added in NuttX 6.18.
An LCD driver and a touchscreen driver for the STM3240G-EVAL based on the STMPE811 I/O expander were also added in NuttX 6.18.
</p>
</ul>
</td>
@@ -2913,7 +2913,7 @@ nuttx-6.18 2012-05-19 Gregory Nutt &lt;gnutt@nuttx.org&gt;
position, not an offset.
* graphics/nxtk/nxtk_drawframe.c: Framed windows are now drawn in three
colors (instead of just two).
* drivers/input/stmpe11_*: Added a driver to support the STMicro STMPE11
* drivers/input/stmpe811_*: Added a driver to support the STMicro STMPE811
IO Expander and touchscreen driver.
* configs/stm3240g-eval/nxwm: Added to configuration for testing the NxWM
window manager on the STM3240G-EVAL board.
@@ -2925,8 +2925,8 @@ nuttx-6.18 2012-05-19 Gregory Nutt &lt;gnutt@nuttx.org&gt;
Then add CONFIG_NX_WRITEONLY which is the more generic way of saying that
no NX component should try to read from the underlying graphic device (LCD
or other).
* configs/stm3240g-eval/src/up_stmpe11.c: Add board-specific support for the
the STMPE11 I/O expander on the STM3240G-EVAL board. Verfied that the
* configs/stm3240g-eval/src/up_stmpe811.c: Add board-specific support for the
the STMPE811 I/O expander on the STM3240G-EVAL board. Verfied that the
STM3240G-EVAL touchscreen is now fully functional.
* include/cxx/cfcntl: Added std:: header file.
* graphics/nxbe/nxbe_filltrapezoid.c and graphics/nxglib/fb/nxglib_filltrapezoid.c:
@@ -2935,14 +2935,14 @@ nuttx-6.18 2012-05-19 Gregory Nutt &lt;gnutt@nuttx.org&gt;
* configs/sam3u-ek, configs/sim, arch/sim/src/up_touchscreen.c, and
apps/examples/touchscreen: Standardize the board-specific, touchscreen
initialization interfaces.
* drivers/input/stmpe11_base.c and configs/stm3240g-eval: The STMPE11-based
* drivers/input/stmpe811_base.c and configs/stm3240g-eval: The STMPE811-based
touchscreen seems to work better with edge (vs. level) interrupts
* drivers/input/stmpe11_tsc.c: Fix some status checks so that the touchscreen
* drivers/input/stmpe811_tsc.c: Fix some status checks so that the touchscreen
interrupt handling logic does not read data if the fifo is not at the
threshold level.
* include/nuttx/wqueue.h: Add macro work_available() to determine if the
previously scheduled work has completed.
* drivers/stmpe11_tsc.c: Correct errors: (1) Since all interrupt logic is done on
* drivers/stmpe811_tsc.c: Correct errors: (1) Since all interrupt logic is done on
the worker thread, disabling interrupts does not provide protected; Need to
disable pre-emption. (2) Fix handling of touch ID and (2) add some logic to
prevent certain kinds of data overrun.
@@ -2951,7 +2951,7 @@ nuttx-6.18 2012-05-19 Gregory Nutt &lt;gnutt@nuttx.org&gt;
other logic can use the defaults.
* graphics/nxtk/nxtk_events.c: Fixed an important but in the logic that
translates the mouse/touchscreen position data for framed windows and toolbars.
* drivers/input/stmpe11_tsc.c, tsc2007.c, and ads7843e.c: Need to keep track of
* drivers/input/stmpe811_tsc.c, tsc2007.c, and ads7843e.c: Need to keep track of
when if positional data is valid. When the touch is released, the X/Y position
of the release must be the same as the X/Y position of the last touch (se that
the release occurs in the same window as the last touch).
@@ -2965,7 +2965,7 @@ nuttx-6.18 2012-05-19 Gregory Nutt &lt;gnutt@nuttx.org&gt;
window to revert to the previous window. Not good behavior.
* sched/sched_mergepending.c: Add task switching instrumentation. There is a case
here where instrumentation was missing. Contributed by Petri Tanskanen.
* CONFIG_STMPE11_THRESHX, CONFIG_STMPE11_THRESHX, and drivers/stmpe11_tsc.c: Add some
* CONFIG_STMPE811_THRESHX, CONFIG_STMPE811_THRESHX, and drivers/stmpe811_tsc.c: Add some
thresholding controls to all slow down processing of touchscreen samples.
This is a problem with NX in multi-user mode: touchscreen data gets sent
via a message and when the message queue gets full the sender blocks and
@@ -2974,7 +2974,7 @@ nuttx-6.18 2012-05-19 Gregory Nutt &lt;gnutt@nuttx.org&gt;
* include/sched.h: Fix a typo (missing semicolon) in prototype of on_exit();
* sched/on_exit.c and include/nuttx/sched.h: Fix some old typos that caused
compilation errors when CONFIG_SCHED_ONEXIT is defined.
* configs/stm3240g-eval/nxwm/defconfig: The default NxWM now uses the STMPE11
* configs/stm3240g-eval/nxwm/defconfig: The default NxWM now uses the STMPE811
touchscreen.
* include/cxx/csched: Added
* graphic/nxmu/nxmu_sendserver.c, nxmu_sendwindow.c, and nxmu_sendclient.c:
+19 -19
View File
@@ -4673,69 +4673,69 @@ build
multiple touchscreens with the same driver.
</li>
<li>
<code>CONFIG_INPUT_STMPE11</code>:
Enables support for the STMPE11 driver (Needs <code>CONFIG_INPUT</code>)
<code>CONFIG_INPUT_STMPE811</code>:
Enables support for the STMPE811 driver (Needs <code>CONFIG_INPUT</code>)
</li>
<li>
<code>CONFIG_STMPE11_SPI</code>:
<code>CONFIG_STMPE811_SPI</code>:
Enables support for the SPI interface (not currenly supported)
</li>
<li>
<code>CONFIG_STMPE11_I2C</code>:
<code>CONFIG_STMPE811_I2C</code>:
Enables support for the I2C interface
</li>
<li>
<code>CONFIG_STMPE11_MULTIPLE </code>:
Can be defined to support multiple STMPE11 devices on board.
<code>CONFIG_STMPE811_MULTIPLE </code>:
Can be defined to support multiple STMPE811 devices on board.
</li>
<li>
<code>CONFIG_STMPE11_ACTIVELOW</code>:
<code>CONFIG_STMPE811_ACTIVELOW</code>:
Interrupt is generated by an active low signal (or falling edge).
</li>
<li>
<code>CONFIG_STMPE11_EDGE</code>:
<code>CONFIG_STMPE811_EDGE</code>:
Interrupt is generated on an edge (vs. on the active level)
</li>
<li>
<code>CONFIG_STMPE11_NPOLLWAITERS</code>:
<code>CONFIG_STMPE811_NPOLLWAITERS</code>:
Maximum number of threads that can be waiting on poll() (ignored if
<code>CONFIG_DISABLE_POLL</code> is set).
</li>
<li>
<code>CONFIG_STMPE11_TSC_DISABLE</code>:
<code>CONFIG_STMPE811_TSC_DISABLE</code>:
Disable driver touchscreen functionality.
</li>
<li>
<code>CONFIG_STMPE11_ADC_DISABLE</code>:
<code>CONFIG_STMPE811_ADC_DISABLE</code>:
Disable driver ADC functionality.
</li>
<li>
<code>CONFIG_STMPE11_GPIO_DISABLE</code>:
<code>CONFIG_STMPE811_GPIO_DISABLE</code>:
Disable driver GPIO functionlaity.
</li>
<li>
<code>CONFIG_STMPE11_GPIOINT_DISABLE</code>:
<code>CONFIG_STMPE811_GPIOINT_DISABLE</code>:
Disable driver GPIO interrupt functionality (ignored if GPIO
functionality is disabled).
</li>
<li>
<code>CONFIG_STMPE11_SWAPXY</code>:
<code>CONFIG_STMPE811_SWAPXY</code>:
Reverse the meaning of X and Y to handle different LCD orientations.
</li>
<li>
<code>CONFIG_STMPE11_TEMP_DISABLE</code>:
<code>CONFIG_STMPE811_TEMP_DISABLE</code>:
Disable driver temperature sensor functionality.
</li>
<li>
<code>CONFIG_STMPE11_REGDEBUG</code>:
<code>CONFIG_STMPE811_REGDEBUG</code>:
Enabled very low register-level debug output. Requires <code>CONFIG_DEBUG</code>.
</li>
<li>
<code>CONFIG_STMPE11_THRESHX</code> and <code>CONFIG_STMPE11_THRESHY</code>:
STMPE11 touchscreen data comes in a a very high rate. New touch positions
<code>CONFIG_STMPE811_THRESHX</code> and <code>CONFIG_STMPE811_THRESHY</code>:
STMPE811 touchscreen data comes in a a very high rate. New touch positions
will only be reported when the X or Y data changes by these thresholds.
This trades reduces data rate for some loss in dragging accuracy. The
STMPE11 is configure for 12-bit values so the raw ranges are 0-4095. So
STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
would correspond to one pixel. Default: 12
</li>
+2 -2
View File
@@ -2772,13 +2772,13 @@ upon many of the changes in this NuttX release.
New features and extended functionality:
* Drivers. Added a watchdog timer driver infrastructure. Add general
support for STMicro STMPE11 I/O Expander/touchscreen device.
support for STMicro STMPE811 I/O Expander/touchscreen device.
* STM32. Add support for the STM32 IWDG and WWDG watchodog timers. DMA
now supports cicular buffer mode; serial driver now uses circular
DMA to improve Rx performance (Contributed by Mike Smith).
* STM3240G-EVAL Board. Add support for the LCD and for the STMPE11
* STM3240G-EVAL Board. Add support for the LCD and for the STMPE811
I/O Expander as a touchscreen controller.
* PIC32 Boards. Board support for the Mikroelektronika PIC32MX7
+19 -19
View File
@@ -784,41 +784,41 @@ defconfig -- This is a configuration file similar to the Linux
there are multiple TSC2007 touchscreens, this setting will enable
multiple touchscreens with the same driver.
CONFIG_INPUT_STMPE11
Enables support for the STMPE11 driver (Needs CONFIG_INPUT)
CONFIG_STMPE11_SPI
CONFIG_INPUT_STMPE811
Enables support for the STMPE811 driver (Needs CONFIG_INPUT)
CONFIG_STMPE811_SPI
Enables support for the SPI interface (not currenly supported)
CONFIG_STMPE11_I2C
CONFIG_STMPE811_I2C
Enables support for the I2C interface
CONFIG_STMPE11_MULTIPLE
Can be defined to support multiple STMPE11 devices on board.
CONFIG_STMPE11_ACTIVELOW
CONFIG_STMPE811_MULTIPLE
Can be defined to support multiple STMPE811 devices on board.
CONFIG_STMPE811_ACTIVELOW
Interrupt is generated by an active low signal (or falling edge).
CONFIG_STMPE11_EDGE
CONFIG_STMPE811_EDGE
Interrupt is generated on an edge (vs. on the active level)
CONFIG_STMPE11_NPOLLWAITERS
CONFIG_STMPE811_NPOLLWAITERS
Maximum number of threads that can be waiting on poll() (ignored if
CONFIG_DISABLE_POLL is set).
CONFIG_STMPE11_TSC_DISABLE
CONFIG_STMPE811_TSC_DISABLE
Disable driver touchscreen functionality.
CONFIG_STMPE11_ADC_DISABLE
CONFIG_STMPE811_ADC_DISABLE
Disable driver ADC functionality.
CONFIG_STMPE11_GPIO_DISABLE
CONFIG_STMPE811_GPIO_DISABLE
Disable driver GPIO functionlaity.
CONFIG_STMPE11_GPIOINT_DISABLE
CONFIG_STMPE811_GPIOINT_DISABLE
Disable driver GPIO interrupt functionality (ignored if GPIO
functionality is disabled).
CONFIG_STMPE11_SWAPXY
CONFIG_STMPE811_SWAPXY
Reverse the meaning of X and Y to handle different LCD orientations.
CONFIG_STMPE11_TEMP_DISABLE
CONFIG_STMPE811_TEMP_DISABLE
Disable driver temperature sensor functionality.
CONFIG_STMPE11_REGDEBUG
CONFIG_STMPE811_REGDEBUG
Enabled very low register-level debug output. Requires CONFIG_DEBUG.
CONFIG_STMPE11_THRESHX and CONFIG_STMPE11_THRESHY
STMPE11 touchscreen data comes in a a very high rate. New touch positions
CONFIG_STMPE811_THRESHX and CONFIG_STMPE811_THRESHY
STMPE811 touchscreen data comes in a a very high rate. New touch positions
will only be reported when the X or Y data changes by these thresholds.
This trades reduces data rate for some loss in dragging accuracy. The
STMPE11 is configure for 12-bit values so the raw ranges are 0-4095. So
STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
would correspond to one pixel. Default: 12
+3 -3
View File
@@ -386,10 +386,10 @@ There are 2 possible SRAM configurations:
I/O Expanders
=============
The STM3220G-EVAL has two STMPE11QTR I/O expanders on board both connected to
The STM3220G-EVAL has two STMPE811QTR I/O expanders on board both connected to
the STM32 via I2C1. They share a common interrupt line: PI2.
STMPE11 U24, I2C address 0x41 (7-bit)
STMPE811 U24, I2C address 0x41 (7-bit)
------ ---- ---------------- --------------------------------------------
STPE11 PIN BOARD SIGNAL BOARD CONNECTION
------ ---- ---------------- --------------------------------------------
@@ -402,7 +402,7 @@ STPE11 PIN BOARD SIGNAL BOARD CONNECTION
IN1 EXP_IO11
IN0 EXP_IO12
STMPE11 U29, I2C address 0x44 (7-bit)
STMPE811 U29, I2C address 0x44 (7-bit)
------ ---- ---------------- --------------------------------------------
STPE11 PIN BOARD SIGNAL BOARD CONNECTION
------ ---- ---------------- --------------------------------------------
+1 -1
View File
@@ -80,7 +80,7 @@ ifeq ($(CONFIG_WATCHDOG),y)
CONFIGURED_APPS += examples/watchdog
endif
ifeq ($(CONFIG_INPUT_STMPE11),y)
ifeq ($(CONFIG_INPUT_STMPE811),y)
CONFIGURED_APPS += examples/touchscreen
endif
+36 -36
View File
@@ -944,66 +944,66 @@ CONFIG_INPUT=n
CONFIG_INPUT_TSC2007=n
#
# STMPE11 input device configuration
# STMPE811 input device configuration
#
# Prerequisites: CONFIG_INPUT=y
# Other settings that effect the driver: CONFIG_DISABLE_POLL
#
# CONFIG_INPUT_STMPE11
# Enables support for the STMPE11 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE11_SPI
# CONFIG_INPUT_STMPE811
# Enables support for the STMPE811 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE811_SPI
# Enables support for the SPI interface (not currenly supported)
# CONFIG_STMPE11_I2C
# CONFIG_STMPE811_I2C
# Enables support for the I2C interface
# CONFIG_STMPE11_MULTIPLE
# Can be defined to support multiple STMPE11 devices on board.
# CONFIG_STMPE11_ACTIVELOW
# CONFIG_STMPE811_MULTIPLE
# Can be defined to support multiple STMPE811 devices on board.
# CONFIG_STMPE811_ACTIVELOW
# Interrupt is generated by an active low signal (or falling edge).
# CONFIG_STMPE11_EDGE
# CONFIG_STMPE811_EDGE
# Interrupt is generated on an edge (vs. on the active level)
# CONFIG_STMPE11_NPOLLWAITERS
# CONFIG_STMPE811_NPOLLWAITERS
# Maximum number of threads that can be waiting on poll() (ignored if
# CONFIG_DISABLE_POLL is set).
# CONFIG_STMPE11_TSC_DISABLE
# CONFIG_STMPE811_TSC_DISABLE
# Disable driver touchscreen functionality.
# CONFIG_STMPE11_ADC_DISABLE
# CONFIG_STMPE811_ADC_DISABLE
# Disable driver ADC functionality.
# CONFIG_STMPE11_GPIO_DISABLE
# CONFIG_STMPE811_GPIO_DISABLE
# Disable driver GPIO functionality.
# CONFIG_STMPE11_GPIOINT_DISABLE
# CONFIG_STMPE811_GPIOINT_DISABLE
# Disable driver GPIO interrupt functionality (ignored if GPIO functionality is
# disabled).
# CONFIG_STMPE11_SWAPXY
# CONFIG_STMPE811_SWAPXY
# Reverse the meaning of X and Y to handle different LCD orientations.
# For the STM3220G-EVAL, X and Y should be swapped in PORTRAIT modes
# CONFIG_STMPE11_TEMP_DISABLE
# CONFIG_STMPE811_TEMP_DISABLE
# Disable driver temperature sensor functionality.
# CONFIG_STMPE11_REGDBUG
# CONFIG_STMPE811_REGDBUG
# Enabled very low register-level debug output. Requires CONFIG_DEBUG.
# CONFIG_STMPE11_THRESHX and CONFIG_STMPE11_THRESHY
# STMPE11 touchscreen data comes in a a very high rate. New touch positions
# CONFIG_STMPE811_THRESHX and CONFIG_STMPE811_THRESHY
# STMPE811 touchscreen data comes in a a very high rate. New touch positions
# will only be reported when the X or Y data changes by these thresholds.
# This trades reduces data rate for some loss in dragging accuracy. The
# STMPE11 is configure for 12-bit values so the raw ranges are 0-4095. So
# STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
# for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
# would correspond to one pixel. Default: 12
#
CONFIG_INPUT_STMPE11=n
CONFIG_STMPE11_SPI=n
CONFIG_STMPE11_I2C=y
CONFIG_STMPE11_MULTIPLE=y
CONFIG_STMPE11_ACTIVELOW=y
CONFIG_STMPE11_EDGE=y
#CONFIG_STMPE11_NPOLLWAITERS
CONFIG_STMPE11_TSC_DISABLE=n
CONFIG_STMPE11_ADC_DISABLE=y
CONFIG_STMPE11_GPIO_DISABLE=y
CONFIG_STMPE11_GPIOINT_DISABLE=y
CONFIG_STMPE11_SWAPXY=y
CONFIG_STMPE11_TEMP_DISABLE=y
CONFIG_STMPE11_REGDEBUG=n
CONFIG_STMPE11_THRESHX=26
CONFIG_STMPE11_THRESHY=34
CONFIG_INPUT_STMPE811=n
CONFIG_STMPE811_SPI=n
CONFIG_STMPE811_I2C=y
CONFIG_STMPE811_MULTIPLE=y
CONFIG_STMPE811_ACTIVELOW=y
CONFIG_STMPE811_EDGE=y
#CONFIG_STMPE811_NPOLLWAITERS
CONFIG_STMPE811_TSC_DISABLE=n
CONFIG_STMPE811_ADC_DISABLE=y
CONFIG_STMPE811_GPIO_DISABLE=y
CONFIG_STMPE811_GPIOINT_DISABLE=y
CONFIG_STMPE811_SWAPXY=y
CONFIG_STMPE811_TEMP_DISABLE=y
CONFIG_STMPE811_REGDEBUG=n
CONFIG_STMPE811_THRESHX=26
CONFIG_STMPE811_THRESHY=34
#
# USB Device Configuration
+36 -36
View File
@@ -945,66 +945,66 @@ CONFIG_INPUT=y
CONFIG_INPUT_TSC2007=n
#
# STMPE11 input device configuration
# STMPE811 input device configuration
#
# Prerequisites: CONFIG_INPUT=y
# Other settings that effect the driver: CONFIG_DISABLE_POLL
#
# CONFIG_INPUT_STMPE11
# Enables support for the STMPE11 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE11_SPI
# CONFIG_INPUT_STMPE811
# Enables support for the STMPE811 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE811_SPI
# Enables support for the SPI interface (not currenly supported)
# CONFIG_STMPE11_I2C
# CONFIG_STMPE811_I2C
# Enables support for the I2C interface
# CONFIG_STMPE11_MULTIPLE
# Can be defined to support multiple STMPE11 devices on board.
# CONFIG_STMPE11_ACTIVELOW
# CONFIG_STMPE811_MULTIPLE
# Can be defined to support multiple STMPE811 devices on board.
# CONFIG_STMPE811_ACTIVELOW
# Interrupt is generated by an active low signal (or falling edge).
# CONFIG_STMPE11_EDGE
# CONFIG_STMPE811_EDGE
# Interrupt is generated on an edge (vs. on the active level)
# CONFIG_STMPE11_NPOLLWAITERS
# CONFIG_STMPE811_NPOLLWAITERS
# Maximum number of threads that can be waiting on poll() (ignored if
# CONFIG_DISABLE_POLL is set).
# CONFIG_STMPE11_TSC_DISABLE
# CONFIG_STMPE811_TSC_DISABLE
# Disable driver touchscreen functionality.
# CONFIG_STMPE11_ADC_DISABLE
# CONFIG_STMPE811_ADC_DISABLE
# Disable driver ADC functionality.
# CONFIG_STMPE11_GPIO_DISABLE
# CONFIG_STMPE811_GPIO_DISABLE
# Disable driver GPIO functionality.
# CONFIG_STMPE11_GPIOINT_DISABLE
# CONFIG_STMPE811_GPIOINT_DISABLE
# Disable driver GPIO interrupt functionality (ignored if GPIO functionality is
# disabled).
# CONFIG_STMPE11_SWAPXY
# CONFIG_STMPE811_SWAPXY
# Reverse the meaning of X and Y to handle different LCD orientations.
# For the STM3220G-EVAL, X and Y should be swapped in PORTRAIT modes
# CONFIG_STMPE11_TEMP_DISABLE
# CONFIG_STMPE811_TEMP_DISABLE
# Disable driver temperature sensor functionality.
# CONFIG_STMPE11_REGDBUG
# CONFIG_STMPE811_REGDBUG
# Enabled very low register-level debug output. Requires CONFIG_DEBUG.
# CONFIG_STMPE11_THRESHX and CONFIG_STMPE11_THRESHY
# STMPE11 touchscreen data comes in a a very high rate. New touch positions
# CONFIG_STMPE811_THRESHX and CONFIG_STMPE811_THRESHY
# STMPE811 touchscreen data comes in a a very high rate. New touch positions
# will only be reported when the X or Y data changes by these thresholds.
# This trades reduces data rate for some loss in dragging accuracy. The
# STMPE11 is configure for 12-bit values so the raw ranges are 0-4095. So
# STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
# for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
# would correspond to one pixel. Default: 12
#
CONFIG_INPUT_STMPE11=y
CONFIG_STMPE11_SPI=n
CONFIG_STMPE11_I2C=y
CONFIG_STMPE11_MULTIPLE=y
CONFIG_STMPE11_ACTIVELOW=y
CONFIG_STMPE11_EDGE=y
#CONFIG_STMPE11_NPOLLWAITERS
CONFIG_STMPE11_TSC_DISABLE=n
CONFIG_STMPE11_ADC_DISABLE=y
CONFIG_STMPE11_GPIO_DISABLE=y
CONFIG_STMPE11_GPIOINT_DISABLE=y
CONFIG_STMPE11_SWAPXY=n
CONFIG_STMPE11_TEMP_DISABLE=y
CONFIG_STMPE11_REGDEBUG=n
CONFIG_STMPE11_THRESHX=39
CONFIG_STMPE11_THRESHY=51
CONFIG_INPUT_STMPE811=y
CONFIG_STMPE811_SPI=n
CONFIG_STMPE811_I2C=y
CONFIG_STMPE811_MULTIPLE=y
CONFIG_STMPE811_ACTIVELOW=y
CONFIG_STMPE811_EDGE=y
#CONFIG_STMPE811_NPOLLWAITERS
CONFIG_STMPE811_TSC_DISABLE=n
CONFIG_STMPE811_ADC_DISABLE=y
CONFIG_STMPE811_GPIO_DISABLE=y
CONFIG_STMPE811_GPIOINT_DISABLE=y
CONFIG_STMPE811_SWAPXY=n
CONFIG_STMPE811_TEMP_DISABLE=y
CONFIG_STMPE811_REGDEBUG=n
CONFIG_STMPE811_THRESHX=39
CONFIG_STMPE811_THRESHY=51
#
# USB Device Configuration
+2 -2
View File
@@ -84,8 +84,8 @@ ifeq ($(CONFIG_WATCHDOG),y)
CSRCS += up_watchdog.c
endif
ifeq ($(CONFIG_INPUT_STMPE11),y)
CSRCS += up_stmpe11.c
ifeq ($(CONFIG_INPUT_STMPE811),y)
CSRCS += up_stmpe811.c
endif
COBJS = $(CSRCS:.c=$(OBJEXT))
@@ -138,10 +138,10 @@
#define GPIO_OTGFS_PWRON (GPIO_OUTPUT|GPIO_FLOAT|GPIO_SPEED_100MHz|GPIO_PUSHPULL|GPIO_PORTH|GPIO_PIN5)
#define GPIO_OTGFS_OVER (GPIO_INPUT|GPIO_FLOAT|GPIO_SPEED_100MHz|GPIO_PUSHPULL|GPIO_PORTF|GPIO_PIN11)
/* The STM3220G-EVAL has two STMPE11QTR I/O expanders on board both connected
/* The STM3220G-EVAL has two STMPE811QTR I/O expanders on board both connected
* to the STM32 via I2C1. They share a common interrupt line: PI2.
*
* STMPE11 U24, I2C address 0x41 (7-bit)
* STMPE811 U24, I2C address 0x41 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -154,7 +154,7 @@
* IN1 EXP_IO11
* IN0 EXP_IO12
*
* STMPE11 U29, I2C address 0x44 (7-bit)
* STMPE811 U29, I2C address 0x44 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -168,8 +168,8 @@
* IN0 EXP_IO8
*/
#define STMPE11_ADDR1 0x41
#define STMPE11_ADDR2 0x44
#define STMPE811_ADDR1 0x41
#define STMPE811_ADDR2 0x44
#define GPIO_IO_EXPANDER (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTI|GPIO_PIN2)
@@ -47,7 +47,7 @@
#include <nuttx/i2c.h>
#include <nuttx/input/touchscreen.h>
#include <nuttx/input/stmpe11.h>
#include <nuttx/input/stmpe811.h>
#include <arch/irq.h>
@@ -59,44 +59,44 @@
****************************************************************************/
/* Configuration ************************************************************/
#ifdef CONFIG_INPUT_STMPE11
#ifdef CONFIG_INPUT_STMPE811
#ifndef CONFIG_INPUT
# error "STMPE11 support requires CONFIG_INPUT"
# error "STMPE811 support requires CONFIG_INPUT"
#endif
#ifndef CONFIG_STM32_I2C1
# error "STMPE11 support requires CONFIG_STM32_I2C1"
# error "STMPE811 support requires CONFIG_STM32_I2C1"
#endif
#ifndef CONFIG_STMPE11_I2C
# error "Only the STMPE11 I2C interface is supported"
#ifndef CONFIG_STMPE811_I2C
# error "Only the STMPE811 I2C interface is supported"
#endif
#ifdef CONFIG_STMPE11_SPI
# error "Only the STMPE11 SPI interface is supported"
#ifdef CONFIG_STMPE811_SPI
# error "Only the STMPE811 SPI interface is supported"
#endif
#ifndef CONFIG_STMPE11_FREQUENCY
# define CONFIG_STMPE11_FREQUENCY 100000
#ifndef CONFIG_STMPE811_FREQUENCY
# define CONFIG_STMPE811_FREQUENCY 100000
#endif
#ifndef CONFIG_STMPE11_I2CDEV
# define CONFIG_STMPE11_I2CDEV 1
#ifndef CONFIG_STMPE811_I2CDEV
# define CONFIG_STMPE811_I2CDEV 1
#endif
#if CONFIG_STMPE11_I2CDEV != 1
# error "CONFIG_STMPE11_I2CDEV must be one"
#if CONFIG_STMPE811_I2CDEV != 1
# error "CONFIG_STMPE811_I2CDEV must be one"
#endif
#ifndef CONFIG_STMPE11_DEVMINOR
# define CONFIG_STMPE11_DEVMINOR 0
#ifndef CONFIG_STMPE811_DEVMINOR
# define CONFIG_STMPE811_DEVMINOR 0
#endif
/* Board definitions ********************************************************/
/* The STM3220G-EVAL has two STMPE11QTR I/O expanders on board both connected
/* The STM3220G-EVAL has two STMPE811QTR I/O expanders on board both connected
* to the STM32 via I2C1. They share a common interrupt line: PI2.
*
* STMPE11 U24, I2C address 0x41 (7-bit)
* STMPE811 U24, I2C address 0x41 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -109,7 +109,7 @@
* IN1 EXP_IO11
* IN0 EXP_IO12
*
* STMPE11 U29, I2C address 0x44 (7-bit)
* STMPE811 U29, I2C address 0x44 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -127,16 +127,16 @@
* Private Types
****************************************************************************/
struct stm32_stmpe11config_s
struct stm32_stmpe811config_s
{
/* Configuration structure as seen by the STMPE11 driver */
/* Configuration structure as seen by the STMPE811 driver */
struct stmpe11_config_s config;
struct stmpe811_config_s config;
/* Additional private definitions only known to this driver */
STMPE11_HANDLE handle; /* The STMPE11 driver handle */
xcpt_t handler; /* The STMPE11 interrupt handler */
STMPE811_HANDLE handle; /* The STMPE811 driver handle */
xcpt_t handler; /* The STMPE811 interrupt handler */
};
/****************************************************************************
@@ -144,25 +144,25 @@ struct stm32_stmpe11config_s
****************************************************************************/
/* IRQ/GPIO access callbacks. These operations all hidden behind callbacks
* to isolate the STMPE11 driver from differences in GPIO
* to isolate the STMPE811 driver from differences in GPIO
* interrupt handling by varying boards and MCUs.* so that contact and loss-of-contact events can be detected.
*
* attach - Attach the STMPE11 interrupt handler to the GPIO interrupt
* attach - Attach the STMPE811 interrupt handler to the GPIO interrupt
* enable - Enable or disable the GPIO interrupt
* clear - Acknowledge/clear any pending GPIO interrupt
*/
static int stmpe11_attach(FAR struct stmpe11_config_s *state, xcpt_t isr);
static void stmpe11_enable(FAR struct stmpe11_config_s *state, bool enable);
static void stmpe11_clear(FAR struct stmpe11_config_s *state);
static int stmpe811_attach(FAR struct stmpe811_config_s *state, xcpt_t isr);
static void stmpe811_enable(FAR struct stmpe811_config_s *state, bool enable);
static void stmpe811_clear(FAR struct stmpe811_config_s *state);
/****************************************************************************
* Private Data
****************************************************************************/
/* A reference to a structure of this type must be passed to the STMPE11
/* A reference to a structure of this type must be passed to the STMPE811
* driver. This structure provides information about the configuration
* of the STMPE11 and provides some board-specific hooks.
* of the STMPE811 and provides some board-specific hooks.
*
* Memory for this structure is provided by the caller. It is not copied
* by the driver and is presumed to persist while the driver is active. The
@@ -170,25 +170,25 @@ static void stmpe11_clear(FAR struct stmpe11_config_s *state);
* may modify frequency or X plate resistance values.
*/
#ifndef CONFIG_STMPE11_TSC_DISABLE
static struct stm32_stmpe11config_s g_stmpe11config =
#ifndef CONFIG_STMPE811_TSC_DISABLE
static struct stm32_stmpe811config_s g_stmpe811config =
{
.config =
{
#ifdef CONFIG_STMPE11_I2C
.address = STMPE11_ADDR1,
#ifdef CONFIG_STMPE811_I2C
.address = STMPE811_ADDR1,
#endif
.frequency = CONFIG_STMPE11_FREQUENCY,
.frequency = CONFIG_STMPE811_FREQUENCY,
#ifdef CONFIG_STMPE11_MULTIPLE
#ifdef CONFIG_STMPE811_MULTIPLE
.irq = STM32_IRQ_EXTI2,
#endif
.ctrl1 = (ADC_CTRL1_SAMPLE_TIME_80 | ADC_CTRL1_MOD_12B),
.ctrl2 = ADC_CTRL2_ADC_FREQ_3p25,
.attach = stmpe11_attach,
.enable = stmpe11_enable,
.clear = stmpe11_clear,
.attach = stmpe811_attach,
.enable = stmpe811_enable,
.clear = stmpe811_clear,
},
.handler = NULL,
};
@@ -199,17 +199,17 @@ static struct stm32_stmpe11config_s g_stmpe11config =
****************************************************************************/
/* IRQ/GPIO access callbacks. These operations all hidden behind
* callbacks to isolate the STMPE11 driver from differences in GPIO
* callbacks to isolate the STMPE811 driver from differences in GPIO
* interrupt handling by varying boards and MCUs.
*
* attach - Attach the STMPE11 interrupt handler to the GPIO interrupt
* attach - Attach the STMPE811 interrupt handler to the GPIO interrupt
* enable - Enable or disable the GPIO interrupt
* clear - Acknowledge/clear any pending GPIO interrupt
*/
static int stmpe11_attach(FAR struct stmpe11_config_s *state, xcpt_t isr)
static int stmpe811_attach(FAR struct stmpe811_config_s *state, xcpt_t isr)
{
FAR struct stm32_stmpe11config_s *priv = (FAR struct stm32_stmpe11config_s *)state;
FAR struct stm32_stmpe811config_s *priv = (FAR struct stm32_stmpe811config_s *)state;
ivdbg("Saving handler %p\n", isr);
DEBUGASSERT(priv);
@@ -220,9 +220,9 @@ static int stmpe11_attach(FAR struct stmpe11_config_s *state, xcpt_t isr)
return OK;
}
static void stmpe11_enable(FAR struct stmpe11_config_s *state, bool enable)
static void stmpe811_enable(FAR struct stmpe811_config_s *state, bool enable)
{
FAR struct stm32_stmpe11config_s *priv = (FAR struct stm32_stmpe11config_s *)state;
FAR struct stm32_stmpe811config_s *priv = (FAR struct stm32_stmpe811config_s *)state;
irqstate_t flags;
/* Attach and enable, or detach and disable. Enabling and disabling GPIO
@@ -246,7 +246,7 @@ static void stmpe11_enable(FAR struct stmpe11_config_s *state, bool enable)
irqrestore(flags);
}
static void stmpe11_clear(FAR struct stmpe11_config_s *state)
static void stmpe811_clear(FAR struct stmpe811_config_s *state)
{
/* Does nothing */
}
@@ -275,7 +275,7 @@ static void stmpe11_clear(FAR struct stmpe11_config_s *state)
int arch_tcinitialize(int minor)
{
#ifndef CONFIG_STMPE11_TSC_DISABLE
#ifndef CONFIG_STMPE811_TSC_DISABLE
FAR struct i2c_dev_s *dev;
int ret;
@@ -284,36 +284,36 @@ int arch_tcinitialize(int minor)
/* Check if we are already initialized */
if (!g_stmpe11config.handle)
if (!g_stmpe811config.handle)
{
ivdbg("Initializing\n");
/* Configure the STMPE11 interrupt pin as an input */
/* Configure the STMPE811 interrupt pin as an input */
(void)stm32_configgpio(GPIO_IO_EXPANDER);
/* Get an instance of the I2C interface */
dev = up_i2cinitialize(CONFIG_STMPE11_I2CDEV);
dev = up_i2cinitialize(CONFIG_STMPE811_I2CDEV);
if (!dev)
{
idbg("Failed to initialize I2C bus %d\n", CONFIG_STMPE11_I2CDEV);
idbg("Failed to initialize I2C bus %d\n", CONFIG_STMPE811_I2CDEV);
return -ENODEV;
}
/* Instantiate the STMPE11 driver */
/* Instantiate the STMPE811 driver */
g_stmpe11config.handle =
stmpe11_instantiate(dev, (FAR struct stmpe11_config_s *)&g_stmpe11config);
if (!g_stmpe11config.handle)
g_stmpe811config.handle =
stmpe811_instantiate(dev, (FAR struct stmpe811_config_s *)&g_stmpe811config);
if (!g_stmpe811config.handle)
{
idbg("Failed to instantiate the STMPE11 driver\n");
idbg("Failed to instantiate the STMPE811 driver\n");
return -ENODEV;
}
/* Initialize and register the I2C touchscreen device */
ret = stmpe11_register(g_stmpe11config.handle, CONFIG_STMPE11_DEVMINOR);
ret = stmpe811_register(g_stmpe811config.handle, CONFIG_STMPE811_DEVMINOR);
if (ret < 0)
{
idbg("Failed to register STMPE driver: %d\n", ret);
@@ -346,8 +346,8 @@ int arch_tcinitialize(int minor)
void arch_tcuninitialize(void)
{
/* No support for un-initializing the touchscreen STMPE11 device yet */
/* No support for un-initializing the touchscreen STMPE811 device yet */
}
#endif /* CONFIG_INPUT_STMPE11 */
#endif /* CONFIG_INPUT_STMPE811 */
+3 -3
View File
@@ -500,10 +500,10 @@ There are 4 possible SRAM configurations:
I/O Expanders
=============
The STM3240G-EVAL has two STMPE11QTR I/O expanders on board both connected to
The STM3240G-EVAL has two STMPE811QTR I/O expanders on board both connected to
the STM32 via I2C1. They share a common interrupt line: PI2.
STMPE11 U24, I2C address 0x41 (7-bit)
STMPE811 U24, I2C address 0x41 (7-bit)
------ ---- ---------------- --------------------------------------------
STPE11 PIN BOARD SIGNAL BOARD CONNECTION
------ ---- ---------------- --------------------------------------------
@@ -516,7 +516,7 @@ STPE11 PIN BOARD SIGNAL BOARD CONNECTION
IN1 EXP_IO11
IN0 EXP_IO12
STMPE11 U29, I2C address 0x44 (7-bit)
STMPE811 U29, I2C address 0x44 (7-bit)
------ ---- ---------------- --------------------------------------------
STPE11 PIN BOARD SIGNAL BOARD CONNECTION
------ ---- ---------------- --------------------------------------------
+1 -1
View File
@@ -80,7 +80,7 @@ ifeq ($(CONFIG_WATCHDOG),y)
CONFIGURED_APPS += examples/watchdog
endif
ifeq ($(CONFIG_INPUT_STMPE11),y)
ifeq ($(CONFIG_INPUT_STMPE811),y)
CONFIGURED_APPS += examples/touchscreen
endif
+36 -36
View File
@@ -954,66 +954,66 @@ CONFIG_INPUT=n
CONFIG_INPUT_TSC2007=n
#
# STMPE11 input device configuration
# STMPE811 input device configuration
#
# Prerequisites: CONFIG_INPUT=y
# Other settings that effect the driver: CONFIG_DISABLE_POLL
#
# CONFIG_INPUT_STMPE11
# Enables support for the STMPE11 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE11_SPI
# CONFIG_INPUT_STMPE811
# Enables support for the STMPE811 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE811_SPI
# Enables support for the SPI interface (not currenly supported)
# CONFIG_STMPE11_I2C
# CONFIG_STMPE811_I2C
# Enables support for the I2C interface
# CONFIG_STMPE11_MULTIPLE
# Can be defined to support multiple STMPE11 devices on board.
# CONFIG_STMPE11_ACTIVELOW
# CONFIG_STMPE811_MULTIPLE
# Can be defined to support multiple STMPE811 devices on board.
# CONFIG_STMPE811_ACTIVELOW
# Interrupt is generated by an active low signal (or falling edge).
# CONFIG_STMPE11_EDGE
# CONFIG_STMPE811_EDGE
# Interrupt is generated on an edge (vs. on the active level)
# CONFIG_STMPE11_NPOLLWAITERS
# CONFIG_STMPE811_NPOLLWAITERS
# Maximum number of threads that can be waiting on poll() (ignored if
# CONFIG_DISABLE_POLL is set).
# CONFIG_STMPE11_TSC_DISABLE
# CONFIG_STMPE811_TSC_DISABLE
# Disable driver touchscreen functionality.
# CONFIG_STMPE11_ADC_DISABLE
# CONFIG_STMPE811_ADC_DISABLE
# Disable driver ADC functionality.
# CONFIG_STMPE11_GPIO_DISABLE
# CONFIG_STMPE811_GPIO_DISABLE
# Disable driver GPIO functionality.
# CONFIG_STMPE11_GPIOINT_DISABLE
# CONFIG_STMPE811_GPIOINT_DISABLE
# Disable driver GPIO interrupt functionality (ignored if GPIO functionality is
# disabled).
# CONFIG_STMPE11_SWAPXY
# CONFIG_STMPE811_SWAPXY
# Reverse the meaning of X and Y to handle different LCD orientations.
# For the STM3240G-EVAL, X and Y should be swapped in PORTRAIT modes
# CONFIG_STMPE11_TEMP_DISABLE
# CONFIG_STMPE811_TEMP_DISABLE
# Disable driver temperature sensor functionality.
# CONFIG_STMPE11_REGDBUG
# CONFIG_STMPE811_REGDBUG
# Enabled very low register-level debug output. Requires CONFIG_DEBUG.
# CONFIG_STMPE11_THRESHX and CONFIG_STMPE11_THRESHY
# STMPE11 touchscreen data comes in a a very high rate. New touch positions
# CONFIG_STMPE811_THRESHX and CONFIG_STMPE811_THRESHY
# STMPE811 touchscreen data comes in a a very high rate. New touch positions
# will only be reported when the X or Y data changes by these thresholds.
# This trades reduces data rate for some loss in dragging accuracy. The
# STMPE11 is configure for 12-bit values so the raw ranges are 0-4095. So
# STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
# for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
# would correspond to one pixel. Default: 12
#
CONFIG_INPUT_STMPE11=n
CONFIG_STMPE11_SPI=n
CONFIG_STMPE11_I2C=y
CONFIG_STMPE11_MULTIPLE=y
CONFIG_STMPE11_ACTIVELOW=y
CONFIG_STMPE11_EDGE=y
#CONFIG_STMPE11_NPOLLWAITERS
CONFIG_STMPE11_TSC_DISABLE=n
CONFIG_STMPE11_ADC_DISABLE=y
CONFIG_STMPE11_GPIO_DISABLE=y
CONFIG_STMPE11_GPIOINT_DISABLE=y
CONFIG_STMPE11_SWAPXY=y
CONFIG_STMPE11_TEMP_DISABLE=y
CONFIG_STMPE11_REGDEBUG=n
CONFIG_STMPE11_THRESHX=26
CONFIG_STMPE11_THRESHY=34
CONFIG_INPUT_STMPE811=n
CONFIG_STMPE811_SPI=n
CONFIG_STMPE811_I2C=y
CONFIG_STMPE811_MULTIPLE=y
CONFIG_STMPE811_ACTIVELOW=y
CONFIG_STMPE811_EDGE=y
#CONFIG_STMPE811_NPOLLWAITERS
CONFIG_STMPE811_TSC_DISABLE=n
CONFIG_STMPE811_ADC_DISABLE=y
CONFIG_STMPE811_GPIO_DISABLE=y
CONFIG_STMPE811_GPIOINT_DISABLE=y
CONFIG_STMPE811_SWAPXY=y
CONFIG_STMPE811_TEMP_DISABLE=y
CONFIG_STMPE811_REGDEBUG=n
CONFIG_STMPE811_THRESHX=26
CONFIG_STMPE811_THRESHY=34
#
# USB Device Configuration
+36 -36
View File
@@ -956,66 +956,66 @@ CONFIG_INPUT=y
CONFIG_INPUT_TSC2007=n
#
# STMPE11 input device configuration
# STMPE811 input device configuration
#
# Prerequisites: CONFIG_INPUT=y
# Other settings that effect the driver: CONFIG_DISABLE_POLL
#
# CONFIG_INPUT_STMPE11
# Enables support for the STMPE11 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE11_SPI
# CONFIG_INPUT_STMPE811
# Enables support for the STMPE811 driver (Needs CONFIG_INPUT)
# CONFIG_STMPE811_SPI
# Enables support for the SPI interface (not currenly supported)
# CONFIG_STMPE11_I2C
# CONFIG_STMPE811_I2C
# Enables support for the I2C interface
# CONFIG_STMPE11_MULTIPLE
# Can be defined to support multiple STMPE11 devices on board.
# CONFIG_STMPE11_ACTIVELOW
# CONFIG_STMPE811_MULTIPLE
# Can be defined to support multiple STMPE811 devices on board.
# CONFIG_STMPE811_ACTIVELOW
# Interrupt is generated by an active low signal (or falling edge).
# CONFIG_STMPE11_EDGE
# CONFIG_STMPE811_EDGE
# Interrupt is generated on an edge (vs. on the active level)
# CONFIG_STMPE11_NPOLLWAITERS
# CONFIG_STMPE811_NPOLLWAITERS
# Maximum number of threads that can be waiting on poll() (ignored if
# CONFIG_DISABLE_POLL is set).
# CONFIG_STMPE11_TSC_DISABLE
# CONFIG_STMPE811_TSC_DISABLE
# Disable driver touchscreen functionality.
# CONFIG_STMPE11_ADC_DISABLE
# CONFIG_STMPE811_ADC_DISABLE
# Disable driver ADC functionality.
# CONFIG_STMPE11_GPIO_DISABLE
# CONFIG_STMPE811_GPIO_DISABLE
# Disable driver GPIO functionality.
# CONFIG_STMPE11_GPIOINT_DISABLE
# CONFIG_STMPE811_GPIOINT_DISABLE
# Disable driver GPIO interrupt functionality (ignored if GPIO functionality is
# disabled).
# CONFIG_STMPE11_SWAPXY
# CONFIG_STMPE811_SWAPXY
# Reverse the meaning of X and Y to handle different LCD orientations.
# For the STM3240G-EVAL, X and Y should be swapped in PORTRAIT modes
# CONFIG_STMPE11_TEMP_DISABLE
# CONFIG_STMPE811_TEMP_DISABLE
# Disable driver temperature sensor functionality.
# CONFIG_STMPE11_REGDBUG
# CONFIG_STMPE811_REGDBUG
# Enabled very low register-level debug output. Requires CONFIG_DEBUG.
# CONFIG_STMPE11_THRESHX and CONFIG_STMPE11_THRESHY
# STMPE11 touchscreen data comes in a a very high rate. New touch positions
# CONFIG_STMPE811_THRESHX and CONFIG_STMPE811_THRESHY
# STMPE811 touchscreen data comes in a a very high rate. New touch positions
# will only be reported when the X or Y data changes by these thresholds.
# This trades reduces data rate for some loss in dragging accuracy. The
# STMPE11 is configure for 12-bit values so the raw ranges are 0-4095. So
# STMPE811 is configure for 12-bit values so the raw ranges are 0-4095. So
# for example, if your display is 320x240, then THRESHX=13 and THRESHY=17
# would correspond to one pixel. Default: 12
#
CONFIG_INPUT_STMPE11=y
CONFIG_STMPE11_SPI=n
CONFIG_STMPE11_I2C=y
CONFIG_STMPE11_MULTIPLE=y
CONFIG_STMPE11_ACTIVELOW=y
CONFIG_STMPE11_EDGE=y
#CONFIG_STMPE11_NPOLLWAITERS
CONFIG_STMPE11_TSC_DISABLE=n
CONFIG_STMPE11_ADC_DISABLE=y
CONFIG_STMPE11_GPIO_DISABLE=y
CONFIG_STMPE11_GPIOINT_DISABLE=y
CONFIG_STMPE11_SWAPXY=n
CONFIG_STMPE11_TEMP_DISABLE=y
CONFIG_STMPE11_REGDEBUG=n
CONFIG_STMPE11_THRESHX=39
CONFIG_STMPE11_THRESHY=51
CONFIG_INPUT_STMPE811=y
CONFIG_STMPE811_SPI=n
CONFIG_STMPE811_I2C=y
CONFIG_STMPE811_MULTIPLE=y
CONFIG_STMPE811_ACTIVELOW=y
CONFIG_STMPE811_EDGE=y
#CONFIG_STMPE811_NPOLLWAITERS
CONFIG_STMPE811_TSC_DISABLE=n
CONFIG_STMPE811_ADC_DISABLE=y
CONFIG_STMPE811_GPIO_DISABLE=y
CONFIG_STMPE811_GPIOINT_DISABLE=y
CONFIG_STMPE811_SWAPXY=n
CONFIG_STMPE811_TEMP_DISABLE=y
CONFIG_STMPE811_REGDEBUG=n
CONFIG_STMPE811_THRESHX=39
CONFIG_STMPE811_THRESHY=51
#
# USB Device Configuration
+2 -2
View File
@@ -88,8 +88,8 @@ ifeq ($(CONFIG_WATCHDOG),y)
CSRCS += up_watchdog.c
endif
ifeq ($(CONFIG_INPUT_STMPE11),y)
CSRCS += up_stmpe11.c
ifeq ($(CONFIG_INPUT_STMPE811),y)
CSRCS += up_stmpe811.c
endif
COBJS = $(CSRCS:.c=$(OBJEXT))
@@ -138,10 +138,10 @@
#define GPIO_OTGFS_PWRON (GPIO_OUTPUT|GPIO_FLOAT|GPIO_SPEED_100MHz|GPIO_PUSHPULL|GPIO_PORTH|GPIO_PIN5)
#define GPIO_OTGFS_OVER (GPIO_INPUT|GPIO_FLOAT|GPIO_SPEED_100MHz|GPIO_PUSHPULL|GPIO_PORTF|GPIO_PIN11)
/* The STM3240G-EVAL has two STMPE11QTR I/O expanders on board both connected
/* The STM3240G-EVAL has two STMPE811QTR I/O expanders on board both connected
* to the STM32 via I2C1. They share a common interrupt line: PI2.
*
* STMPE11 U24, I2C address 0x41 (7-bit)
* STMPE811 U24, I2C address 0x41 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -154,7 +154,7 @@
* IN1 EXP_IO11
* IN0 EXP_IO12
*
* STMPE11 U29, I2C address 0x44 (7-bit)
* STMPE811 U29, I2C address 0x44 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -168,8 +168,8 @@
* IN0 EXP_IO8
*/
#define STMPE11_ADDR1 0x41
#define STMPE11_ADDR2 0x44
#define STMPE811_ADDR1 0x41
#define STMPE811_ADDR2 0x44
#define GPIO_IO_EXPANDER (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTI|GPIO_PIN2)
@@ -47,7 +47,7 @@
#include <nuttx/i2c.h>
#include <nuttx/input/touchscreen.h>
#include <nuttx/input/stmpe11.h>
#include <nuttx/input/stmpe811.h>
#include <arch/irq.h>
@@ -59,44 +59,44 @@
****************************************************************************/
/* Configuration ************************************************************/
#ifdef CONFIG_INPUT_STMPE11
#ifdef CONFIG_INPUT_STMPE811
#ifndef CONFIG_INPUT
# error "STMPE11 support requires CONFIG_INPUT"
# error "STMPE811 support requires CONFIG_INPUT"
#endif
#ifndef CONFIG_STM32_I2C1
# error "STMPE11 support requires CONFIG_STM32_I2C1"
# error "STMPE811 support requires CONFIG_STM32_I2C1"
#endif
#ifndef CONFIG_STMPE11_I2C
# error "Only the STMPE11 I2C interface is supported"
#ifndef CONFIG_STMPE811_I2C
# error "Only the STMPE811 I2C interface is supported"
#endif
#ifdef CONFIG_STMPE11_SPI
# error "Only the STMPE11 SPI interface is supported"
#ifdef CONFIG_STMPE811_SPI
# error "Only the STMPE811 SPI interface is supported"
#endif
#ifndef CONFIG_STMPE11_FREQUENCY
# define CONFIG_STMPE11_FREQUENCY 100000
#ifndef CONFIG_STMPE811_FREQUENCY
# define CONFIG_STMPE811_FREQUENCY 100000
#endif
#ifndef CONFIG_STMPE11_I2CDEV
# define CONFIG_STMPE11_I2CDEV 1
#ifndef CONFIG_STMPE811_I2CDEV
# define CONFIG_STMPE811_I2CDEV 1
#endif
#if CONFIG_STMPE11_I2CDEV != 1
# error "CONFIG_STMPE11_I2CDEV must be one"
#if CONFIG_STMPE811_I2CDEV != 1
# error "CONFIG_STMPE811_I2CDEV must be one"
#endif
#ifndef CONFIG_STMPE11_DEVMINOR
# define CONFIG_STMPE11_DEVMINOR 0
#ifndef CONFIG_STMPE811_DEVMINOR
# define CONFIG_STMPE811_DEVMINOR 0
#endif
/* Board definitions ********************************************************/
/* The STM3240G-EVAL has two STMPE11QTR I/O expanders on board both connected
/* The STM3240G-EVAL has two STMPE811QTR I/O expanders on board both connected
* to the STM32 via I2C1. They share a common interrupt line: PI2.
*
* STMPE11 U24, I2C address 0x41 (7-bit)
* STMPE811 U24, I2C address 0x41 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -109,7 +109,7 @@
* IN1 EXP_IO11
* IN0 EXP_IO12
*
* STMPE11 U29, I2C address 0x44 (7-bit)
* STMPE811 U29, I2C address 0x44 (7-bit)
* ------ ---- ---------------- --------------------------------------------
* STPE11 PIN BOARD SIGNAL BOARD CONNECTION
* ------ ---- ---------------- --------------------------------------------
@@ -127,16 +127,16 @@
* Private Types
****************************************************************************/
struct stm32_stmpe11config_s
struct stm32_stmpe811config_s
{
/* Configuration structure as seen by the STMPE11 driver */
/* Configuration structure as seen by the STMPE811 driver */
struct stmpe11_config_s config;
struct stmpe811_config_s config;
/* Additional private definitions only known to this driver */
STMPE11_HANDLE handle; /* The STMPE11 driver handle */
xcpt_t handler; /* The STMPE11 interrupt handler */
STMPE811_HANDLE handle; /* The STMPE811 driver handle */
xcpt_t handler; /* The STMPE811 interrupt handler */
};
/****************************************************************************
@@ -144,25 +144,25 @@ struct stm32_stmpe11config_s
****************************************************************************/
/* IRQ/GPIO access callbacks. These operations all hidden behind callbacks
* to isolate the STMPE11 driver from differences in GPIO
* to isolate the STMPE811 driver from differences in GPIO
* interrupt handling by varying boards and MCUs.* so that contact and loss-of-contact events can be detected.
*
* attach - Attach the STMPE11 interrupt handler to the GPIO interrupt
* attach - Attach the STMPE811 interrupt handler to the GPIO interrupt
* enable - Enable or disable the GPIO interrupt
* clear - Acknowledge/clear any pending GPIO interrupt
*/
static int stmpe11_attach(FAR struct stmpe11_config_s *state, xcpt_t isr);
static void stmpe11_enable(FAR struct stmpe11_config_s *state, bool enable);
static void stmpe11_clear(FAR struct stmpe11_config_s *state);
static int stmpe811_attach(FAR struct stmpe811_config_s *state, xcpt_t isr);
static void stmpe811_enable(FAR struct stmpe811_config_s *state, bool enable);
static void stmpe811_clear(FAR struct stmpe811_config_s *state);
/****************************************************************************
* Private Data
****************************************************************************/
/* A reference to a structure of this type must be passed to the STMPE11
/* A reference to a structure of this type must be passed to the STMPE811
* driver. This structure provides information about the configuration
* of the STMPE11 and provides some board-specific hooks.
* of the STMPE811 and provides some board-specific hooks.
*
* Memory for this structure is provided by the caller. It is not copied
* by the driver and is presumed to persist while the driver is active. The
@@ -170,25 +170,25 @@ static void stmpe11_clear(FAR struct stmpe11_config_s *state);
* may modify frequency or X plate resistance values.
*/
#ifndef CONFIG_STMPE11_TSC_DISABLE
static struct stm32_stmpe11config_s g_stmpe11config =
#ifndef CONFIG_STMPE811_TSC_DISABLE
static struct stm32_stmpe811config_s g_stmpe811config =
{
.config =
{
#ifdef CONFIG_STMPE11_I2C
.address = STMPE11_ADDR1,
#ifdef CONFIG_STMPE811_I2C
.address = STMPE811_ADDR1,
#endif
.frequency = CONFIG_STMPE11_FREQUENCY,
.frequency = CONFIG_STMPE811_FREQUENCY,
#ifdef CONFIG_STMPE11_MULTIPLE
#ifdef CONFIG_STMPE811_MULTIPLE
.irq = STM32_IRQ_EXTI2,
#endif
.ctrl1 = (ADC_CTRL1_SAMPLE_TIME_80 | ADC_CTRL1_MOD_12B),
.ctrl2 = ADC_CTRL2_ADC_FREQ_3p25,
.attach = stmpe11_attach,
.enable = stmpe11_enable,
.clear = stmpe11_clear,
.attach = stmpe811_attach,
.enable = stmpe811_enable,
.clear = stmpe811_clear,
},
.handler = NULL,
};
@@ -199,17 +199,17 @@ static struct stm32_stmpe11config_s g_stmpe11config =
****************************************************************************/
/* IRQ/GPIO access callbacks. These operations all hidden behind
* callbacks to isolate the STMPE11 driver from differences in GPIO
* callbacks to isolate the STMPE811 driver from differences in GPIO
* interrupt handling by varying boards and MCUs.
*
* attach - Attach the STMPE11 interrupt handler to the GPIO interrupt
* attach - Attach the STMPE811 interrupt handler to the GPIO interrupt
* enable - Enable or disable the GPIO interrupt
* clear - Acknowledge/clear any pending GPIO interrupt
*/
static int stmpe11_attach(FAR struct stmpe11_config_s *state, xcpt_t isr)
static int stmpe811_attach(FAR struct stmpe811_config_s *state, xcpt_t isr)
{
FAR struct stm32_stmpe11config_s *priv = (FAR struct stm32_stmpe11config_s *)state;
FAR struct stm32_stmpe811config_s *priv = (FAR struct stm32_stmpe811config_s *)state;
ivdbg("Saving handler %p\n", isr);
DEBUGASSERT(priv);
@@ -220,9 +220,9 @@ static int stmpe11_attach(FAR struct stmpe11_config_s *state, xcpt_t isr)
return OK;
}
static void stmpe11_enable(FAR struct stmpe11_config_s *state, bool enable)
static void stmpe811_enable(FAR struct stmpe811_config_s *state, bool enable)
{
FAR struct stm32_stmpe11config_s *priv = (FAR struct stm32_stmpe11config_s *)state;
FAR struct stm32_stmpe811config_s *priv = (FAR struct stm32_stmpe811config_s *)state;
irqstate_t flags;
/* Attach and enable, or detach and disable. Enabling and disabling GPIO
@@ -246,7 +246,7 @@ static void stmpe11_enable(FAR struct stmpe11_config_s *state, bool enable)
irqrestore(flags);
}
static void stmpe11_clear(FAR struct stmpe11_config_s *state)
static void stmpe811_clear(FAR struct stmpe811_config_s *state)
{
/* Does nothing */
}
@@ -275,7 +275,7 @@ static void stmpe11_clear(FAR struct stmpe11_config_s *state)
int arch_tcinitialize(int minor)
{
#ifndef CONFIG_STMPE11_TSC_DISABLE
#ifndef CONFIG_STMPE811_TSC_DISABLE
FAR struct i2c_dev_s *dev;
int ret;
@@ -284,36 +284,36 @@ int arch_tcinitialize(int minor)
/* Check if we are already initialized */
if (!g_stmpe11config.handle)
if (!g_stmpe811config.handle)
{
ivdbg("Initializing\n");
/* Configure the STMPE11 interrupt pin as an input */
/* Configure the STMPE811 interrupt pin as an input */
(void)stm32_configgpio(GPIO_IO_EXPANDER);
/* Get an instance of the I2C interface */
dev = up_i2cinitialize(CONFIG_STMPE11_I2CDEV);
dev = up_i2cinitialize(CONFIG_STMPE811_I2CDEV);
if (!dev)
{
idbg("Failed to initialize I2C bus %d\n", CONFIG_STMPE11_I2CDEV);
idbg("Failed to initialize I2C bus %d\n", CONFIG_STMPE811_I2CDEV);
return -ENODEV;
}
/* Instantiate the STMPE11 driver */
/* Instantiate the STMPE811 driver */
g_stmpe11config.handle =
stmpe11_instantiate(dev, (FAR struct stmpe11_config_s *)&g_stmpe11config);
if (!g_stmpe11config.handle)
g_stmpe811config.handle =
stmpe811_instantiate(dev, (FAR struct stmpe811_config_s *)&g_stmpe811config);
if (!g_stmpe811config.handle)
{
idbg("Failed to instantiate the STMPE11 driver\n");
idbg("Failed to instantiate the STMPE811 driver\n");
return -ENODEV;
}
/* Initialize and register the I2C touchscreen device */
ret = stmpe11_register(g_stmpe11config.handle, CONFIG_STMPE11_DEVMINOR);
ret = stmpe811_register(g_stmpe811config.handle, CONFIG_STMPE811_DEVMINOR);
if (ret < 0)
{
idbg("Failed to register STMPE driver: %d\n", ret);
@@ -346,8 +346,8 @@ int arch_tcinitialize(int minor)
void arch_tcuninitialize(void)
{
/* No support for un-initializing the touchscreen STMPE11 device yet */
/* No support for un-initializing the touchscreen STMPE811 device yet */
}
#endif /* CONFIG_INPUT_STMPE11 */
#endif /* CONFIG_INPUT_STMPE811 */
+10 -10
View File
@@ -47,19 +47,19 @@ ifeq ($(CONFIG_INPUT_ADS7843E),y)
CSRCS += ads7843e.c
endif
ifeq ($(CONFIG_INPUT_STMPE11),y)
CSRCS += stmpe11_base.c
ifneq ($(CONFIG_INPUT_STMPE11_TSC_DISABLE),y)
CSRCS += stmpe11_tsc.c
ifeq ($(CONFIG_INPUT_STMPE811),y)
CSRCS += stmpe811_base.c
ifneq ($(CONFIG_INPUT_STMPE811_TSC_DISABLE),y)
CSRCS += stmpe811_tsc.c
endif
ifneq ($(CONFIG_INPUT_STMPE11_GPIO_DISABLE),y)
CSRCS += stmpe11_gpio.c
ifneq ($(CONFIG_INPUT_STMPE811_GPIO_DISABLE),y)
CSRCS += stmpe811_gpio.c
endif
ifneq ($(CONFIG_INPUT_STMPE11_ADC_DISABLE),y)
CSRCS += stmpe11_adc.c
ifneq ($(CONFIG_INPUT_STMPE811_ADC_DISABLE),y)
CSRCS += stmpe811_adc.c
endif
ifneq ($(CONFIG_INPUT_STMPE11_TEMP_DISABLE),y)
CSRCS += stmpe11_temp.c
ifneq ($(CONFIG_INPUT_STMPE811_TEMP_DISABLE),y)
CSRCS += stmpe811_temp.c
endif
endif
File diff suppressed because it is too large Load Diff