summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video
AgeCommit message (Collapse)Author
2009-08-07em28xx-cards: remove a code that doesn't seem to affect the webcamMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-07em28xx: properly reports some em2710 chipsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> As reported by hermann pitton <hermann-pitton@arcor.de>, some devices has a different chip id for em2710 (likely the older ones): em28xx: New device @ 480 Mbps (eb1a:2710, interface 0, class 0) em28xx #0: Identified as EM2710/EM2750/EM2751 webcam grabber (card=22) em28xx #0: em28xx chip ID = 17 Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-07em28xx: fix: some em2710 chips use a different vendor IDMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Thanks to hermann pitton <hermann-pitton@arcor.de> for pointing this new variation. Priority: normal Tested-by: hermann pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-07m9v011: add vflip/hflip controls to control mirror/upside downMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-06em28xx: Allow changing fps on webcamsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> em28xx doesn't have temporal scaling. However, on webcams, sensors are capable of changing the output rate. So, VIDIOC_[G|S]_PARM ioctls should be passed to the sensor for it to properly set frame rate. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-06mt9v011: Add support for controlling frame ratesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Implement g_parm/s_parm ioctls. Those are used to check the current frame rate (in fps) and to set it to a value. In practice, there are only 15 possible different speeds, due to chip limits. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-06em28xx: fix empire auto-detectDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Fixed eeprom hash table Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-08-06merge: http://www.kernellabs.com/hg/~dheitmueller/geniatech_x8000Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-06merge: http://kernellabs.com/hg/~mkrufky/hvr11x0Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-06soc-camera: fix recursive locking in .buf_queue()Guennadi Liakhovetski
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de> The .buf_queue() V4L2 driver method is called under spinlock_irqsave(q->irqlock,...), don't take the lock again inside the function. Reported-by: Antonio Ospite <ospite@studenti.unina.it> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- drivers/media/video/mx1_camera.c | 6 +----- drivers/media/video/mx3_camera.c | 19 ++++++++++--------- drivers/media/video/pxa_camera.c | 6 +----- drivers/media/video/sh_mobile_ceu_camera.c | 5 +---- 4 files changed, 13 insertions(+), 23 deletions(-)
2009-08-05media/zr364xx: fix build errorsMauro Carvalho Chehab
From: Randy Dunlap <randy.dunlap@oracle.com> Fix build errors in zr364xx by adding selects: zr364xx.c:(.text+0x195ed7): undefined reference to `videobuf_streamon' zr364xx.c:(.text+0x196030): undefined reference to `videobuf_dqbuf' zr364xx.c:(.text+0x1960c4): undefined reference to `videobuf_qbuf' zr364xx.c:(.text+0x196123): undefined reference to `videobuf_querybuf' zr364xx.c:(.text+0x196182): undefined reference to `videobuf_reqbufs' zr364xx.c:(.text+0x196224): undefined reference to `videobuf_queue_is_busy' zr364xx.c:(.text+0x196390): undefined reference to `videobuf_vmalloc_free' zr364xx.c:(.text+0x196571): undefined reference to `videobuf_iolock' zr364xx.c:(.text+0x196678): undefined reference to `videobuf_mmap_mapper' zr364xx.c:(.text+0x196760): undefined reference to `videobuf_poll_stream' zr364xx.c:(.text+0x19689a): undefined reference to `videobuf_read_one' zr364xx.c:(.text+0x1969ec): undefined reference to `videobuf_mmap_free' zr364xx.c:(.text+0x197862): undefined reference to `videobuf_queue_vmalloc_init' zr364xx.c:(.text+0x197a28): undefined reference to `videobuf_streamoff' zr364xx.c:(.text+0x198203): undefined reference to `videobuf_to_vmalloc' zr364xx.c:(.text+0x198603): undefined reference to `videobuf_streamoff' drivers/built-in.o: In function `free_buffer': zr364xx.c:(.text+0x19930c): undefined reference to `videobuf_vmalloc_free' drivers/built-in.o: In function `zr364xx_open': zr364xx.c:(.text+0x19a7de): undefined reference to `videobuf_queue_vmalloc_init' drivers/built-in.o: In function `read_pipe_completion': zr364xx.c:(.text+0x19b17f): undefined reference to `videobuf_to_vmalloc' Priority: normal Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-05merge: http://linuxtv.org/hg/~jfrancois/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-05merge: http://linuxtv.org/hg/~pinchartl/uvcvideo/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-05merge: v4l-dvbJean-Francois Moine
2009-08-04drivers/media/video/gspca: introduce missing kfreeMauro Carvalho Chehab
From: Julia Lawall <julia@diku.dk> Error handling code following a kmalloc should free the allocated data. Priority: normal Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: Erik Andrén <erik.andren@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-04em28xx: fix: some webcams don't have audio inputsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-04saa7134: fix the radio on Avermedia GO 007 FMMauro Carvalho Chehab
From: hermann pitton <hermann-pitton@arcor.de> We have support for radio on saa7133/35/31e cards with tda8290/8275(a) and 5.5MHz ceramic filter on the bridge chips since a while. It was previously not tested, if this card supports it too, but the old "ghost" radio with wrong filters doesn't work anymore. Thanks go to Pham Thanh Nam and Laszlo Kustan for reporting it working on that input. Priority: normal Signed-off-by: hermann pitton <hermann-pitton@arcor.de> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-04Fix incorrect type of tuner for the BeholdTV H6 cardMauro Carvalho Chehab
From: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Define correct tuner in config. Radio now works fine Priority: normal Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-10em28xx: fix: avoid having a bad colored image with webcamsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Register 0x13 seems to be a sort of image control, maybe gamma. Lower values produce better images, while higher values increases the contrast and shifts colors to green. 0xff produces a black image. If this register is left alone, a random value can be found at the register, producing weird results. This register doesn't seem to affect tv streams. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-10em28xx: Fix artifacts with Silvercrest webcamMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Silvercrest mt9v011 sensor produces a 640x480 image. However, previously, the code were getting only half of the lines and merging two consecutive frames to "produce" a 640x480 image. With the addition of progressive mode, now em28xx is working with a full image. However, when the number of lines is bigger than 240, the beginning of some odd lines are filled with blank. After lots of testing, and physically checking the device for a Xtal, it was noticed experimentally that mt9v011 is using em28xx XCLK as its clock. Due to that, changing XCLK value changes the maximum speed of the stream. At the tests, it were possible to produce up to 32 fps, using a 30 MHz XCLK. However, at that rate, the artifacts happen even at 320x240. Lower values of XCLK produces artifacts only at 640x480. At some values of xclk (for example XCLKK = 6 MHz, 640x480), it is possible to see an invalid sucession of artifacts with this pattern: .xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ..xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ....xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx .xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ..xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ....xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (where the dots represent the blanked pixels) So, it seems that a waveform in the format of a ramp is interferring at the image. The cause of this interference is currently unknown. Some possibilities are: - electrical interference (maybe this device is broken?); - some issue at mt9v011 programming; - some bug at em28xx chip. So, for now, let's be conservative and use a value of XCLK that we know for sure that it won't cause artifacts. As I'm waiting for more of such devices with different em28xx chipset revisions, I'll have the opportunity to double check the issue with other pieces of hardware. Later patches can vary XCLK depending on the vertical resolutions, if a proper fix is not discovered. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-10em28xx: Move the non-board dependent part to be outside em28xx_pre_card_setup()Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> em28xx_pre_card_setup() is meant to contain board-specific initialization. Also, as autodetection sometimes occur only after having i2c bus enabled, this function may need to be called later. Moving those setups to happen outside the function avoids calling it twice without need and without duplicating output lines at dmesg. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-09em28xx: Implement g/s_register via address matchMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-04em28xx: fix V4L2 API compliance: don't expose audio inputs for devices ↵Mauro Carvalho Chehab
without it From: Mauro Carvalho Chehab <mchehab@redhat.com> V4L2 API (chapter 1.5) states that: Drivers must implement all input ioctls when the device has one or more inputs, all output ioctls when the device has one or more outputs. When the device has any audio inputs or outputs the driver must set the V4L2_CAP_AUDIO flag in the struct v4l2_capability returned by the VIDIOC_QUERYCAP ioctl. So, devices without audio input should return -EINVAL. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-08-03em28xx: add support for Terratec Cinergy Hybrid T USB XS remote controlDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Add support for the remote control that comes with the Cinergy Hybrid T USB XS Thanks to Jelle de Jong for providing sample hardware to test with. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Cc: Jelle de Jong <jelledejong@powercraft.nl>
2009-08-03cx88: Disable xc3028 power management for Geniatech x8000Devin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> A user discovered that the Geniatech x8000 encountered a regression when the xc3028 power management was introduced. The xc3028 never recovers after setting the powerdown register, which is probably because the xc3028 reset GPIO is not properly configured. Since I do not have access to the hardware and thus cannot determine the correct GPIO configuration, just disable xc3028 power management on this board, which fixes the regression. Thanks to user "ritec" for reporting the issue and testing the fix. Priority: high Cc: rictec <rictec@netcabo.pt> Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-08-03cx88: fix regression in tuning for Geniatech X8000 MTDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> The introduction of the zl10353 i2c gate control broke support for the Geniatech board (which is not behind an i2 gate). Add the needed parameter. Priority: high Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-08-03gspca - jeilinj: New subdriver for Jeilin chip.Jean-Francois Moine
From: Theodore Kilgore <kilgota@auburn.edu> Priority: normal Signed-off-by: Theodore Kilgore <kilgota@auburn.edu> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-08-02gspca - vc032x: Bad h/v flip controls when inverted by default.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-08-01uvcvideo: Avoid flooding the kernel log with "unknown event type" messagesLaurent Pinchart
From: Laurent Pinchart <laurent.pinchart@skynet.be> The iSight sends non-UVC status events through the interrupt endpoint. Those invalid events are reported to the kernel log, resulting in a log flood. Only log the events when the UVC_TRACE_STATUS flag is set. Priority: high Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
2009-07-29gspca - main: Remove vidioc_s_std().Jean-Francois Moine
From: Marton Nemeth <nm127@freemail.hu> The vidioc_s_std() is not necessary when vdev->tvnorms == 0. Priority: normal Signed-off-by: Marton Nemeth <nm127@freemail.hu> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2009-07-02uvcvideo: Multiple streaming interfaces supportLaurent Pinchart
From: Laurent Pinchart <laurent.pinchart@skynet.be> Restructure the UVC descriptors parsing code to handle multiple streaming interfaces. The driver now creates a uvc_video_chain instance for each chain detected in the UVC control interface descriptors, and tries to register one video device per streaming endpoint. Priority: normal Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
2009-07-01gspca - stv06xx-hdcs: Correct the pixelformatErik Andrén
From: Erik Andrén <erik.andren@gmail.com> Priority: high Signed-off-by: Erik Andrén <erik.andren@gmail.com>
2009-07-01gspca - m5602-s5k4aa: Add vflip quirk for the Amilo Pa 2548Erik Andrén
From: Erik Andrén <erik.andren@gmail.com> Add vflip quirk for the Fujitsu Siemens Amilo Pa 2548 Priority: normal Signed-off-by: Erik Andrén <erik.andren@gmail.com>
2009-09-13merge: http://kernellabs.com/hg/~dheitmueller/em28xx-vbi3Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-09-13merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-coreMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-09-13merge: http://linuxtv.org/hg/~dougsland/em28xxMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-09-10em28xx: fix unused variable warningDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Remove unused variable from when I introduced the g_std() function. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-10em28xx: remove unneeded code that set VINCTRL registerDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Remove redundant call to set the vinctrl register. This eliminates any ambiguity as to how the register is configured (since it is now always set in em28xx_set_outfmt). This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-10em28xx: implement g_std v4l callDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> We need to implement the g_std call, or else the default norm always gets returned, which breaks VBI capturing if you had changed the standard to NTSC using s_std. I had temporarily changed the default norm to NTSC so that zvbi-ntsc-cc wouldn't choke, so now that we are returning the correct value, switch it back to PAL as the default. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-10em28xx: only advertise VBI capability if supportedDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Change the code so we only claim to support VBI if the underlying chipset actually has the support. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-10em28xx: do not create /dev/vbiX device if VBI not supportedDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Do not create the VBI device in cases where VBI is not supported on the target em28xx chip. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-06em28xx-cards: Add vendor/product id for Kworld DVD Maker 2Douglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@redhat.com> Added Kworld DVD Maker 2 Thanks to C Western <l@c-m-w.me.uk> for reporting this board. Priority: normal Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
2009-09-06v4l: warn when desired devnodenr is in use & add _no_warn functionHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Warn when the desired device node number is already in use, except when the new video_register_device_no_warn function is called since in some use-cases that warning is not relevant. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-09-07v4l2-dev: add simple wrapper functions around the devnode numbersHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> There are some subtle differences in the way the devnode numbers are handled depending on whether the FIXED_MINOR_RANGES config option is set. Add some simple wrapper functions to handle that correctly. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2009-09-02em28xx: remove unreferenced variableDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Remove an unreferenced variable introduced during the VBI introduction. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-02em28xx: restructure fh/dev locking to handle both video and vbiDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> The current locking infrastructure didn't support having multiple fds accessing the device (such as video and vbi). Rework the locking infrastructure, borrowing the design from cx88. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-02em28xx: fix mmap_mapper with vbiDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> When adding support for both video and VBI, I missed the mmap ioctl. Add the missing call. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-01em28xx: add raw VBI support for NTSCDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Add support for raw VBI capture for the em28xx bridge, currently only for NTSC. Support for PAL capture to follow shortly (including the removal of numerous hard-coded NTSC-specific sizes for capture buffers, etc). Note that the code currently changes the default current norm from PAL to NTSC (so that zvbi-ntsc-cc works properly). The default norm really should be moved into a board-level parameter. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-09-01em28xx: make video isoc stream work when VBI is enabledDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Add code enabling the VBI registers for variants of the em28xx chip that support VBI, and make sure the isoc streaming code continues to work for the video component of the stream (note the video and vbi data arrive intermixed on the same isoc pipe). Note that this version just drops the actual VBI data onto the floor as opposed to processing it. The "#ifdef 0" tags are for the videobuf code that appears in the next patch in this series. We created a separate version of the isoc_copy version for parsing the version of the stream that includes VBI data. In theory, they might be able to be merged at some point in the future, but the initial goal is to ensure that we do not cause any regressions with devices that do not have VBI support. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-08-31em28xx: better describe vinctrl registersDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Properly document the video input control register, in preparation for the addition of VBI support. Note this patch makes no functional changes. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>