cron job: media_tree daily build: WARNINGS
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: Mon Jun 5 05:00:17 CEST 2017 media-tree git hash:af3a8480646cf5816528c44210dd4a70fb2026e9 media_build git hash: 0d8b3274e29b597780719e7ce1b3b460241a5395 v4l-utils git hash: ef074cf5500b7dd62e6eb3527ec47a914c7189ca gcc version:i686-linux-gcc (GCC) 7.1.0 sparse version: v0.5.0-3553-g78b2ea6 smatch version: v0.5.0-3553-g78b2ea6 host hardware: x86_64 host os:4.9.0-164 linux-git-arm-at91: WARNINGS linux-git-arm-davinci: WARNINGS linux-git-arm-multi: WARNINGS linux-git-arm-pxa: OK linux-git-blackfin-bf561: OK linux-git-i686: OK linux-git-m32r: OK linux-git-mips: OK linux-git-powerpc64: OK linux-git-sh: OK linux-git-x86_64: WARNINGS linux-2.6.36.4-i686: WARNINGS linux-2.6.37.6-i686: WARNINGS linux-2.6.38.8-i686: WARNINGS linux-2.6.39.4-i686: OK linux-3.0.60-i686: OK linux-3.1.10-i686: OK linux-3.2.37-i686: OK linux-3.3.8-i686: OK linux-3.4.27-i686: OK linux-3.5.7-i686: OK linux-3.6.11-i686: OK linux-3.7.4-i686: OK linux-3.8-i686: OK linux-3.9.2-i686: OK linux-3.10.1-i686: WARNINGS linux-3.11.1-i686: OK linux-3.12.67-i686: OK linux-3.13.11-i686: WARNINGS linux-3.14.9-i686: WARNINGS linux-3.15.2-i686: WARNINGS linux-3.16.7-i686: WARNINGS linux-3.17.8-i686: WARNINGS linux-3.18.7-i686: WARNINGS linux-3.19-i686: WARNINGS linux-4.0.9-i686: WARNINGS linux-4.1.33-i686: WARNINGS linux-4.2.8-i686: WARNINGS linux-4.3.6-i686: WARNINGS linux-4.4.22-i686: WARNINGS linux-4.5.7-i686: WARNINGS linux-4.6.7-i686: WARNINGS linux-4.7.5-i686: WARNINGS linux-4.8-i686: OK linux-4.9.26-i686: OK linux-4.10.14-i686: OK linux-4.11-i686: OK linux-4.12-rc1-i686: OK linux-2.6.36.4-x86_64: WARNINGS linux-2.6.37.6-x86_64: WARNINGS linux-2.6.38.8-x86_64: WARNINGS linux-2.6.39.4-x86_64: WARNINGS linux-3.0.60-x86_64: WARNINGS linux-3.1.10-x86_64: WARNINGS linux-3.2.37-x86_64: WARNINGS linux-3.3.8-x86_64: WARNINGS linux-3.4.27-x86_64: WARNINGS linux-3.5.7-x86_64: WARNINGS linux-3.6.11-x86_64: WARNINGS linux-3.7.4-x86_64: WARNINGS linux-3.8-x86_64: WARNINGS linux-3.9.2-x86_64: WARNINGS linux-3.10.1-x86_64: WARNINGS linux-3.11.1-x86_64: WARNINGS linux-3.12.67-x86_64: WARNINGS linux-3.13.11-x86_64: WARNINGS linux-3.14.9-x86_64: WARNINGS linux-3.15.2-x86_64: WARNINGS linux-3.16.7-x86_64: WARNINGS linux-3.17.8-x86_64: WARNINGS linux-3.18.7-x86_64: WARNINGS linux-3.19-x86_64: WARNINGS linux-4.0.9-x86_64: WARNINGS linux-4.1.33-x86_64: WARNINGS linux-4.2.8-x86_64: WARNINGS linux-4.3.6-x86_64: WARNINGS linux-4.4.22-x86_64: WARNINGS linux-4.5.7-x86_64: WARNINGS linux-4.6.7-x86_64: WARNINGS linux-4.7.5-x86_64: WARNINGS linux-4.8-x86_64: WARNINGS linux-4.9.26-x86_64: WARNINGS linux-4.10.14-x86_64: WARNINGS linux-4.11-x86_64: WARNINGS linux-4.12-rc1-x86_64: WARNINGS apps: WARNINGS spec-git: OK sparse: WARNINGS Detailed results are available here: http://www.xs4all.nl/~hverkuil/logs/Monday.log Full logs are available here: http://www.xs4all.nl/~hverkuil/logs/Monday.tar.bz2 The Media Infrastructure API from this daily build is here: http://www.xs4all.nl/~hverkuil/spec/index.html
Updated frequencies for nz-AucklandInfill and nz-AucklandWaiatarua
-- Jean-Francois Pirus | Technical Manager franc...@clearfield.com | Mob +64 21 640 779 | DDI +64 9 282 3401 Clearfield Software Ltd | Ph +64 9 358 2081 | www.clearfield.com DTT UHF Band Plan -Jan 2016-_.pdf Description: Adobe PDF document # Waiatarua, Auckland NZ # # Horizontal Polarisation # # Channel allocation details for NZ can be found at # http://en.wikipedia.org/wiki/Freeview_(New_Zealand) #https://www.rsm.govt.nz/projects-auctions/completed/digital-switchover-and-the-digital-dividend/digital-tv-switchover #https://www.rsm.govt.nz/online-services-resources/pdf-and-documents-library/publications-and-guides/broadcasting/digital-television-channel-usage/table-of-digital-television-channel-useage # #TVNZ [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 53800 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO #MediaWorks [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 57000 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO #WorldTV [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 58600 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO #Kordia [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 60200 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO # Pinehill, Remuera, Sky Tower, Auckland Infill, Auckland NZ # # Vertical Polarisation # # Channel allocation details for NZ can be found at # http://en.wikipedia.org/wiki/Freeview_(New_Zealand) #https://www.rsm.govt.nz/projects-auctions/completed/digital-switchover-and-the-digital-dividend/digital-tv-switchover #https://www.rsm.govt.nz/online-services-resources/pdf-and-documents-library/publications-and-guides/broadcasting/digital-television-channel-usage/table-of-digital-television-channel-useage # #TVNZ [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 53000 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO #MediaWorks [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 56200 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO #WorldTV [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 57800 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO #Kordia [CHANNEL] DELIVERY_SYSTEM = DVBT FREQUENCY = 59400 BANDWIDTH_HZ = 800 CODE_RATE_HP = 3/4 CODE_RATE_LP = NONE MODULATION = QAM/64 TRANSMISSION_MODE = 8K GUARD_INTERVAL = 1/16 HIERARCHY = NONE INVERSION = AUTO
Re: [RFC PATCH v3 00/11] [media]: vimc: Virtual Media Control VPU's
I forgot to mention that this patch series is also available here https://github.com/helen-fornazier/opw-staging/tree/z/sent/vimc/vpu/v3 On 2017-06-02 11:58 PM, Helen Koike wrote: This patch series improves the current video processing units in vimc (by adding more controls to the sensor and capture node, allowing the user to configure different frame formats) and also adds a debayer and a scaler node. The debayer transforms the bayer format image received in its sink pad to a bayer format by averaging the pixels within a mean window. The scaler only scales up the image for now. In this version I added an optimization where the image can be generated direct in the capture device instead of being generated in the sensor and processed by each node in the topology. I also changed the approach to implement each node of the topology as a submodule to make the code component oriented, where new components won't need to touch vimc-core and won't need a header file. Please, let me know your view regarding this new approach. Changes in v3: [media] vimc: sen: Integrate the tpg on the sensor - Declare frame_size as a local variable - Set tpg frame format before starting kthread - s_stream(sd, 1): return 0 if stream is already enabled - s_stream(sd, 0): return 0 if stream is already disabled - s_stream: propagate error from kthread_stop - coding style when calling tpg_s_bytesperline - s/vimc_thread_sen/vimc_sen_tpg_thread - fix multiline comment [media] vimc: Move common code from the core - This is a new patch in the series [media] vimc: Add vimc_ent_sd_* helper functions - add it in vimc-common.c instead in vimc-core.c - fix vimc_ent_sd_register, use function parameter to assign sd->entity.function instead of using a fixed value - rename commit to add the "common" tag [media] vimc: Add vimc_pipeline_s_stream in the core - add it in vimc-common instead of vimc-core - rename commit with "common" tag [media] vimc: common: Add vimc_link_validate - this is a new patch in the series [media] vimc: sen: Support several image formats - remove support for V4L2_FIELD_ALTERNATE (left as TODO for now) - clamp image size to an even dimension for height and width - set default values for colorimetry using _DEFAULT macro - reset all values of colorimetry to _DEFAULT if user tries to set an invalid colorspace [media] vimc: cap: Support several image formats - use *_DEFAULT macros for colorimetry in the default format - clamp height and width of the image by an even value - is user try to set colorspace to an invalid format, set all colorimetry parameters to _DEFAULT - remove V4L2_FMT_FLAG_COMPRESSED from vimc_cap_enum_fmt_vid_cap - remove V4L2_BUF_TYPE_VIDEO_CAPTURE from vimc_cap_enum_fmt_vid_cap - increase step_width and step_height to 2 instead of 1 - remove link validate function, use the one in vimc-common.c [media] vimc: Optimize frame generation through the pipe - This is a new patch in the series [media] vimc: Subdevices as modules - This is a new patch in the series [media] vimc: deb: Add debayer filter - Declare frame_size as a local variable - s_stream(sd, 1): return 0 if stream is already enabled - s_stream(sd, 0): return 0 if stream is already disabled - s_stream: add ret variable to propagate return errors - structure code to be a module, use platform_driver and component system - fix multiline comment - s/thought/through - s/RGB/RGB888 - clamp height and width of the image by an even value - if user try to set colorspace to an invalid format, set all colorimetry parameters to _DEFAULT - uset _DEFAULT for colorimetry in the default format [media] vimc: sca: Add scaler - Declare frame_size as a local variable - s_stream(sd, 1): return 0 if stream is already enabled - s_stream(sd, 0): return 0 if stream is already disabled - s_stream: add ret variable to propagate return errors - structure code to be a module, use platform_driver and component system - s/thought/through - clamp height and width of the image by an even value - if user try to set colorspace to an invalid format, set all colorimetry parameters to _DEFAULT - uset _DEFAULT for colorimetry in the default format Changes in v2: [media] vimc: sen: Integrate the tpg on the sensor - Fix include location - Select V4L2_TPG in Kconfig - configure tpg on streamon only - rm BUG_ON - coding style - remove V4L2_FIELD_ALTERNATE from tpg_s_field - remove V4L2_STD_PAL from tpg_fill_plane_buffer [media] vimc: Add vimc_ent_sd_* helper functions - Comments in vimc_ent_sd_init
[PATCH v1] [media] as3645a: Join string literals back
There is no need to split long string literals. Join them back. No functional change intended. Signed-off-by: Andy Shevchenko--- drivers/media/i2c/as3645a.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/media/i2c/as3645a.c b/drivers/media/i2c/as3645a.c index b6aeceea9850..af5db71a0888 100644 --- a/drivers/media/i2c/as3645a.c +++ b/drivers/media/i2c/as3645a.c @@ -294,8 +294,8 @@ static int as3645a_read_fault(struct as3645a *flash) dev_dbg(>dev, "Inductor Peak limit fault\n"); if (rval & AS_FAULT_INFO_INDICATOR_LED) - dev_dbg(>dev, "Indicator LED fault: " - "Short circuit or open loop\n"); + dev_dbg(>dev, + "Indicator LED fault: Short circuit or open loop\n"); dev_dbg(>dev, "%u connected LEDs\n", rval & AS_FAULT_INFO_LED_AMOUNT ? 2 : 1); @@ -310,8 +310,8 @@ static int as3645a_read_fault(struct as3645a *flash) dev_dbg(>dev, "Short circuit fault\n"); if (rval & AS_FAULT_INFO_OVER_VOLTAGE) - dev_dbg(>dev, "Over voltage fault: " - "Indicates missing capacitor or open connection\n"); + dev_dbg(>dev, + "Over voltage fault: Indicates missing capacitor or open connection\n"); return rval; } @@ -583,8 +583,8 @@ static int as3645a_registered(struct v4l2_subdev *sd) /* Verify the chip model and version. */ if (model != 0x01 || rfu != 0x00) { - dev_err(>dev, "AS3645A not detected " - "(model %d rfu %d)\n", model, rfu); + dev_err(>dev, + "AS3645A not detected (model %d rfu %d)\n", model, rfu); rval = -ENODEV; goto power_off; } -- 2.13.0
Re: [PATCH v7 16/34] [media] add Omnivision OV5640 sensor driver
On 06/03/2017 11:02 AM, Steve Longerbeam wrote: Hi Sakari, On 05/29/2017 11:56 PM, Sakari Ailus wrote: Hi Steve, On Mon, May 29, 2017 at 02:50:34PM -0700, Steve Longerbeam wrote: + +static int ov5640_s_ctrl(struct v4l2_ctrl *ctrl) +{ +struct v4l2_subdev *sd = ctrl_to_sd(ctrl); +struct ov5640_dev *sensor = to_ov5640_dev(sd); +int ret = 0; + +mutex_lock(>lock); Could you use the same lock for the controls as you use for the rest? Just setting handler->lock after handler init does the trick. Can you please rephrase, I don't follow. "same lock for the controls as you use for the rest" - there's only one device lock owned by this driver and I am already using that same lock. There's another in the control handler. You could use your own lock for the control handler as well. I still don't understand. Hi Sakari, sorry I see what you are referring to now. The lock in 'struct v4l2_ctrl_handler' can be overridden by a caller's own lock. Yes that's a good idea, I'll do that. Steve
[PATCH] uvcvideo: Hardcoded CTRL_QUERY GET_LEN for a lying device
Hello, I sent this patch on the linux-uvc ML but it seems effectively dead nowadays. This thread comes after two others[1][2] about a similar issue. I own a USB video microscope[3] from Dino-Lite. Even if the constructor does not advertise it as being supported on Linux, it is mostly a "good citizen" camera: it registers as a standard USB video device and as such, it is properly recognized by uvcvideo. This device is equipped with an integrated illuminator/lamp -- a set of LEDs. After some research (using a USB sniffer) I managed to identify the non-standard XU control used to switch this lamp on and off: one shall send either 80 01 f0 (off) or 80 01 f1 (on) to XU control unit 4 selector 3. So at first I tried to send a raw ctrl_set using: $ uvcdynctrl -S 4:3 8001f0 [...] query control size of : 1 [...] ERROR: Unable to set the control value: Invalid argument. (Code: 3) Indeed, the device reports this XU as being only 1 in length, but the payload has to be 3 bytes. So I assume there is a bug (or deliberate inaccuracy) in the GET_LEN reply from the device firmware. To overcome this issue, I compiled a patched version of uvcvideo in which uvc_query_ctrl[4] returns an hardcoded size of 3 for this specific device & UX control. I was finally able to switch the lamp on and off: $ uvcdynctrl -S 4:3 8001f0 [39252.854261] uvcvideo: Fixing USB a168:0870 UX control 4/3 len: 1 -> 3 [...] query control size of : 3 [...] set value of : (LE)0x8001f0 (BE)0xf00180 [lamp goes off] You can find the patch below. I abstracted it in the spirit of uvc_ctrl_fixup_xu_info[5] so we can add more entries to the table in the future. What do you think, would it be relevant to merge? AFAICT there is no API in uvcvideo or v4l for controlling this kind of illuminator/lamp features, so giving userland the ability to control the devices via XU by lying seems to be the only solution. Best, Alexandre [1] "Dino-Lite uvc support", 2008, https://sourceforge.net/p/linux-uvc/mailman/message/29831153/ [2] "switching light on device Dino-Lite Premier", 2013, https://sourceforge.net/p/linux-uvc/mailman/message/31219122/ [3] https://www.dinolite.us/products/digital-microscopes/usb/basic/am4111t [4] http://elixir.free-electrons.com/linux/v4.11/source/drivers/media/usb/uvc/uvc_video.c#L72 [5] http://elixir.free-electrons.com/linux/v4.11/source/drivers/media/usb/uvc/uvc_ctrl.c#L1593 Signed-off-by: Alexandre Macabies--- drivers/media/usb/uvc/uvc_video.c | 37 + 1 file changed, 37 insertions(+) diff --git a/drivers/media/usb/uvc/uvc_video.c b/drivers/media/usb/uvc/uvc_video.c index 07a6c833ef7b..839dc02b4f33 100644 --- a/drivers/media/usb/uvc/uvc_video.c +++ b/drivers/media/usb/uvc/uvc_video.c @@ -69,6 +69,40 @@ static const char *uvc_query_name(__u8 query) } } +static void uvc_fixup_query_ctrl_len(const struct uvc_device *dev, __u8 unit, + __u8 cs, void *data) +{ + struct uvc_ctrl_fixup { + struct usb_device_id id; + u8 unit; + u8 selector; + u16 len; + }; + + static const struct uvc_ctrl_fixup fixups[] = { + // Dino-Lite Premier (AM4111T) + { { USB_DEVICE(0xa168, 0x0870) }, 4, 3, 3 }, + }; + + unsigned int i; + + for (i = 0; i < ARRAY_SIZE(fixups); ++i) { + if (!usb_match_one_id(dev->intf, [i].id)) + continue; + + if (!(fixups[i].unit == unit && fixups[i].selector == cs)) + continue; + + uvc_trace(UVC_TRACE_CONTROL, + "Fixing USB %04x:%04x %u/%u GET_LEN: %u -> %u", + fixups[i].id.idVendor, fixups[i].id.idProduct, + unit, cs, + le16_to_cpup((__le16 *)data), fixups[i].len); + *((__le16 *)data) = cpu_to_le16(fixups[i].len); + break; + } +} + int uvc_query_ctrl(struct uvc_device *dev, __u8 query, __u8 unit, __u8 intfnum, __u8 cs, void *data, __u16 size) { @@ -83,6 +117,9 @@ int uvc_query_ctrl(struct uvc_device *dev, __u8 query, __u8 unit, return -EIO; } + if (query == UVC_GET_LEN && size == 2) + uvc_fixup_query_ctrl_len(dev, unit, cs, data); + return 0; } -- 2.13.0
Investment Interest & Offer
Re: Build fails Ubuntu 17.04 / "error: implicit declaration of function"
On Tue, May 30, 2017 at 09:35:03PM +0200, Karl Wallin wrote: > Hi! > > Sorry for not replying earlier, work. > I came so far as to download the patches (via n00bishly pasting the > actual content of the .patch-files into .patch-files since my git > cherry-pick command didn't work) but then after trying to apply them I > got a prompt with specifying the path of the file and didn't research > that further. > > I downloaded the latest release from GIT and now it actually builds!!! :D :D > > However it does not install :( > > "root@nuc-d54250wyk:/home/ubuntu/media_build# make install > make -C /home/ubuntu/media_build/v4l install > make[1]: Entering directory '/home/ubuntu/media_build/v4l' > make[1]: *** No rule to make target 'media-install', needed by 'install'. > Stop. > make[1]: Leaving directory '/home/ubuntu/media_build/v4l' > Makefile:15: recipe for target 'install' failed > make: *** [install] Error 2" > > I've gone into "v4l" and looked for a "media-install" file but haven't > found any. > > Perhaps this is something I've misunderstood and easy to fix so I > finally can install it? This was also noticed by Olli Salonen (see thread "media_build: fails to install"). I note there what the problem is but I don't know how to fix it. Vince