1. 20 Feb, 2014 2 commits
  2. 13 Feb, 2014 7 commits
  3. 20 Dec, 2013 8 commits
  4. 04 Dec, 2013 18 commits
  5. 20 Nov, 2013 1 commit
  6. 01 Oct, 2013 2 commits
    • Mauro Carvalho Chehab's avatar
      Properly handle tristate dependencies on USB/PCI menus · 7b7b9915
      Mauro Carvalho Chehab authored
      commit 5077ac3b8108007f4a2b4589f2d373cf55453206 upstream.
      
      As USB/PCI/MEDIA_SUPPORT dependencies can be tristate, we can't
      simply make the bool menu to be dependent on it. Everything below
      the menu should also depend on it, otherwise, we risk to allow
      building them with 'y', while only 'm' would be supported.
      
      So, add an IF just before everything below, in order to avoid
      such risks.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      Cc: Randy Dunlap <rdunlap@infradead.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      7b7b9915
    • Randy Dunlap's avatar
      media: media/usb: fix kconfig dependencies · 3db27a31
      Randy Dunlap authored
      commit a0f9354b1a319cb29c331bfd2e5a15d7f9b87fa4 upstream.
      
      (a.k.a. Kconfig bool depending on a tristate considered harmful)
      Fix various build errors when CONFIG_USB=m and media USB drivers
      are builtin.  In this case, CONFIG_USB_ZR364XX=y,
      CONFIG_VIDEO_PVRUSB2=y, and CONFIG_VIDEO_STK1160=y.
      This is caused by (from drivers/media/usb/Kconfig):
      menuconfig MEDIA_USB_SUPPORT
      	bool "Media USB Adapters"
      	depends on USB && MEDIA_SUPPORT
      	           =m     =y
      so MEDIA_USB_SUPPORT=y and all following Kconfig 'source' lines
      are included.  By adding an "if USB" guard around most of this file,
      the needed dependencies are enforced.
      drivers/built-in.o: In function `zr364xx_start_readpipe':
      zr364xx.c:(.text+0xc726a): undefined reference to `usb_alloc_urb'
      zr364xx.c:(.text+0xc72bb): undefined reference to `usb_submit_urb'
      drivers/built-in.o: In function `zr364xx_stop_readpipe':
      zr364xx.c:(.text+0xc72fd): undefined reference to `usb_kill_urb'
      zr364xx.c:(.text+0xc7309): undefined reference to `usb_free_urb'
      drivers/built-in.o: In function `read_pipe_completion':
      zr364xx.c:(.text+0xc7acc): undefined reference to `usb_submit_urb'
      drivers/built-in.o: In function `send_control_msg.constprop.12':
      zr364xx.c:(.text+0xc7d2f): undefined reference to `usb_control_msg'
      drivers/built-in.o: In function `pvr2_ctl_timeout':
      pvrusb2-hdw.c:(.text+0xcadb6): undefined reference to `usb_unlink_urb'
      pvrusb2-hdw.c:(.text+0xcadcb): undefined reference to `usb_unlink_urb'
      drivers/built-in.o: In function `pvr2_hdw_create':
      (.text+0xcc42c): undefined reference to `usb_alloc_urb'
      drivers/built-in.o: In function `pvr2_hdw_create':
      (.text+0xcc448): undefined reference to `usb_alloc_urb'
      drivers/built-in.o: In function `pvr2_hdw_create':
      (.text+0xcc5f9): undefined reference to `usb_set_interface'
      drivers/built-in.o: In function `pvr2_hdw_create':
      (.text+0xcc65a): undefined reference to `usb_free_urb'
      drivers/built-in.o: In function `pvr2_hdw_create':
      (.text+0xcc666): undefined reference to `usb_free_urb'
      drivers/built-in.o: In function `pvr2_send_request_ex.part.22':
      pvrusb2-hdw.c:(.text+0xccbe3): undefined reference to `usb_submit_urb'
      pvrusb2-hdw.c:(.text+0xccc83): undefined reference to `usb_submit_urb'
      drivers/built-in.o: In function `pvr2_hdw_remove_usb_stuff.part.25':
      pvrusb2-hdw.c:(.text+0xcd3f9): undefined reference to `usb_kill_urb'
      pvrusb2-hdw.c:(.text+0xcd405): undefined reference to `usb_free_urb'
      pvrusb2-hdw.c:(.text+0xcd421): undefined reference to `usb_kill_urb'
      pvrusb2-hdw.c:(.text+0xcd42d): undefined reference to `usb_free_urb'
      drivers/built-in.o: In function `pvr2_hdw_device_reset':
      (.text+0xcd658): undefined reference to `usb_lock_device_for_reset'
      drivers/built-in.o: In function `pvr2_hdw_device_reset':
      (.text+0xcd664): undefined reference to `usb_reset_device'
      drivers/built-in.o: In function `pvr2_hdw_cpureset_assert':
      (.text+0xcd6f9): undefined reference to `usb_control_msg'
      drivers/built-in.o: In function `pvr2_hdw_cpufw_set_enabled':
      (.text+0xcd84e): undefined reference to `usb_control_msg'
      drivers/built-in.o: In function `pvr2_upload_firmware1':
      pvrusb2-hdw.c:(.text+0xcda47): undefined reference to `usb_clear_halt'
      pvrusb2-hdw.c:(.text+0xcdb04): undefined reference to `usb_control_msg'
      drivers/built-in.o: In function `pvr2_upload_firmware2':
      (.text+0xce7dc): undefined reference to `usb_bulk_msg'
      drivers/built-in.o: In function `pvr2_stream_buffer_count':
      pvrusb2-io.c:(.text+0xd2e05): undefined reference to `usb_alloc_urb'
      pvrusb2-io.c:(.text+0xd2e5b): undefined reference to `usb_kill_urb'
      pvrusb2-io.c:(.text+0xd2e9f): undefined reference to `usb_free_urb'
      drivers/built-in.o: In function `pvr2_stream_internal_flush':
      pvrusb2-io.c:(.text+0xd2f9b): undefined reference to `usb_kill_urb'
      drivers/built-in.o: In function `pvr2_buffer_queue':
      (.text+0xd3328): undefined reference to `usb_kill_urb'
      drivers/built-in.o: In function `pvr2_buffer_queue':
      (.text+0xd33ea): undefined reference to `usb_submit_urb'
      drivers/built-in.o: In function `stk1160_read_reg':
      (.text+0xd3efa): undefined reference to `usb_control_msg'
      drivers/built-in.o: In function `stk1160_write_reg':
      (.text+0xd3f4f): undefined reference to `usb_control_msg'
      drivers/built-in.o: In function `stop_streaming':
      stk1160-v4l.c:(.text+0xd4997): undefined reference to `usb_set_interface'
      drivers/built-in.o: In function `start_streaming':
      stk1160-v4l.c:(.text+0xd4a9f): undefined reference to `usb_set_interface'
      stk1160-v4l.c:(.text+0xd4afa): undefined reference to `usb_submit_urb'
      stk1160-v4l.c:(.text+0xd4ba3): undefined reference to `usb_set_interface'
      drivers/built-in.o: In function `stk1160_isoc_irq':
      stk1160-video.c:(.text+0xd509b): undefined reference to `usb_submit_urb'
      drivers/built-in.o: In function `stk1160_cancel_isoc':
      (.text+0xd50ef): undefined reference to `usb_kill_urb'
      drivers/built-in.o: In function `stk1160_free_isoc':
      (.text+0xd5155): undefined reference to `usb_free_coherent'
      drivers/built-in.o: In function `stk1160_free_isoc':
      (.text+0xd515d): undefined reference to `usb_free_urb'
      drivers/built-in.o: In function `stk1160_alloc_isoc':
      (.text+0xd5278): undefined reference to `usb_alloc_urb'
      drivers/built-in.o: In function `stk1160_alloc_isoc':
      (.text+0xd52c2): undefined reference to `usb_alloc_coherent'
      drivers/built-in.o: In function `stk1160_alloc_isoc':
      (.text+0xd53c4): undefined reference to `usb_free_urb'
      drivers/built-in.o: In function `zr364xx_driver_init':
      zr364xx.c:(.init.text+0x463e): undefined reference to `usb_register_driver'
      drivers/built-in.o: In function `pvr_init':
      pvrusb2-main.c:(.init.text+0x4662): undefined reference to `usb_register_driver'
      drivers/built-in.o: In function `stk1160_usb_driver_init':
      stk1160-core.c:(.init.text+0x467d): undefined reference to `usb_register_driver'
      drivers/built-in.o: In function `zr364xx_driver_exit':
      zr364xx.c:(.exit.text+0x1377): undefined reference to `usb_deregister'
      drivers/built-in.o: In function `pvr_exit':
      pvrusb2-main.c:(.exit.text+0x1389): undefined reference to `usb_deregister'
      drivers/built-in.o: In function `stk1160_usb_driver_exit':
      stk1160-core.c:(.exit.text+0x13a0): undefined reference to `usb_deregister'
      Suggested-by: default avatar"Yann E. MORIN" <yann.morin.1998@free.fr>
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3db27a31
  7. 27 Sep, 2013 2 commits
    • Bjørn Mork's avatar
      media: siano: fix divide error on 0 counters · d2310f71
      Bjørn Mork authored
      commit ec532503209053bbee0c7dac410031e50835e01a upstream.
      
      GIT_AUTHOR_DATE=1376465691
      I took a quick look at the code and wonder if the problem is caused by
      an initial zero statistics message?  This is all just a wild guess, but
      if it is correct, then the attached untested patch might fix it...
      Bjørn
      >From d78a0599d5b5d4da384eae08bf7da316389dfbe5 Mon Sep 17 00:00:00 2001
      ts_packets and ets_packets counters can be 0.  Don't fall over
      if they are. Fixes:
      [  846.851711] divide error: 0000 [#1] SMP
      [  846.851806] Modules linked in: smsdvb dvb_core ir_lirc_codec lirc_dev ir_sanyo_decoder ir_mce_kbd_decoder ir_sony_decoder ir_jvc_decoder ir_rc6_decoder ir_rc5_decoder ir_nec_decoder rc_hauppauge smsusb smsmdtv rc_core pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) parport_pc ppdev lp parport cpufreq_userspace cpufreq_powersave cpufreq_stats cpufreq_conservative rfcomm bnep binfmt_misc uinput nfsd auth_rpcgss oid_registry nfs_acl nfs lockd dns_resolver fscache sunrpc ext4 jbd2 fuse tp_smapi(O) thinkpad_ec(O) loop firewire_sbp2 dm_crypt snd_hda_codec_conexant snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm thinkpad_acpi nvram snd_page_alloc hid_generic snd_seq_midi snd_seq_midi_event arc4 usbhid snd_rawmidi uvcvideo hid iwldvm coretemp kvm_intel mac8021
       1 cdc_wdm
      [  846.853477]  cdc_acm snd_seq videobuf2_vmalloc videobuf2_memops videobuf2_core videodev media kvm radeon r852 ttm joydev cdc_ether usbnet pcmcia mii sm_common nand btusb drm_kms_helper tpm_tis acpi_cpufreq bluetooth iwlwifi nand_ecc drm nand_ids i2c_i801 mtd snd_seq_device iTCO_wdt iTCO_vendor_support r592 memstick lpc_ich mperf tpm yenta_socket pcmcia_rsrc pcmcia_core cfg80211 snd_timer snd pcspkr i2c_algo_bit crc16 i2c_core tpm_bios processor mfd_core wmi psmouse mei_me rfkill mei serio_raw soundcore evdev battery button video ac microcode ext3 mbcache jbd md_mod dm_mirror dm_region_hash dm_log dm_mod sg sr_mod sd_mod cdrom crc_t10dif firewire_ohci sdhci_pci sdhci mmc_core firewire_core crc_itu_t thermal thermal_sys ahci libahci ehci_pci uhci_hcd ehci_hcd libata scsi_mod usbcore e1000
       e usb_common
      [  846.855310]  ptp pps_core
      [  846.855356] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G           O 3.10-2-amd64 #1 Debian 3.10.5-1
      [  846.855490] Hardware name: LENOVO 4061WFA/4061WFA, BIOS 6FET92WW (3.22 ) 12/14/2011
      [  846.855609] task: ffffffff81613400 ti: ffffffff81600000 task.ti: ffffffff81600000
      [  846.855636] RIP: 0010:[<ffffffffa092be0c>]  [<ffffffffa092be0c>] smsdvb_onresponse+0x264/0xa86 [smsdvb]
      [  846.863906] RSP: 0018:ffff88013bc03cf0  EFLAGS: 00010046
      [  846.863906] RAX: 0000000000000000 RBX: ffff880133bf6000 RCX: 0000000000000000
      [  846.863906] RDX: 0000000000000000 RSI: ffff88005d3b58c0 RDI: ffff880133bf6000
      [  846.863906] RBP: ffff88005d1da000 R08: 0000000000000058 R09: 0000000000000015
      [  846.863906] R10: 0000000000001a0d R11: 000000000000021a R12: ffff88005d3b58c0
      [  846.863906] R13: ffff88005d1da008 R14: 00000000ffffff8d R15: ffff880036cf5060
      [  846.863906] FS:  0000000000000000(0000) GS:ffff88013bc00000(0000) knlGS:0000000000000000
      [  846.863906] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
      [  846.863906] CR2: 00007f3a4b69ae50 CR3: 0000000036dac000 CR4: 00000000000407f0
      [  846.863906] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      [  846.863906] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      [  846.863906] Stack:
      [  846.863906]  ffff88007a102000 ffff88005d1da000 ffff88005d3b58c0 0000000000085824
      [  846.863906]  ffffffffa08c5aa3 ffff88005d1da000 ffff8800a6907390 ffff8800a69073b0
      [  846.863906]  ffff8800a6907000 ffffffffa08b642c 000000000000021a ffff8800a69073b0
      [  846.863906] Call Trace:
      [  846.863906]  <IRQ>
      [  846.863906]
      [  846.863906]  [<ffffffffa08c5aa3>] ? smscore_onresponse+0x1d5/0x353 [smsmdtv]
      [  846.863906]  [<ffffffffa08b642c>] ? smsusb_onresponse+0x146/0x192 [smsusb]
      [  846.863906]  [<ffffffffa004cb1a>] ? usb_hcd_giveback_urb+0x6c/0xac [usbcore]
      [  846.863906]  [<ffffffffa0217be1>] ? ehci_urb_done+0x62/0x72 [ehci_hcd]
      [  846.863906]  [<ffffffffa0217c82>] ? qh_completions+0x91/0x364 [ehci_hcd]
      [  846.863906]  [<ffffffffa0219bba>] ? ehci_work+0x8a/0x68e [ehci_hcd]
      [  846.863906]  [<ffffffff8107336c>] ? timekeeping_get_ns.constprop.10+0xd/0x31
      [  846.863906]  [<ffffffff81064d41>] ? update_cfs_rq_blocked_load+0xde/0xec
      [  846.863906]  [<ffffffff81058ec2>] ? run_posix_cpu_timers+0x25/0x575
      [  846.863906]  [<ffffffffa021aa46>] ? ehci_irq+0x211/0x23d [ehci_hcd]
      [  846.863906]  [<ffffffffa004c0c1>] ? usb_hcd_irq+0x31/0x48 [usbcore]
      [  846.863906]  [<ffffffff810996fd>] ? handle_irq_event_percpu+0x49/0x1a4
      [  846.863906]  [<ffffffff8109988a>] ? handle_irq_event+0x32/0x4b
      [  846.863906]  [<ffffffff8109bd76>] ? handle_fasteoi_irq+0x80/0xb6
      [  846.863906]  [<ffffffff8100e93e>] ? handle_irq+0x18/0x20
      [  846.863906]  [<ffffffff8100e657>] ? do_IRQ+0x40/0x95
      [  846.863906]  [<ffffffff813883ed>] ? common_interrupt+0x6d/0x6d
      [  846.863906]  <EOI>
      [  846.863906]
      [  846.863906]  [<ffffffff812a011c>] ? arch_local_irq_enable+0x4/0x8
      [  846.863906]  [<ffffffff812a04f3>] ? cpuidle_enter_state+0x52/0xc1
      [  846.863906]  [<ffffffff812a0636>] ? cpuidle_idle_call+0xd4/0x143
      [  846.863906]  [<ffffffff8101398c>] ? arch_cpu_idle+0x5/0x17
      [  846.863906]  [<ffffffff81072571>] ? cpu_startup_entry+0x10d/0x187
      [  846.863906]  [<ffffffff816b3d3d>] ? start_kernel+0x3e8/0x3f3
      [  846.863906]  [<ffffffff816b3777>] ? repair_env_string+0x54/0x54
      [  846.863906]  [<ffffffff816b3598>] ? x86_64_start_kernel+0xf2/0xfd
      [  846.863906] Code: 25 09 00 00 c6 83 da 08 00 00 03 8b 45 54 48 01 83 b6 08 00 00 8b 45 50 48 01 83 db 08 00 00 8b 4d 18 69 c1 ff ff 00 00 03 4d 14 <48> f7 f1 89 83 a8 09 00 00 e9 68 fe ff ff 48 8b 7f 10 e8 79 92
      [  846.863906] RIP  [<ffffffffa092be0c>] smsdvb_onresponse+0x264/0xa86 [smsdvb]
      [  846.863906]  RSP <ffff88013bc03cf0>
      Reference: http://bugs.debian.org/719623Reported-by: default avatarJohannes Rohr <jorohr@gmail.com>
      Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d2310f71
    • Mauro Carvalho Chehab's avatar
      media: mb86a20s: Fix TS parallel mode · b3fcd91b
      Mauro Carvalho Chehab authored
      commit 9d32069faacdc81fe1dcb5d297c32a3ac81da8f0 upstream.
      
      changeset 768e6dad caused a regression on using mb86a20s
      in parallel mode, as the parallel mode selection got
      overriden by mb86a20s_init2.
      Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      b3fcd91b