[PATCH] HackRF SDR driver - v4l2-compliance test report
[crope@localhost v4l2-compliance]$ ./v4l2-compliance -S /dev/swradio0 Driver Info: Driver name : hackrf Card type : HackRF One Bus info : usb-:00:13.2-2 Driver version: 3.16.0 Capabilities : 0x8531 SDR Capture Tuner Read/Write Streaming Extended Pix Format Device Capabilities Device Caps : 0x0531 SDR Capture Tuner Read/Write Streaming Extended Pix Format Compliance test for device /dev/swradio0 (not using libv4l2): Required ioctls: test VIDIOC_QUERYCAP: OK Allow for multiple opens: test second sdr open: OK test VIDIOC_QUERYCAP: OK test VIDIOC_G/S_PRIORITY: OK Debug ioctls: test VIDIOC_DBG_G/S_REGISTER: OK test VIDIOC_LOG_STATUS: OK Input ioctls: test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK test VIDIOC_G/S_FREQUENCY: OK test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported) test VIDIOC_ENUMAUDIO: OK (Not Supported) test VIDIOC_G/S/ENUMINPUT: OK (Not Supported) test VIDIOC_G/S_AUDIO: OK (Not Supported) Inputs: 0 Audio Inputs: 0 Tuners: 2 Output ioctls: test VIDIOC_G/S_MODULATOR: OK (Not Supported) test VIDIOC_G/S_FREQUENCY: OK 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) Control ioctls: test VIDIOC_QUERYCTRL/MENU: OK test VIDIOC_G/S_CTRL: OK test VIDIOC_G/S/TRY_EXT_CTRLS: OK test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) Standard Controls: 5 Private Controls: 0 Format ioctls: test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK test VIDIOC_G/S_PARM: OK (Not Supported) 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) 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 (Not Supported) Total: 38, Succeeded: 38, Failed: 0, Warnings: 0 [crope@localhost v4l2-compliance]$ Antti Palosaari (1): hackrf: HackRF SDR driver drivers/media/usb/Kconfig |3 +- drivers/media/usb/Makefile|3 +- drivers/media/usb/hackrf/Kconfig | 10 + drivers/media/usb/hackrf/Makefile |1 + drivers/media/usb/hackrf/hackrf.c | 1130 + 5 files changed, 1145 insertions(+), 2 deletions(-) create mode 100644 drivers/media/usb/hackrf/Kconfig create mode 100644 drivers/media/usb/hackrf/Makefile create mode 100644 drivers/media/usb/hackrf/hackrf.c -- http://palosaari.fi/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] hackrf: HackRF SDR driver
V4L2 driver for HackRF SDR. Very basic version, with reduced feature set. Driver implements receiver only, hardware supports also transmitter. USB ID 1d50:6089. Model HackRF One Signed-off-by: Antti Palosaari cr...@iki.fi --- drivers/media/usb/Kconfig |3 +- drivers/media/usb/Makefile|3 +- drivers/media/usb/hackrf/Kconfig | 10 + drivers/media/usb/hackrf/Makefile |1 + drivers/media/usb/hackrf/hackrf.c | 1130 + 5 files changed, 1145 insertions(+), 2 deletions(-) create mode 100644 drivers/media/usb/hackrf/Kconfig create mode 100644 drivers/media/usb/hackrf/Makefile create mode 100644 drivers/media/usb/hackrf/hackrf.c diff --git a/drivers/media/usb/Kconfig b/drivers/media/usb/Kconfig index d6e8edc..056181f 100644 --- a/drivers/media/usb/Kconfig +++ b/drivers/media/usb/Kconfig @@ -56,8 +56,9 @@ endif if MEDIA_SDR_SUPPORT comment Software defined radio USB devices -source drivers/media/usb/msi2500/Kconfig source drivers/media/usb/airspy/Kconfig +source drivers/media/usb/hackrf/Kconfig +source drivers/media/usb/msi2500/Kconfig endif endif #MEDIA_USB_SUPPORT diff --git a/drivers/media/usb/Makefile b/drivers/media/usb/Makefile index b5b645b..6f2eb7c 100644 --- a/drivers/media/usb/Makefile +++ b/drivers/media/usb/Makefile @@ -9,8 +9,9 @@ obj-y += zr364xx/ stkwebcam/ s2255/ obj-$(CONFIG_USB_VIDEO_CLASS) += uvc/ obj-$(CONFIG_USB_GSPCA) += gspca/ obj-$(CONFIG_USB_PWC) += pwc/ -obj-$(CONFIG_USB_MSI2500) += msi2500/ obj-$(CONFIG_USB_AIRSPY)+= airspy/ +obj-$(CONFIG_USB_HACKRF)+= hackrf/ +obj-$(CONFIG_USB_MSI2500) += msi2500/ obj-$(CONFIG_VIDEO_CPIA2) += cpia2/ obj-$(CONFIG_VIDEO_AU0828) += au0828/ obj-$(CONFIG_VIDEO_HDPVR) += hdpvr/ diff --git a/drivers/media/usb/hackrf/Kconfig b/drivers/media/usb/hackrf/Kconfig new file mode 100644 index 000..937e6f5 --- /dev/null +++ b/drivers/media/usb/hackrf/Kconfig @@ -0,0 +1,10 @@ +config USB_HACKRF + tristate HackRF + depends on VIDEO_V4L2 + select VIDEOBUF2_VMALLOC + ---help--- + This is a video4linux2 driver for HackRF SDR device. + + To compile this driver as a module, choose M here: the + module will be called hackrf + diff --git a/drivers/media/usb/hackrf/Makefile b/drivers/media/usb/hackrf/Makefile new file mode 100644 index 000..73064a2 --- /dev/null +++ b/drivers/media/usb/hackrf/Makefile @@ -0,0 +1 @@ +obj-$(CONFIG_USB_HACKRF) += hackrf.o diff --git a/drivers/media/usb/hackrf/hackrf.c b/drivers/media/usb/hackrf/hackrf.c new file mode 100644 index 000..a868cd9 --- /dev/null +++ b/drivers/media/usb/hackrf/hackrf.c @@ -0,0 +1,1130 @@ +/* + * HackRF driver + * + * Copyright (C) 2014 Antti Palosaari cr...@iki.fi + * + *This program is free software; you can redistribute it and/or modify + *it under the terms of the GNU General Public License as published by + *the Free Software Foundation; either version 2 of the License, or + *(at your option) any later version. + * + *This program is distributed in the hope that it will be useful, + *but WITHOUT ANY WARRANTY; without even the implied warranty of + *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + *GNU General Public License for more details. + */ + +#include linux/module.h +#include linux/slab.h +#include linux/usb.h +#include media/v4l2-device.h +#include media/v4l2-ioctl.h +#include media/v4l2-ctrls.h +#include media/v4l2-event.h +#include media/videobuf2-vmalloc.h + +/* HackRF USB API commands (from HackRF Library) */ +enum { + CMD_SET_TRANSCEIVER_MODE = 0x01, + CMD_SAMPLE_RATE_SET= 0x06, + CMD_BASEBAND_FILTER_BANDWIDTH_SET = 0x07, + CMD_BOARD_ID_READ = 0x0e, + CMD_VERSION_STRING_READ= 0x0f, + CMD_SET_FREQ = 0x10, + CMD_SET_LNA_GAIN = 0x13, + CMD_SET_VGA_GAIN = 0x14, +}; + +/* + * bEndpointAddress 0x81 EP 1 IN + * Transfer TypeBulk + * wMaxPacketSize 0x0200 1x 512 bytes + */ +#define MAX_BULK_BUFS(6) +#define BULK_BUFFER_SIZE (128 * 512) + +static const struct v4l2_frequency_band bands_adc[] = { + { + .tuner = 0, + .type = V4L2_TUNER_ADC, + .index = 0, + .capability = V4L2_TUNER_CAP_1HZ | V4L2_TUNER_CAP_FREQ_BANDS, + .rangelow = 20, + .rangehigh = 2400, + }, +}; + +static const struct v4l2_frequency_band bands_rf[] = { + { + .tuner = 1, + .type = V4L2_TUNER_RF, + .index = 0, + .capability = V4L2_TUNER_CAP_1HZ | V4L2_TUNER_CAP_FREQ_BANDS, + .rangelow = 1, + .rangehigh = 4294967294, /* max u32, hw goes over 7GHz */ + },
[PATCH 0/9] use c99 initializers in structures
These patches add labels in the initializations of structure fields (c99 initializers). The complete semantic patch thta makes this change is shown below. This rule ignores cases where the initialization is just 0 or NULL, where some of the fields already use labels, and where there are nested structures. // smpl @ok1@ identifier i1,i2; position p; @@ struct i1 i2@p = { \(0\|NULL\) }; @ok2@ identifier i1,i2,i3; position p; expression e; @@ struct i1 i2@p = { ..., .i3 = e, ... }; @ok3@ identifier i1,i2; position p; @@ struct i1 i2@p = { ..., { ... }, ... }; @decl@ identifier i1,fld; type T; field list[n] fs; @@ struct i1 { fs T fld; ...}; @bad@ identifier decl.i1,i2; expression e; position p != {ok1.p,ok2.p,ok3.p}; constant nm; initializer list[decl.n] is; position fix; @@ struct i1 i2@p = { is, ( nm(...) | e@fix ) ,...}; @@ identifier decl.i1,i2,decl.fld; expression e; position bad.p, bad.fix; @@ struct i1 i2@p = { ..., + .fld = e - e@fix ,...}; // /smpl -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 1/9] [media] v4l: ti-vpe: use c99 initializers in structures
From: Julia Lawall julia.law...@lip6.fr Use c99 initializers for structures. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // smpl @decl@ identifier i1,fld; type T; field list[n] fs; @@ struct i1 { fs T fld; ...}; @bad@ identifier decl.i1,i2; expression e; initializer list[decl.n] is; @@ struct i1 i2 = { is, + .fld = e - e ,...}; // /smpl Signed-off-by: Julia Lawall julia.law...@lip6.fr --- The patches in this series do not depend on each other. Not compiled. drivers/media/platform/ti-vpe/vpe.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/media/platform/ti-vpe/vpe.c b/drivers/media/platform/ti-vpe/vpe.c index 972f43f..20dd7ea 100644 --- a/drivers/media/platform/ti-vpe/vpe.c +++ b/drivers/media/platform/ti-vpe/vpe.c @@ -138,12 +138,12 @@ struct vpe_dei_regs { * default expert DEI register values, unlikely to be modified. */ static const struct vpe_dei_regs dei_regs = { - 0x020C0804u, - 0x0118100Fu, - 0x08040200u, - 0x1010100Cu, - 0x10101010u, - 0x10101010u, + .mdt_spacial_freq_thr_reg = 0x020C0804u, + .edi_config_reg = 0x0118100Fu, + .edi_lut_reg0 = 0x08040200u, + .edi_lut_reg1 = 0x1010100Cu, + .edi_lut_reg2 = 0x10101010u, + .edi_lut_reg3 = 0x10101010u, }; /* -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 0/5] Digital Devices PCIe bridge update to 0.9.15a
Hi all, It's been 3 weeks since these patches were submitted - have they been merged yet? If not - what's the problem? Who has to check this? I'm not the only one longing for driver updated support of ddbridge by default, and it would really be nice if there was some progress here. Antti did a lot of work here for all us ddbridge users. Regards, Bjoern On Sa, 2014-08-02 at 06:48 +0300, Antti Palosaari wrote: After cold power-on, my device wasn't able to find DuoFlex C/C2/T/T2 Expansion card, which I added yesterday. I looked old and new drivers and tried many things, but no success. Old kernel driver was ages, many years, behind manufacturer current Linux driver and there has been a tons of changes. So I ended up upgrading Linux kernel driver to 0.9.15a (it was 0.5). Now it is very near Digital Devices official driver, only modulator and network streaming stuff is removed and CI is abusing SEC like earlier also. Few device models are not supported due to missing kernel driver or missing device profile. Those devices are based of following DTV frontend chipsets: MaxLinear MxL5xx STMicroelectronics STV0910 STMicroelectronics STV0367 Tree for testing is here: http://git.linuxtv.org/cgit.cgi/anttip/media_tree.git/log/?h=digitaldevices regards Antti Antti Palosaari (5): cxd2843: do not call get_if_frequency() when it is NULL ddbridge: disable driver building ddbridge: remove driver temporarily ddbridge: add needed files from manufacturer driver 0.9.15a ddbridge: clean up driver for release drivers/media/dvb-frontends/cxd2843.c |3 +- drivers/media/pci/ddbridge/Makefile|2 - drivers/media/pci/ddbridge/ddbridge-core.c | 3175 +++- drivers/media/pci/ddbridge/ddbridge-i2c.c | 232 ++ drivers/media/pci/ddbridge/ddbridge-regs.h | 347 ++- drivers/media/pci/ddbridge/ddbridge.c | 456 drivers/media/pci/ddbridge/ddbridge.h | 407 +++- 7 files changed, 3518 insertions(+), 1104 deletions(-) create mode 100644 drivers/media/pci/ddbridge/ddbridge-i2c.c create mode 100644 drivers/media/pci/ddbridge/ddbridge.c -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 0/5] Digital Devices PCIe bridge update to 0.9.15a
Moikka That patchset is simply far away from merge. Tons of issues to be fixed. It is huge amount of work to get that all in. I could estimate one month full time work even my experience is not enough. And I simply don't want to waste that much money from my pockets, it is many thousand euros. So I do it, if I do, on my schedule. There is many separate issues which needs to be done. It is not something one people should do all. For example mainlining that DVB-T/T2/C/C2 demod driver. Another thing is DVB-C2 API, which is not much coding, but a lot of specification. You need to read and *understand* DVB-C2 spec and on some level other specs (mostly DVB-T2) in order to add missing pieces correctly to DVB API. If you are not coder, start here. Antti On 08/23/2014 02:50 PM, Bjoern wrote: Hi all, It's been 3 weeks since these patches were submitted - have they been merged yet? If not - what's the problem? Who has to check this? I'm not the only one longing for driver updated support of ddbridge by default, and it would really be nice if there was some progress here. Antti did a lot of work here for all us ddbridge users. Regards, Bjoern On Sa, 2014-08-02 at 06:48 +0300, Antti Palosaari wrote: After cold power-on, my device wasn't able to find DuoFlex C/C2/T/T2 Expansion card, which I added yesterday. I looked old and new drivers and tried many things, but no success. Old kernel driver was ages, many years, behind manufacturer current Linux driver and there has been a tons of changes. So I ended up upgrading Linux kernel driver to 0.9.15a (it was 0.5). Now it is very near Digital Devices official driver, only modulator and network streaming stuff is removed and CI is abusing SEC like earlier also. Few device models are not supported due to missing kernel driver or missing device profile. Those devices are based of following DTV frontend chipsets: MaxLinear MxL5xx STMicroelectronics STV0910 STMicroelectronics STV0367 Tree for testing is here: http://git.linuxtv.org/cgit.cgi/anttip/media_tree.git/log/?h=digitaldevices regards Antti Antti Palosaari (5): cxd2843: do not call get_if_frequency() when it is NULL ddbridge: disable driver building ddbridge: remove driver temporarily ddbridge: add needed files from manufacturer driver 0.9.15a ddbridge: clean up driver for release drivers/media/dvb-frontends/cxd2843.c |3 +- drivers/media/pci/ddbridge/Makefile|2 - drivers/media/pci/ddbridge/ddbridge-core.c | 3175 +++- drivers/media/pci/ddbridge/ddbridge-i2c.c | 232 ++ drivers/media/pci/ddbridge/ddbridge-regs.h | 347 ++- drivers/media/pci/ddbridge/ddbridge.c | 456 drivers/media/pci/ddbridge/ddbridge.h | 407 +++- 7 files changed, 3518 insertions(+), 1104 deletions(-) create mode 100644 drivers/media/pci/ddbridge/ddbridge-i2c.c create mode 100644 drivers/media/pci/ddbridge/ddbridge.c -- http://palosaari.fi/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] hackrf: HackRF SDR driver
Hi Antti, Thanks for this drivers, looks interesting. I do have some review comments, see below... On 08/23/2014 07:46 AM, Antti Palosaari wrote: V4L2 driver for HackRF SDR. Very basic version, with reduced feature set. Driver implements receiver only, hardware supports also transmitter. USB ID 1d50:6089. Model HackRF One Signed-off-by: Antti Palosaari cr...@iki.fi --- drivers/media/usb/Kconfig |3 +- drivers/media/usb/Makefile|3 +- drivers/media/usb/hackrf/Kconfig | 10 + drivers/media/usb/hackrf/Makefile |1 + drivers/media/usb/hackrf/hackrf.c | 1130 + 5 files changed, 1145 insertions(+), 2 deletions(-) create mode 100644 drivers/media/usb/hackrf/Kconfig create mode 100644 drivers/media/usb/hackrf/Makefile create mode 100644 drivers/media/usb/hackrf/hackrf.c diff --git a/drivers/media/usb/Kconfig b/drivers/media/usb/Kconfig index d6e8edc..056181f 100644 --- a/drivers/media/usb/Kconfig +++ b/drivers/media/usb/Kconfig @@ -56,8 +56,9 @@ endif if MEDIA_SDR_SUPPORT comment Software defined radio USB devices -source drivers/media/usb/msi2500/Kconfig source drivers/media/usb/airspy/Kconfig +source drivers/media/usb/hackrf/Kconfig +source drivers/media/usb/msi2500/Kconfig endif endif #MEDIA_USB_SUPPORT diff --git a/drivers/media/usb/Makefile b/drivers/media/usb/Makefile index b5b645b..6f2eb7c 100644 --- a/drivers/media/usb/Makefile +++ b/drivers/media/usb/Makefile @@ -9,8 +9,9 @@ obj-y += zr364xx/ stkwebcam/ s2255/ obj-$(CONFIG_USB_VIDEO_CLASS)+= uvc/ obj-$(CONFIG_USB_GSPCA) += gspca/ obj-$(CONFIG_USB_PWC) += pwc/ -obj-$(CONFIG_USB_MSI2500) += msi2500/ obj-$(CONFIG_USB_AIRSPY)+= airspy/ +obj-$(CONFIG_USB_HACKRF)+= hackrf/ +obj-$(CONFIG_USB_MSI2500) += msi2500/ obj-$(CONFIG_VIDEO_CPIA2) += cpia2/ obj-$(CONFIG_VIDEO_AU0828) += au0828/ obj-$(CONFIG_VIDEO_HDPVR)+= hdpvr/ diff --git a/drivers/media/usb/hackrf/Kconfig b/drivers/media/usb/hackrf/Kconfig new file mode 100644 index 000..937e6f5 --- /dev/null +++ b/drivers/media/usb/hackrf/Kconfig @@ -0,0 +1,10 @@ +config USB_HACKRF + tristate HackRF + depends on VIDEO_V4L2 + select VIDEOBUF2_VMALLOC + ---help--- + This is a video4linux2 driver for HackRF SDR device. + + To compile this driver as a module, choose M here: the + module will be called hackrf + diff --git a/drivers/media/usb/hackrf/Makefile b/drivers/media/usb/hackrf/Makefile new file mode 100644 index 000..73064a2 --- /dev/null +++ b/drivers/media/usb/hackrf/Makefile @@ -0,0 +1 @@ +obj-$(CONFIG_USB_HACKRF) += hackrf.o diff --git a/drivers/media/usb/hackrf/hackrf.c b/drivers/media/usb/hackrf/hackrf.c new file mode 100644 index 000..a868cd9 --- /dev/null +++ b/drivers/media/usb/hackrf/hackrf.c @@ -0,0 +1,1130 @@ +/* + * HackRF driver + * + * Copyright (C) 2014 Antti Palosaari cr...@iki.fi + * + *This program is free software; you can redistribute it and/or modify + *it under the terms of the GNU General Public License as published by + *the Free Software Foundation; either version 2 of the License, or + *(at your option) any later version. + * + *This program is distributed in the hope that it will be useful, + *but WITHOUT ANY WARRANTY; without even the implied warranty of + *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + *GNU General Public License for more details. + */ + +#include linux/module.h +#include linux/slab.h +#include linux/usb.h +#include media/v4l2-device.h +#include media/v4l2-ioctl.h +#include media/v4l2-ctrls.h +#include media/v4l2-event.h +#include media/videobuf2-vmalloc.h + +/* HackRF USB API commands (from HackRF Library) */ +enum { + CMD_SET_TRANSCEIVER_MODE = 0x01, + CMD_SAMPLE_RATE_SET= 0x06, + CMD_BASEBAND_FILTER_BANDWIDTH_SET = 0x07, + CMD_BOARD_ID_READ = 0x0e, + CMD_VERSION_STRING_READ= 0x0f, + CMD_SET_FREQ = 0x10, + CMD_SET_LNA_GAIN = 0x13, + CMD_SET_VGA_GAIN = 0x14, +}; + +/* + * bEndpointAddress 0x81 EP 1 IN + * Transfer TypeBulk + * wMaxPacketSize 0x0200 1x 512 bytes + */ +#define MAX_BULK_BUFS(6) +#define BULK_BUFFER_SIZE (128 * 512) + +static const struct v4l2_frequency_band bands_adc[] = { + { + .tuner = 0, + .type = V4L2_TUNER_ADC, + .index = 0, + .capability = V4L2_TUNER_CAP_1HZ | V4L2_TUNER_CAP_FREQ_BANDS, + .rangelow = 20, + .rangehigh = 2400, + }, +}; + +static const struct v4l2_frequency_band bands_rf[] = { + { + .tuner = 1, + .type =
Urgent Assistance from Syria
-- Good Day From Syria, My name is Abdul Nasser Sokariah and I am writing you from Syria, I choose to contact you directly as I need a reliable person to trust who can help me make claims to my huge deposit with a vault company in AFRICA, and based on my present situation in Syria, I need you urgently to take possession of everything and further modalities/directives will follow. Contact me only on my private Email:nabdul...@gmail.com for clarifications,I await your response. Yours truly, Abdul Nasser Sokariah Contact Email:nabdul...@gmail.com -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 0/9] use c99 initializers in structures
On Sat, Aug 23, 2014 at 01:20:22PM +0200, Julia Lawall wrote: These patches add labels in the initializations of structure fields (c99 initializers). The complete semantic patch thta makes this change is shown below. This rule ignores cases where the initialization is just 0 or NULL, where some of the fields already use labels, and where there are nested structures. I responded to patches 6 and 8 with comments; for the rest (1-5, 7, 9): Reviewed-by: Josh Triplett j...@joshtriplett.org -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] hackrf: HackRF SDR driver
Moikka! On 08/23/2014 05:32 PM, Hans Verkuil wrote: Hi Antti, Thanks for this drivers, looks interesting. Yes it is, especially as it supports transmitting (TX) too. I do have some review comments, see below... On 08/23/2014 07:46 AM, Antti Palosaari wrote: V4L2 driver for HackRF SDR. Very basic version, with reduced feature set. Driver implements receiver only, hardware supports also transmitter. USB ID 1d50:6089. Model HackRF One Signed-off-by: Antti Palosaari cr...@iki.fi --- drivers/media/usb/Kconfig |3 +- drivers/media/usb/Makefile|3 +- drivers/media/usb/hackrf/Kconfig | 10 + drivers/media/usb/hackrf/Makefile |1 + drivers/media/usb/hackrf/hackrf.c | 1130 + 5 files changed, 1145 insertions(+), 2 deletions(-) create mode 100644 drivers/media/usb/hackrf/Kconfig create mode 100644 drivers/media/usb/hackrf/Makefile create mode 100644 drivers/media/usb/hackrf/hackrf.c diff --git a/drivers/media/usb/Kconfig b/drivers/media/usb/Kconfig index d6e8edc..056181f 100644 --- a/drivers/media/usb/Kconfig +++ b/drivers/media/usb/Kconfig @@ -56,8 +56,9 @@ endif if MEDIA_SDR_SUPPORT comment Software defined radio USB devices -source drivers/media/usb/msi2500/Kconfig source drivers/media/usb/airspy/Kconfig +source drivers/media/usb/hackrf/Kconfig +source drivers/media/usb/msi2500/Kconfig endif endif #MEDIA_USB_SUPPORT diff --git a/drivers/media/usb/Makefile b/drivers/media/usb/Makefile index b5b645b..6f2eb7c 100644 --- a/drivers/media/usb/Makefile +++ b/drivers/media/usb/Makefile @@ -9,8 +9,9 @@ obj-y += zr364xx/ stkwebcam/ s2255/ obj-$(CONFIG_USB_VIDEO_CLASS) += uvc/ obj-$(CONFIG_USB_GSPCA) += gspca/ obj-$(CONFIG_USB_PWC) += pwc/ -obj-$(CONFIG_USB_MSI2500) += msi2500/ obj-$(CONFIG_USB_AIRSPY)+= airspy/ +obj-$(CONFIG_USB_HACKRF)+= hackrf/ +obj-$(CONFIG_USB_MSI2500) += msi2500/ obj-$(CONFIG_VIDEO_CPIA2) += cpia2/ obj-$(CONFIG_VIDEO_AU0828) += au0828/ obj-$(CONFIG_VIDEO_HDPVR) += hdpvr/ diff --git a/drivers/media/usb/hackrf/Kconfig b/drivers/media/usb/hackrf/Kconfig new file mode 100644 index 000..937e6f5 --- /dev/null +++ b/drivers/media/usb/hackrf/Kconfig @@ -0,0 +1,10 @@ +config USB_HACKRF + tristate HackRF + depends on VIDEO_V4L2 + select VIDEOBUF2_VMALLOC + ---help--- + This is a video4linux2 driver for HackRF SDR device. + + To compile this driver as a module, choose M here: the + module will be called hackrf + diff --git a/drivers/media/usb/hackrf/Makefile b/drivers/media/usb/hackrf/Makefile new file mode 100644 index 000..73064a2 --- /dev/null +++ b/drivers/media/usb/hackrf/Makefile @@ -0,0 +1 @@ +obj-$(CONFIG_USB_HACKRF) += hackrf.o diff --git a/drivers/media/usb/hackrf/hackrf.c b/drivers/media/usb/hackrf/hackrf.c new file mode 100644 index 000..a868cd9 --- /dev/null +++ b/drivers/media/usb/hackrf/hackrf.c @@ -0,0 +1,1130 @@ +/* + * HackRF driver + * + * Copyright (C) 2014 Antti Palosaari cr...@iki.fi + * + *This program is free software; you can redistribute it and/or modify + *it under the terms of the GNU General Public License as published by + *the Free Software Foundation; either version 2 of the License, or + *(at your option) any later version. + * + *This program is distributed in the hope that it will be useful, + *but WITHOUT ANY WARRANTY; without even the implied warranty of + *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + *GNU General Public License for more details. + */ + +#include linux/module.h +#include linux/slab.h +#include linux/usb.h +#include media/v4l2-device.h +#include media/v4l2-ioctl.h +#include media/v4l2-ctrls.h +#include media/v4l2-event.h +#include media/videobuf2-vmalloc.h + +/* HackRF USB API commands (from HackRF Library) */ +enum { + CMD_SET_TRANSCEIVER_MODE = 0x01, + CMD_SAMPLE_RATE_SET= 0x06, + CMD_BASEBAND_FILTER_BANDWIDTH_SET = 0x07, + CMD_BOARD_ID_READ = 0x0e, + CMD_VERSION_STRING_READ= 0x0f, + CMD_SET_FREQ = 0x10, + CMD_SET_LNA_GAIN = 0x13, + CMD_SET_VGA_GAIN = 0x14, +}; + +/* + * bEndpointAddress 0x81 EP 1 IN + * Transfer TypeBulk + * wMaxPacketSize 0x0200 1x 512 bytes + */ +#define MAX_BULK_BUFS(6) +#define BULK_BUFFER_SIZE (128 * 512) + +static const struct v4l2_frequency_band bands_adc[] = { + { + .tuner = 0, + .type = V4L2_TUNER_ADC, + .index = 0, + .capability = V4L2_TUNER_CAP_1HZ | V4L2_TUNER_CAP_FREQ_BANDS, + .rangelow = 20, + .rangehigh = 2400, + }, +}; + +static const struct v4l2_frequency_band bands_rf[] = { + { +
[PATCH 1/5] libdvbv5: Remove dvbsat_polarization_name (same as dvb_sat_pol_name)
Signed-off-by: Gregor Jasny gja...@googlemail.com --- lib/include/libdvbv5/dvb-sat.h | 2 -- lib/libdvbv5/dvb-sat.c | 7 --- 2 files changed, 9 deletions(-) diff --git a/lib/include/libdvbv5/dvb-sat.h b/lib/include/libdvbv5/dvb-sat.h index a414448..f14e7e4 100644 --- a/lib/include/libdvbv5/dvb-sat.h +++ b/lib/include/libdvbv5/dvb-sat.h @@ -37,8 +37,6 @@ struct dvb_sat_lnb { struct dvb_v5_fe_parms; -extern const char *dvbsat_polarization_name[5]; - #ifdef __cplusplus extern C { #endif diff --git a/lib/libdvbv5/dvb-sat.c b/lib/libdvbv5/dvb-sat.c index 795524a..d0a6076 100644 --- a/lib/libdvbv5/dvb-sat.c +++ b/lib/libdvbv5/dvb-sat.c @@ -405,10 +405,3 @@ ret: return rc; } -const char *dvbsat_polarization_name[5] = { - OFF, - H, - V, - L, - R, -}; -- 2.1.0 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 0/5] Further clean up libdvbv5
Hello, Here you'll find some patches to clean up libdvbv5. I tried to reduce exported symbols of the shared library to easy maintenance in the future. Thanks, Gregor Gregor Jasny (5): libdvbv5: Remove dvbsat_polarization_name (same as dvb_sat_pol_name) libdvbv5: Rename and hide charset definitions libdvbv5: Hide unused and unexposed cnr_to_qual_s tables libdvbv5: Make dvb_xxx_charset const strings libdvbv5: Make dummy_fe static lib/include/libdvbv5/descriptors.h | 2 -- lib/include/libdvbv5/dvb-sat.h | 2 -- lib/libdvbv5/descriptors.c | 3 --- lib/libdvbv5/descriptors/desc_event_extended.c | 2 +- lib/libdvbv5/descriptors/desc_event_short.c| 4 ++-- lib/libdvbv5/descriptors/desc_network_name.c | 2 +- lib/libdvbv5/descriptors/desc_service.c| 4 ++-- lib/libdvbv5/descriptors/desc_ts_info.c| 2 +- lib/libdvbv5/dvb-fe.c | 6 +++--- lib/libdvbv5/dvb-sat.c | 7 --- lib/libdvbv5/parse_string.c| 12 lib/libdvbv5/parse_string.h| 7 +-- lib/libdvbv5/tables/vct.c | 2 +- 13 files changed, 24 insertions(+), 31 deletions(-) -- 2.1.0 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 4/5] libdvbv5: Make dvb_xxx_charset const strings
Signed-off-by: Gregor Jasny gja...@googlemail.com --- lib/libdvbv5/parse_string.c | 13 +++-- lib/libdvbv5/parse_string.h | 8 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/lib/libdvbv5/parse_string.c b/lib/libdvbv5/parse_string.c index db47c3a..081b2f8 100644 --- a/lib/libdvbv5/parse_string.c +++ b/lib/libdvbv5/parse_string.c @@ -35,8 +35,8 @@ #define CS_OPTIONS //TRANSLIT -char *dvb_default_charset = iso-8859-1; -char *dvb_output_charset = utf-8; +const char *dvb_default_charset = iso-8859-1; +const char *dvb_output_charset = utf-8; struct charset_conv { unsigned len; @@ -308,7 +308,7 @@ void iconv_to_charset(struct dvb_v5_fe_parms *parms, size_t destlen, const unsigned char *src, size_t len, - char *type, char *output_charset) + const char *type, const char *output_charset) { char out_cs[strlen(output_charset) + 1 + sizeof(CS_OPTIONS)]; char *p = dest; @@ -331,7 +331,7 @@ void iconv_to_charset(struct dvb_v5_fe_parms *parms, static void charset_conversion(struct dvb_v5_fe_parms *parms, char **dest, const unsigned char *s, size_t len, - char *type, char *output_charset) + const char *type, const char *output_charset) { size_t destlen = len * 3; int need_conversion = 1; @@ -371,10 +371,11 @@ static void charset_conversion(struct dvb_v5_fe_parms *parms, char **dest, const void parse_string(struct dvb_v5_fe_parms *parms, char **dest, char **emph, const unsigned char *src, size_t len, - char *default_charset, char *output_charset) + const char *default_charset, const char *output_charset) { size_t destlen, i, len2 = 0; - char *p, *p2, *type = default_charset; + char *p, *p2; + const char *type = default_charset; unsigned char *tmp1 = NULL, *tmp2 = NULL; const unsigned char *s; int emphasis = 0; diff --git a/lib/libdvbv5/parse_string.h b/lib/libdvbv5/parse_string.h index e269ff3..48ae6ec 100644 --- a/lib/libdvbv5/parse_string.h +++ b/lib/libdvbv5/parse_string.h @@ -28,14 +28,14 @@ void iconv_to_charset(struct dvb_v5_fe_parms *parms, size_t destlen, const unsigned char *src, size_t len, - char *type, char *output_charset); + const char *type, const char *output_charset); void parse_string(struct dvb_v5_fe_parms *parms, char **dest, char **emph, const unsigned char *src, size_t len, - char *default_charset, char *output_charset); + const char *default_charset, const char *output_charset); -extern char *dvb_default_charset; -extern char *dvb_output_charset; +extern const char *dvb_default_charset; +extern const char *dvb_output_charset; #if HAVE_VISIBILITY #pragma GCC visibility pop -- 2.1.0 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 3/5] libdvbv5: Hide unused and unexposed cnr_to_qual_s tables
Signed-off-by: Gregor Jasny gja...@googlemail.com --- lib/libdvbv5/dvb-fe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libdvbv5/dvb-fe.c b/lib/libdvbv5/dvb-fe.c index 013edd6..6471f68 100644 --- a/lib/libdvbv5/dvb-fe.c +++ b/lib/libdvbv5/dvb-fe.c @@ -944,7 +944,7 @@ struct cnr_to_qual_s dvb_s2_cnr_2_qual[] = { * Minimum values from ARIB STD-B21 for DVB_QUAL_OK. * As ARIB doesn't define a max value, assume +2dB for DVB_QUAL_GOOD */ -struct cnr_to_qual_s isdb_t_cnr_2_qual[] = { +static struct cnr_to_qual_s isdb_t_cnr_2_qual[] = { { DQPSK, FEC_1_2, 6.2, 8.2}, { DQPSK, FEC_2_3, 7.7, 9.7}, { DQPSK, FEC_3_4, 8.7, 10.7}, @@ -974,7 +974,7 @@ struct cnr_to_qual_s isdb_t_cnr_2_qual[] = { * Values obtained from table A.1 of ETSI EN 300 744 v1.6.1 * OK corresponds to Ricean fading; Good to Rayleigh fading */ -struct cnr_to_qual_s dvb_t_cnr_2_qual[] = { +static struct cnr_to_qual_s dvb_t_cnr_2_qual[] = { { QPSK, FEC_1_2, 4.1, 5.9}, { QPSK, FEC_2_3, 6.1, 9.6}, { QPSK, FEC_3_4, 7.2, 12.4}, -- 2.1.0 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 5/5] libdvbv5: Make dummy_fe static
Signed-off-by: Gregor Jasny gja...@googlemail.com --- lib/libdvbv5/dvb-fe.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libdvbv5/dvb-fe.c b/lib/libdvbv5/dvb-fe.c index 6471f68..c260674 100644 --- a/lib/libdvbv5/dvb-fe.c +++ b/lib/libdvbv5/dvb-fe.c @@ -35,7 +35,7 @@ static void dvb_v5_free(struct dvb_v5_fe_parms *parms) free(parms); } -struct dvb_v5_fe_parms dummy_fe; +static struct dvb_v5_fe_parms dummy_fe; struct dvb_v5_fe_parms *dvb_fe_dummy() { dummy_fe.logfunc = dvb_default_log; -- 2.1.0 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 2/5] libdvbv5: Rename and hide charset definitions
Signed-off-by: Gregor Jasny gja...@googlemail.com --- lib/include/libdvbv5/descriptors.h | 2 -- lib/libdvbv5/descriptors.c | 3 --- lib/libdvbv5/descriptors/desc_event_extended.c | 2 +- lib/libdvbv5/descriptors/desc_event_short.c| 4 ++-- lib/libdvbv5/descriptors/desc_network_name.c | 2 +- lib/libdvbv5/descriptors/desc_service.c| 4 ++-- lib/libdvbv5/descriptors/desc_ts_info.c| 2 +- lib/libdvbv5/parse_string.c| 3 +++ lib/libdvbv5/parse_string.h| 3 +++ lib/libdvbv5/tables/vct.c | 2 +- 10 files changed, 14 insertions(+), 13 deletions(-) diff --git a/lib/include/libdvbv5/descriptors.h b/lib/include/libdvbv5/descriptors.h index 88b8ad2..47738d8 100644 --- a/lib/include/libdvbv5/descriptors.h +++ b/lib/include/libdvbv5/descriptors.h @@ -38,8 +38,6 @@ struct dvb_v5_fe_parms; typedef void (*dvb_table_init_func)(struct dvb_v5_fe_parms *parms, const uint8_t *buf, ssize_t buflen, void **table); extern const dvb_table_init_func dvb_table_initializers[256]; -extern char *default_charset; -extern char *output_charset; #define bswap16(b) do {\ b = ntohs(b); \ diff --git a/lib/libdvbv5/descriptors.c b/lib/libdvbv5/descriptors.c index 5f61332..8e7ebb1 100644 --- a/lib/libdvbv5/descriptors.c +++ b/lib/libdvbv5/descriptors.c @@ -96,9 +96,6 @@ const dvb_table_init_func dvb_table_initializers[256] = { [ATSC_TABLE_CVCT]= TABLE_INIT(atsc_table_vct), }; -char *default_charset = iso-8859-1; -char *output_charset = utf-8; - int dvb_desc_parse(struct dvb_v5_fe_parms *parms, const uint8_t *buf, uint16_t buflen, struct dvb_desc **head_desc) { diff --git a/lib/libdvbv5/descriptors/desc_event_extended.c b/lib/libdvbv5/descriptors/desc_event_extended.c index 6af38f2..71e747a 100644 --- a/lib/libdvbv5/descriptors/desc_event_extended.c +++ b/lib/libdvbv5/descriptors/desc_event_extended.c @@ -59,7 +59,7 @@ int dvb_desc_event_extended_init(struct dvb_v5_fe_parms *parms, const uint8_t *b len = *buf; len1 = len; buf++; - parse_string(parms, event-text, event-text_emph, buf, len1, default_charset, output_charset); + parse_string(parms, event-text, event-text_emph, buf, len1, dvb_default_charset, dvb_output_charset); buf += len; return 0; } diff --git a/lib/libdvbv5/descriptors/desc_event_short.c b/lib/libdvbv5/descriptors/desc_event_short.c index adb38fe..9b19269 100644 --- a/lib/libdvbv5/descriptors/desc_event_short.c +++ b/lib/libdvbv5/descriptors/desc_event_short.c @@ -42,7 +42,7 @@ int dvb_desc_event_short_init(struct dvb_v5_fe_parms *parms, const uint8_t *buf, len = buf[0]; buf++; len1 = len; - parse_string(parms, event-name, event-name_emph, buf, len1, default_charset, output_charset); + parse_string(parms, event-name, event-name_emph, buf, len1, dvb_default_charset, dvb_output_charset); buf += len; event-text = NULL; @@ -50,7 +50,7 @@ int dvb_desc_event_short_init(struct dvb_v5_fe_parms *parms, const uint8_t *buf, len = buf[0]; len2 = len; buf++; - parse_string(parms, event-text, event-text_emph, buf, len2, default_charset, output_charset); + parse_string(parms, event-text, event-text_emph, buf, len2, dvb_default_charset, dvb_output_charset); buf += len; return 0; } diff --git a/lib/libdvbv5/descriptors/desc_network_name.c b/lib/libdvbv5/descriptors/desc_network_name.c index a34a27f..17cdbd4 100644 --- a/lib/libdvbv5/descriptors/desc_network_name.c +++ b/lib/libdvbv5/descriptors/desc_network_name.c @@ -33,7 +33,7 @@ int dvb_desc_network_name_init(struct dvb_v5_fe_parms *parms, const uint8_t *buf len1 = len; net-network_name = NULL; net-network_name_emph = NULL; - parse_string(parms, net-network_name, net-network_name_emph, buf, len1, default_charset, output_charset); + parse_string(parms, net-network_name, net-network_name_emph, buf, len1, dvb_default_charset, dvb_output_charset); buf += len; return 0; } diff --git a/lib/libdvbv5/descriptors/desc_service.c b/lib/libdvbv5/descriptors/desc_service.c index 069317a..6858c32 100644 --- a/lib/libdvbv5/descriptors/desc_service.c +++ b/lib/libdvbv5/descriptors/desc_service.c @@ -37,7 +37,7 @@ int dvb_desc_service_init(struct dvb_v5_fe_parms *parms, const uint8_t *buf, str len = buf[0]; buf++; len1 = len; - parse_string(parms, service-provider, service-provider_emph, buf, len1, default_charset, output_charset); + parse_string(parms, service-provider, service-provider_emph, buf, len1, dvb_default_charset, dvb_output_charset); buf += len; service-name = NULL; @@ -45,7 +45,7 @@ int dvb_desc_service_init(struct dvb_v5_fe_parms *parms, const uint8_t *buf, str len = buf[0]; len2 = len; buf++; -
Re: [PATCHv2] videobuf2-core: take mmap_sem before calling __qbuf_userptr
Hi Hans, Thank you for the patch. On Friday 22 August 2014 23:31:31 Hans Verkuil wrote: (Changes since v1: fix the embarrassing bug where mmap_sem wasn't initialized) Commit f035eb4e976ef5a059e30bc91cfd310ff030a7d3 (videobuf2: fix lockdep warning) unfortunately removed the mmap_sem lock that is needed around the call to __qbuf_userptr. Amazingly nobody noticed this (especially me as the author) until Jan Kara pointed this out to me. Signed-off-by: Hans Verkuil hans.verk...@cisco.com Reported-by: Jan Kara j...@suse.cz Acked-by: Laurent Pinchart laurent.pinch...@ideasonboard.com but please see below for one small comment. --- drivers/media/v4l2-core/videobuf2-core.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/media/v4l2-core/videobuf2-core.c b/drivers/media/v4l2-core/videobuf2-core.c index 5b808e2..a0ab6af 100644 --- a/drivers/media/v4l2-core/videobuf2-core.c +++ b/drivers/media/v4l2-core/videobuf2-core.c @@ -1591,6 +1591,7 @@ static void __enqueue_in_driver(struct vb2_buffer *vb) static int __buf_prepare(struct vb2_buffer *vb, const struct v4l2_buffer *b) { struct vb2_queue *q = vb-vb2_queue; + struct rw_semaphore *mmap_sem; Do we really need the local variable ? int ret; ret = __verify_length(vb, b); @@ -1627,7 +1628,10 @@ static int __buf_prepare(struct vb2_buffer *vb, const struct v4l2_buffer *b) ret = __qbuf_mmap(vb, b); break; case V4L2_MEMORY_USERPTR: + mmap_sem = current-mm-mmap_sem; + down_read(mmap_sem); ret = __qbuf_userptr(vb, b); + up_read(mmap_sem); break; case V4L2_MEMORY_DMABUF: ret = __qbuf_dmabuf(vb, b); -- Regards, Laurent Pinchart -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 0/5] Digital Devices PCIe bridge update to 0.9.15a
Ok, got it. I just thought it was replacing the current driver with the new one - and that seemed to be it. Didn't know there was such a lot of work left before it's merged :o Sorry and good luck! -Bjoern On Sa, 2014-08-23 at 17:05 +0300, Antti Palosaari wrote: Moikka That patchset is simply far away from merge. Tons of issues to be fixed. It is huge amount of work to get that all in. I could estimate one month full time work even my experience is not enough. And I simply don't want to waste that much money from my pockets, it is many thousand euros. So I do it, if I do, on my schedule. There is many separate issues which needs to be done. It is not something one people should do all. For example mainlining that DVB-T/T2/C/C2 demod driver. Another thing is DVB-C2 API, which is not much coding, but a lot of specification. You need to read and *understand* DVB-C2 spec and on some level other specs (mostly DVB-T2) in order to add missing pieces correctly to DVB API. If you are not coder, start here. Antti On 08/23/2014 02:50 PM, Bjoern wrote: Hi all, It's been 3 weeks since these patches were submitted - have they been merged yet? If not - what's the problem? Who has to check this? I'm not the only one longing for driver updated support of ddbridge by default, and it would really be nice if there was some progress here. Antti did a lot of work here for all us ddbridge users. Regards, Bjoern On Sa, 2014-08-02 at 06:48 +0300, Antti Palosaari wrote: After cold power-on, my device wasn't able to find DuoFlex C/C2/T/T2 Expansion card, which I added yesterday. I looked old and new drivers and tried many things, but no success. Old kernel driver was ages, many years, behind manufacturer current Linux driver and there has been a tons of changes. So I ended up upgrading Linux kernel driver to 0.9.15a (it was 0.5). Now it is very near Digital Devices official driver, only modulator and network streaming stuff is removed and CI is abusing SEC like earlier also. Few device models are not supported due to missing kernel driver or missing device profile. Those devices are based of following DTV frontend chipsets: MaxLinear MxL5xx STMicroelectronics STV0910 STMicroelectronics STV0367 Tree for testing is here: http://git.linuxtv.org/cgit.cgi/anttip/media_tree.git/log/?h=digitaldevices regards Antti Antti Palosaari (5): cxd2843: do not call get_if_frequency() when it is NULL ddbridge: disable driver building ddbridge: remove driver temporarily ddbridge: add needed files from manufacturer driver 0.9.15a ddbridge: clean up driver for release drivers/media/dvb-frontends/cxd2843.c |3 +- drivers/media/pci/ddbridge/Makefile|2 - drivers/media/pci/ddbridge/ddbridge-core.c | 3175 +++- drivers/media/pci/ddbridge/ddbridge-i2c.c | 232 ++ drivers/media/pci/ddbridge/ddbridge-regs.h | 347 ++- drivers/media/pci/ddbridge/ddbridge.c | 456 drivers/media/pci/ddbridge/ddbridge.h | 407 +++- 7 files changed, 3518 insertions(+), 1104 deletions(-) create mode 100644 drivers/media/pci/ddbridge/ddbridge-i2c.c create mode 100644 drivers/media/pci/ddbridge/ddbridge.c -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
cron job: media_tree daily build: ERRORS
This message is generated daily by a cron job that builds media_tree for the kernels and architectures in the list below. Results of the daily build of media_tree: date: Sun Aug 24 04:00:16 CEST 2014 git branch: test git hash: b250392f7b5062cf026b1423e27265e278fd6b30 gcc version:i686-linux-gcc (GCC) 4.9.1 sparse version: v0.5.0-20-g7abd8a7 host hardware: x86_64 host os:3.16-0.slh.2-amd64 linux-git-arm-at91: ERRORS linux-git-arm-davinci: ERRORS linux-git-arm-exynos: ERRORS linux-git-arm-mx: ERRORS linux-git-arm-omap: ERRORS linux-git-arm-omap1: ERRORS linux-git-arm-pxa: ERRORS linux-git-blackfin: ERRORS linux-git-i686: OK linux-git-m32r: OK linux-git-mips: ERRORS linux-git-powerpc64: OK linux-git-sh: ERRORS linux-git-x86_64: OK linux-2.6.32.27-i686: ERRORS linux-2.6.33.7-i686: ERRORS linux-2.6.34.7-i686: ERRORS linux-2.6.35.9-i686: ERRORS linux-2.6.36.4-i686: ERRORS linux-2.6.37.6-i686: ERRORS linux-2.6.38.8-i686: ERRORS linux-2.6.39.4-i686: ERRORS linux-3.0.60-i686: ERRORS linux-3.1.10-i686: ERRORS linux-3.2.37-i686: ERRORS linux-3.3.8-i686: ERRORS linux-3.4.27-i686: ERRORS linux-3.5.7-i686: ERRORS linux-3.6.11-i686: ERRORS linux-3.7.4-i686: ERRORS linux-3.8-i686: ERRORS linux-3.9.2-i686: ERRORS linux-3.10.1-i686: ERRORS linux-3.11.1-i686: ERRORS linux-3.12.23-i686: ERRORS linux-3.13.11-i686: ERRORS linux-3.14.9-i686: ERRORS linux-3.15.2-i686: ERRORS linux-3.16-i686: ERRORS linux-2.6.32.27-x86_64: ERRORS linux-2.6.33.7-x86_64: ERRORS linux-2.6.34.7-x86_64: ERRORS linux-2.6.35.9-x86_64: ERRORS linux-2.6.36.4-x86_64: ERRORS linux-2.6.37.6-x86_64: ERRORS linux-2.6.38.8-x86_64: ERRORS linux-2.6.39.4-x86_64: ERRORS linux-3.0.60-x86_64: ERRORS linux-3.1.10-x86_64: ERRORS linux-3.2.37-x86_64: ERRORS linux-3.3.8-x86_64: ERRORS linux-3.4.27-x86_64: ERRORS linux-3.5.7-x86_64: ERRORS linux-3.6.11-x86_64: ERRORS linux-3.7.4-x86_64: ERRORS linux-3.8-x86_64: ERRORS linux-3.9.2-x86_64: ERRORS linux-3.10.1-x86_64: ERRORS linux-3.11.1-x86_64: ERRORS linux-3.12.23-x86_64: ERRORS linux-3.13.11-x86_64: ERRORS linux-3.14.9-x86_64: ERRORS linux-3.15.2-x86_64: ERRORS linux-3.16-x86_64: ERRORS apps: WARNINGS spec-git: OK sparse: WARNINGS Detailed results are available here: http://www.xs4all.nl/~hverkuil/logs/Sunday.log Full logs are available here: http://www.xs4all.nl/~hverkuil/logs/Sunday.tar.bz2 The Media Infrastructure API from this daily build is here: http://www.xs4all.nl/~hverkuil/spec/media.html -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html