Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1445861 > unrolled thread
| Started by | Nick Dyer <nick@shmanahar.org> |
|---|---|
| First post | 2016-07-18 23:30 +0200 |
| Last post | 2016-07-23 04:20 +0200 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH v8 0/10] Output raw touch data via V4L2 Nick Dyer <nick@shmanahar.org> - 2016-07-18 23:30 +0200
[PATCH v8 08/10] Input: atmel_mxt_ts - add support for reference data Nick Dyer <nick@shmanahar.org> - 2016-07-18 23:30 +0200
Re: [PATCH v8 0/10] Output raw touch data via V4L2 Hans Verkuil <hverkuil@xs4all.nl> - 2016-07-20 09:50 +0200
Re: [PATCH v8 0/10] Output raw touch data via V4L2 Chris Healy <cphealy@gmail.com> - 2016-07-23 04:20 +0200
| From | Nick Dyer <nick@shmanahar.org> |
|---|---|
| Date | 2016-07-18 23:30 +0200 |
| Subject | [PATCH v8 0/10] Output raw touch data via V4L2 |
| Message-ID | <rWo7g-38B-3@gated-at.bofh.it> |
This is a series of patches to add output of raw touch diagnostic data via V4L2
to the Atmel maXTouch and Synaptics RMI4 drivers.
It's a rewrite of the previous implementation which output via debugfs: it now
uses a V4L2 device in a similar way to the sur40 driver.
We have a utility which can read the data and display it in a useful format:
https://github.com/ndyer/heatmap/commits/heatmap-v4l
Changes in v8:
- Split out docs changes, rework in RST/Sphinx, and rebase against docs-next
- Update for changes to vb2_queue alloc_ctxs
- Rebase against git://linuxtv.org/media_tree.git and re-test
Changes in v7:
- Tested by Andrew Duggan and Chris Healy.
- Update bus_info to add "rmi4:" bus.
- Fix code style issues in sur40 changes.
Changes in v6:
- Remove BUF_TYPE_TOUCH_CAPTURE, as discussed with Hans V touch devices will
use BUF_TYPE_VIDEO_CAPTURE.
- Touch devices should now register CAP_VIDEO_CAPTURE: CAP_TOUCH just says that
this is a touch device, not a video device, but otherwise it acts the same.
- Add some code to v4l_s_fmt() to set sensible default values for fields not
used by touch.
- Improve naming/doc of RMI4 F54 report types.
- Various minor DocBook fixes, and split to separate patch.
- Update my email address.
- Rework sur40 changes so that PIX_FMT_GREY is supported for backward
compatibility. Florian is it possible for you to test?
Changes in v5 (Hans Verkuil review):
- Update v4l2-core:
- Add VFL_TYPE_TOUCH, V4L2_BUF_TYPE_TOUCH_CAPTURE and V4L2_CAP_TOUCH
- Change V4L2_INPUT_TYPE_TOUCH_SENSOR to V4L2_INPUT_TYPE_TOUCH
- Improve DocBook documentation
- Add FMT definitions for touch data
- Note this will need the latest version of the heatmap util
- Synaptics RMI4 driver:
- Remove some less important non full frame report types
- Switch report type names to const char * array
- Move a static array to inside context struct
- Split sur40 changes to a separate commit
Changes in v4:
- Address nits from the input side in atmel_mxt_ts patches (Dmitry Torokhov)
- Add Synaptics RMI4 F54 support patch
Changes in v3:
- Address V4L2 review comments from Hans Verkuil
- Run v4l-compliance and fix all issues - needs minor patch here:
https://github.com/ndyer/v4l-utils/commit/cf50469773f
Changes in v2:
- Split pixfmt changes into separate commit and add DocBook
- Introduce VFL_TYPE_TOUCH_SENSOR and /dev/v4l-touch
- Remove "single node" support for now, it may be better to treat it as
metadata later
- Explicitly set VFL_DIR_RX
- Fix Kconfig
[toc] | [next] | [standalone]
| From | Nick Dyer <nick@shmanahar.org> |
|---|---|
| Date | 2016-07-18 23:30 +0200 |
| Subject | [PATCH v8 08/10] Input: atmel_mxt_ts - add support for reference data |
| Message-ID | <rWogW-3bX-25@gated-at.bofh.it> |
| In reply to | #1445861 |
There are different datatypes available from a maXTouch chip. Add
support to retrieve reference data as well.
Signed-off-by: Nick Dyer <nick@shmanahar.org>
---
drivers/input/touchscreen/atmel_mxt_ts.c | 57 ++++++++++++++++++++++++++----
1 file changed, 51 insertions(+), 6 deletions(-)
diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
index 584198e..beede8f 100644
--- a/drivers/input/touchscreen/atmel_mxt_ts.c
+++ b/drivers/input/touchscreen/atmel_mxt_ts.c
@@ -135,6 +135,7 @@ struct t9_range {
/* MXT_DEBUG_DIAGNOSTIC_T37 */
#define MXT_DIAGNOSTIC_PAGEUP 0x01
#define MXT_DIAGNOSTIC_DELTAS 0x10
+#define MXT_DIAGNOSTIC_REFS 0x11
#define MXT_DIAGNOSTIC_SIZE 128
#define MXT_FAMILY_1386 160
@@ -249,6 +250,12 @@ struct mxt_dbg {
int input;
};
+enum v4l_dbg_inputs {
+ MXT_V4L_INPUT_DELTAS,
+ MXT_V4L_INPUT_REFS,
+ MXT_V4L_INPUT_MAX,
+};
+
static const struct v4l2_file_operations mxt_video_fops = {
.owner = THIS_MODULE,
.open = v4l2_fh_open,
@@ -2273,6 +2280,7 @@ static void mxt_buffer_queue(struct vb2_buffer *vb)
struct mxt_data *data = vb2_get_drv_priv(vb->vb2_queue);
u16 *ptr;
int ret;
+ u8 mode;
ptr = vb2_plane_vaddr(vb, 0);
if (!ptr) {
@@ -2280,7 +2288,18 @@ static void mxt_buffer_queue(struct vb2_buffer *vb)
goto fault;
}
- ret = mxt_read_diagnostic_debug(data, MXT_DIAGNOSTIC_DELTAS, ptr);
+ switch (data->dbg.input) {
+ case MXT_V4L_INPUT_DELTAS:
+ default:
+ mode = MXT_DIAGNOSTIC_DELTAS;
+ break;
+
+ case MXT_V4L_INPUT_REFS:
+ mode = MXT_DIAGNOSTIC_REFS;
+ break;
+ }
+
+ ret = mxt_read_diagnostic_debug(data, mode, ptr);
if (ret)
goto fault;
@@ -2325,11 +2344,21 @@ static int mxt_vidioc_querycap(struct file *file, void *priv,
static int mxt_vidioc_enum_input(struct file *file, void *priv,
struct v4l2_input *i)
{
- if (i->index > 0)
+ if (i->index >= MXT_V4L_INPUT_MAX)
return -EINVAL;
i->type = V4L2_INPUT_TYPE_TOUCH;
- strlcpy(i->name, "Mutual Capacitance Deltas", sizeof(i->name));
+
+ switch (i->index) {
+ case MXT_V4L_INPUT_REFS:
+ strlcpy(i->name, "Mutual Capacitance References",
+ sizeof(i->name));
+ break;
+ case MXT_V4L_INPUT_DELTAS:
+ strlcpy(i->name, "Mutual Capacitance Deltas", sizeof(i->name));
+ break;
+ }
+
return 0;
}
@@ -2337,12 +2366,16 @@ static int mxt_set_input(struct mxt_data *data, unsigned int i)
{
struct v4l2_pix_format *f = &data->dbg.format;
- if (i > 0)
+ if (i >= MXT_V4L_INPUT_MAX)
return -EINVAL;
+ if (i == MXT_V4L_INPUT_DELTAS)
+ f->pixelformat = V4L2_TCH_FMT_DELTA_TD16;
+ else
+ f->pixelformat = V4L2_TCH_FMT_TU16;
+
f->width = data->xy_switch ? data->ysize : data->xsize;
f->height = data->xy_switch ? data->xsize : data->ysize;
- f->pixelformat = V4L2_TCH_FMT_DELTA_TD16;
f->field = V4L2_FIELD_NONE;
f->colorspace = V4L2_COLORSPACE_RAW;
f->bytesperline = f->width * sizeof(u16);
@@ -2383,7 +2416,19 @@ static int mxt_vidioc_enum_fmt(struct file *file, void *priv,
if (fmt->type != V4L2_BUF_TYPE_VIDEO_CAPTURE)
return -EINVAL;
- fmt->pixelformat = V4L2_TCH_FMT_DELTA_TD16;
+ switch (fmt->index) {
+ case 0:
+ fmt->pixelformat = V4L2_TCH_FMT_TU16;
+ break;
+
+ case 1:
+ fmt->pixelformat = V4L2_TCH_FMT_DELTA_TD16;
+ break;
+
+ default:
+ return -EINVAL;
+ }
+
return 0;
}
--
1.7.9.5
[toc] | [prev] | [next] | [standalone]
| From | Hans Verkuil <hverkuil@xs4all.nl> |
|---|---|
| Date | 2016-07-20 09:50 +0200 |
| Message-ID | <rWUqu-6WG-11@gated-at.bofh.it> |
| In reply to | #1445861 |
Hi Nick, This series looks good. I plan on taking it for 4.9. I have to wait until 4.8-rc1 is out and merged in our media_tree repo before I can make the pull request, probably in about 3 weeks from now. One request: can you post the 'v4l2-compliance -a -f' output, using the latest v4l2-compliance code with your patch on top. I'd like to make sure all input and format combinations are working as they should. Regards, Hans On 07/18/2016 11:10 PM, Nick Dyer wrote: > This is a series of patches to add output of raw touch diagnostic data via V4L2 > to the Atmel maXTouch and Synaptics RMI4 drivers. > > It's a rewrite of the previous implementation which output via debugfs: it now > uses a V4L2 device in a similar way to the sur40 driver. > > We have a utility which can read the data and display it in a useful format: > https://github.com/ndyer/heatmap/commits/heatmap-v4l > > Changes in v8: > - Split out docs changes, rework in RST/Sphinx, and rebase against docs-next > - Update for changes to vb2_queue alloc_ctxs > - Rebase against git://linuxtv.org/media_tree.git and re-test > > Changes in v7: > - Tested by Andrew Duggan and Chris Healy. > - Update bus_info to add "rmi4:" bus. > - Fix code style issues in sur40 changes. > > Changes in v6: > - Remove BUF_TYPE_TOUCH_CAPTURE, as discussed with Hans V touch devices will > use BUF_TYPE_VIDEO_CAPTURE. > - Touch devices should now register CAP_VIDEO_CAPTURE: CAP_TOUCH just says that > this is a touch device, not a video device, but otherwise it acts the same. > - Add some code to v4l_s_fmt() to set sensible default values for fields not > used by touch. > - Improve naming/doc of RMI4 F54 report types. > - Various minor DocBook fixes, and split to separate patch. > - Update my email address. > - Rework sur40 changes so that PIX_FMT_GREY is supported for backward > compatibility. Florian is it possible for you to test? > > Changes in v5 (Hans Verkuil review): > - Update v4l2-core: > - Add VFL_TYPE_TOUCH, V4L2_BUF_TYPE_TOUCH_CAPTURE and V4L2_CAP_TOUCH > - Change V4L2_INPUT_TYPE_TOUCH_SENSOR to V4L2_INPUT_TYPE_TOUCH > - Improve DocBook documentation > - Add FMT definitions for touch data > - Note this will need the latest version of the heatmap util > - Synaptics RMI4 driver: > - Remove some less important non full frame report types > - Switch report type names to const char * array > - Move a static array to inside context struct > - Split sur40 changes to a separate commit > > Changes in v4: > - Address nits from the input side in atmel_mxt_ts patches (Dmitry Torokhov) > - Add Synaptics RMI4 F54 support patch > > Changes in v3: > - Address V4L2 review comments from Hans Verkuil > - Run v4l-compliance and fix all issues - needs minor patch here: > https://github.com/ndyer/v4l-utils/commit/cf50469773f > > Changes in v2: > - Split pixfmt changes into separate commit and add DocBook > - Introduce VFL_TYPE_TOUCH_SENSOR and /dev/v4l-touch > - Remove "single node" support for now, it may be better to treat it as > metadata later > - Explicitly set VFL_DIR_RX > - Fix Kconfig > > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >
[toc] | [prev] | [next] | [standalone]
| From | Chris Healy <cphealy@gmail.com> |
|---|---|
| Date | 2016-07-23 04:20 +0200 |
| Message-ID | <rXUHL-5xr-3@gated-at.bofh.it> |
| In reply to | #1447052 |
I'm not Nick, but I'm testing his patches. ;-) Here's what I'm getting from v4l2-compliance with his patches: root@RDU2:/mnt/disk ./v4l2-compliance -a -f -d /dev/v4l-touch0 Driver Info: Driver name : rmi4_f54 Card type : Synaptics RMI4 Touch Sensor Bus info : rmi4:rmi4-00.fn54 Driver version: 4.7.0 Capabilities : 0x95200001 Video Capture Touch Capture Read/Write Streaming Extended Pix Format Device Capabilities Device Caps : 0x15200001 Video Capture Touch Capture Read/Write Streaming Extended Pix Format Compliance test for device /dev/v4l-touch0 (not using libv4l2): Required ioctls: test VIDIOC_QUERYCAP: OK Allow for multiple opens: test second video open: OK test VIDIOC_QUERYCAP: OK test VIDIOC_G/S_PRIORITY: OK Debug ioctls: test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported) test VIDIOC_LOG_STATUS: OK (Not Supported) Input ioctls: test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported) test VIDIOC_G/S_FREQUENCY: OK (Not Supported) test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported) test VIDIOC_ENUMAUDIO: OK (Not Supported) test VIDIOC_G/S/ENUMINPUT: OK test VIDIOC_G/S_AUDIO: OK (Not Supported) Inputs: 5 Audio Inputs: 0 Tuners: 0 Output ioctls: test VIDIOC_G/S_MODULATOR: OK (Not Supported) test VIDIOC_G/S_FREQUENCY: OK (Not Supported) test VIDIOC_ENUMAUDOUT: OK (Not Supported) test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported) test VIDIOC_G/S_AUDOUT: OK (Not Supported) Outputs: 0 Audio Outputs: 0 Modulators: 0 Input/Output configuration ioctls: test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported) test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported) test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported) test VIDIOC_G/S_EDID: OK (Not Supported) Test input 0: Control ioctls: test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK (Not Supported) test VIDIOC_QUERYCTRL: OK (Not Supported) test VIDIOC_G/S_CTRL: OK (Not Supported) test VIDIOC_G/S/TRY_EXT_CTRLS: OK (Not Supported) test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK (Not Supported) test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) Standard Controls: 0 Private Controls: 0 Format ioctls: test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK test VIDIOC_G/S_PARM: OK test VIDIOC_G_FBUF: OK (Not Supported) test VIDIOC_G_FMT: OK test VIDIOC_TRY_FMT: OK test VIDIOC_S_FMT: OK test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) test Cropping: OK (Not Supported) test Composing: OK (Not Supported) test Scaling: OK (Not Supported) Codec ioctls: test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported) test VIDIOC_G_ENC_INDEX: OK (Not Supported) test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported) Buffer ioctls: test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK test VIDIOC_EXPBUF: OK Test input 1: Control ioctls: test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK (Not Supported) test VIDIOC_QUERYCTRL: OK (Not Supported) test VIDIOC_G/S_CTRL: OK (Not Supported) test VIDIOC_G/S/TRY_EXT_CTRLS: OK (Not Supported) test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK (Not Supported) test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) Standard Controls: 0 Private Controls: 0 Format ioctls: test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK test VIDIOC_G/S_PARM: OK test VIDIOC_G_FBUF: OK (Not Supported) test VIDIOC_G_FMT: OK test VIDIOC_TRY_FMT: OK test VIDIOC_S_FMT: OK test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) test Cropping: OK (Not Supported) test Composing: OK (Not Supported) test Scaling: OK (Not Supported) Codec ioctls: test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported) test VIDIOC_G_ENC_INDEX: OK (Not Supported) test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported) Buffer ioctls: test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK test VIDIOC_EXPBUF: OK Test input 2: Control ioctls: test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK (Not Supported) test VIDIOC_QUERYCTRL: OK (Not Supported) test VIDIOC_G/S_CTRL: OK (Not Supported) test VIDIOC_G/S/TRY_EXT_CTRLS: OK (Not Supported) test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK (Not Supported) test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) Standard Controls: 0 Private Controls: 0 Format ioctls: test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK test VIDIOC_G/S_PARM: OK test VIDIOC_G_FBUF: OK (Not Supported) test VIDIOC_G_FMT: OK test VIDIOC_TRY_FMT: OK test VIDIOC_S_FMT: OK test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) test Cropping: OK (Not Supported) test Composing: OK (Not Supported) test Scaling: OK (Not Supported) Codec ioctls: test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported) test VIDIOC_G_ENC_INDEX: OK (Not Supported) test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported) Buffer ioctls: test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK test VIDIOC_EXPBUF: OK Test input 3: Control ioctls: test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK (Not Supported) test VIDIOC_QUERYCTRL: OK (Not Supported) test VIDIOC_G/S_CTRL: OK (Not Supported) test VIDIOC_G/S/TRY_EXT_CTRLS: OK (Not Supported) test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK (Not Supported) test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) Standard Controls: 0 Private Controls: 0 Format ioctls: test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK test VIDIOC_G/S_PARM: OK test VIDIOC_G_FBUF: OK (Not Supported) test VIDIOC_G_FMT: OK test VIDIOC_TRY_FMT: OK test VIDIOC_S_FMT: OK test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) test Cropping: OK (Not Supported) test Composing: OK (Not Supported) test Scaling: OK (Not Supported) Codec ioctls: test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported) test VIDIOC_G_ENC_INDEX: OK (Not Supported) test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported) Buffer ioctls: test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK test VIDIOC_EXPBUF: OK Test input 4: Control ioctls: test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK (Not Supported) test VIDIOC_QUERYCTRL: OK (Not Supported) test VIDIOC_G/S_CTRL: OK (Not Supported) test VIDIOC_G/S/TRY_EXT_CTRLS: OK (Not Supported) test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK (Not Supported) test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) Standard Controls: 0 Private Controls: 0 Format ioctls: test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK test VIDIOC_G/S_PARM: OK test VIDIOC_G_FBUF: OK (Not Supported) test VIDIOC_G_FMT: OK test VIDIOC_TRY_FMT: OK test VIDIOC_S_FMT: OK test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) test Cropping: OK (Not Supported) test Composing: OK (Not Supported) test Scaling: OK (Not Supported) Codec ioctls: test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported) test VIDIOC_G_ENC_INDEX: OK (Not Supported) test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported) Buffer ioctls: test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK test VIDIOC_EXPBUF: OK Test input 0: Stream using all formats: test MMAP for Format TD16, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TD08, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TU16, Frame Size 60x36: Stride 120, Field None: OK Test input 1: Stream using all formats: test MMAP for Format TD16, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TD08, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TU16, Frame Size 60x36: Stride 120, Field None: OK Test input 2: Stream using all formats: test MMAP for Format TD16, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TD08, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TU16, Frame Size 60x36: Stride 120, Field None: OK Test input 3: Stream using all formats: test MMAP for Format TD16, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TD08, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TU16, Frame Size 60x36: Stride 120, Field None: OK Test input 4: Stream using all formats: test MMAP for Format TD16, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TD08, Frame Size 60x36: Stride 120, Field None: OK test MMAP for Format TU16, Frame Size 60x36: Stride 120, Field None: OK Total: 141, Succeeded: 141, Failed: 0, Warnings: 0 On Wed, Jul 20, 2016 at 12:48 AM, Hans Verkuil <hverkuil@xs4all.nl> wrote: > Hi Nick, > > This series looks good. I plan on taking it for 4.9. I have to wait until > 4.8-rc1 is out and merged in our media_tree repo before I can make the pull > request, probably in about 3 weeks from now. > > One request: can you post the 'v4l2-compliance -a -f' output, using the latest > v4l2-compliance code with your patch on top. > > I'd like to make sure all input and format combinations are working as they should. > > Regards, > > Hans > > On 07/18/2016 11:10 PM, Nick Dyer wrote: >> This is a series of patches to add output of raw touch diagnostic data via V4L2 >> to the Atmel maXTouch and Synaptics RMI4 drivers. >> >> It's a rewrite of the previous implementation which output via debugfs: it now >> uses a V4L2 device in a similar way to the sur40 driver. >> >> We have a utility which can read the data and display it in a useful format: >> https://github.com/ndyer/heatmap/commits/heatmap-v4l >> >> Changes in v8: >> - Split out docs changes, rework in RST/Sphinx, and rebase against docs-next >> - Update for changes to vb2_queue alloc_ctxs >> - Rebase against git://linuxtv.org/media_tree.git and re-test >> >> Changes in v7: >> - Tested by Andrew Duggan and Chris Healy. >> - Update bus_info to add "rmi4:" bus. >> - Fix code style issues in sur40 changes. >> >> Changes in v6: >> - Remove BUF_TYPE_TOUCH_CAPTURE, as discussed with Hans V touch devices will >> use BUF_TYPE_VIDEO_CAPTURE. >> - Touch devices should now register CAP_VIDEO_CAPTURE: CAP_TOUCH just says that >> this is a touch device, not a video device, but otherwise it acts the same. >> - Add some code to v4l_s_fmt() to set sensible default values for fields not >> used by touch. >> - Improve naming/doc of RMI4 F54 report types. >> - Various minor DocBook fixes, and split to separate patch. >> - Update my email address. >> - Rework sur40 changes so that PIX_FMT_GREY is supported for backward >> compatibility. Florian is it possible for you to test? >> >> Changes in v5 (Hans Verkuil review): >> - Update v4l2-core: >> - Add VFL_TYPE_TOUCH, V4L2_BUF_TYPE_TOUCH_CAPTURE and V4L2_CAP_TOUCH >> - Change V4L2_INPUT_TYPE_TOUCH_SENSOR to V4L2_INPUT_TYPE_TOUCH >> - Improve DocBook documentation >> - Add FMT definitions for touch data >> - Note this will need the latest version of the heatmap util >> - Synaptics RMI4 driver: >> - Remove some less important non full frame report types >> - Switch report type names to const char * array >> - Move a static array to inside context struct >> - Split sur40 changes to a separate commit >> >> Changes in v4: >> - Address nits from the input side in atmel_mxt_ts patches (Dmitry Torokhov) >> - Add Synaptics RMI4 F54 support patch >> >> Changes in v3: >> - Address V4L2 review comments from Hans Verkuil >> - Run v4l-compliance and fix all issues - needs minor patch here: >> https://github.com/ndyer/v4l-utils/commit/cf50469773f >> >> Changes in v2: >> - Split pixfmt changes into separate commit and add DocBook >> - Introduce VFL_TYPE_TOUCH_SENSOR and /dev/v4l-touch >> - Remove "single node" support for now, it may be better to treat it as >> metadata later >> - Explicitly set VFL_DIR_RX >> - Fix Kconfig >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-media" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >>
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web