1. 05 5月, 2018 4 次提交
  2. 08 3月, 2018 1 次提交
  3. 06 3月, 2018 11 次提交
  4. 19 12月, 2017 1 次提交
  5. 25 6月, 2017 1 次提交
    • M
      media: em28xx: add support for new of Terratec H6 · d6a64327
      Mauro Carvalho Chehab 提交于
      There's a new version of Terratec H6 with uses USB ID
      0ccd:10b2. This version is similar to the old one (with is
      supported via the HTC entry), except that this one has the
      eeprom on the second bus.
      
      On this board, one side of this board is labeled with:
      	dvbc v2.0
      The other side with:
      	94V-0, MO2, RK-4221 with huge digits: 1107
      
      With those patches, the board is properly detected:
      
          em28xx 1-1.5:1.0: New device TERRATEC TERRATCE H5 MKII @ 480 Mbps (0ccd:10b2, interface 0, class 0)
          em28xx 1-1.5:1.0: Audio interface 0 found (Vendor Class)
          em28xx 1-1.5:1.0: Video interface 0 found: isoc
          em28xx 1-1.5:1.0: DVB interface 0 found: isoc
          em28xx 1-1.5:1.0: chip ID is em2884
          em28xx eeprom 00000000: 26 00 00 00 02 0b 0f e5 f5 64 01 60 09 e5 f5 64  &........d.`...d
          em28xx eeprom 00000010: 09 60 03 c2 c6 22 e5 f7 b4 03 13 e5 f6 b4 87 03  .`..."..........
          em28xx eeprom 00000020: 02 0a b9 e5 f6 b4 93 03 02 09 46 c2 c6 22 c2 c6  ..........F.."..
          em28xx eeprom 00000030: 22 00 60 00 ef 70 08 85 3d 82 85 3c 83 93 ff ef  ".`..p..=..<....
          em28xx eeprom 00000040: 60 19 85 3d 82 85 3c 83 e4 93 12 07 a3 12 0a fe  `..=..<.........
          em28xx eeprom 00000050: 05 3d e5 3d 70 02 05 3c 1f 80 e4 22 12 0b 06 02  .=.=p..<..."....
          em28xx eeprom 00000060: 07 e2 01 00 1a eb 67 95 cd 0c b2 10 f0 13 6b 03  ......g.......k.
          em28xx eeprom 00000070: 98 22 6a 1c 86 12 27 57 4e 16 29 00 60 00 00 00  ."j...'WN.).`...
          em28xx eeprom 00000080: 02 00 00 00 5e 00 13 00 f0 10 44 82 82 00 00 00  ....^.....D.....
          em28xx eeprom 00000090: 5b 81 c0 00 00 00 20 40 20 80 02 20 10 01 00 00  [..... @ .. ....
          em28xx eeprom 000000a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
          em28xx eeprom 000000b0: c6 40 00 00 81 00 00 00 00 00 00 00 00 c4 00 00  .@..............
          em28xx eeprom 000000c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1c 03  ................
          em28xx eeprom 000000d0: 31 00 32 00 33 00 34 00 35 00 36 00 37 00 38 00  1.2.3.4.5.6.7.8.
          em28xx eeprom 000000e0: 39 00 41 00 42 00 43 00 44 00 12 03 54 00 45 00  9.A.B.C.D...T.E.
          em28xx eeprom 000000f0: 52 00 52 00 41 00 54 00 45 00 43 00 22 03 54 00  R.R.A.T.E.C.".T.
          em28xx 1-1.5:1.0: eeprom 000100: ... (skipped)
          em28xx 1-1.5:1.0: EEPROM ID = 26 00 00 00, EEPROM hash = 0xbcd5a8cf
          em28xx 1-1.5:1.0: EEPROM info:
          em28xx 1-1.5:1.0:	microcode start address = 0x0004, boot configuration = 0x00
          em28xx 1-1.5:1.0:	I2S audio, 5 sample rates
          em28xx 1-1.5:1.0:	500mA max power
          em28xx 1-1.5:1.0:	Table at offset 0x27, strings=0x2298, 0x1c6a, 0x1286
          em28xx 1-1.5:1.0: Identified as Terratec Cinergy H6 rev. 2 (card=101)
          em28xx 1-1.5:1.0: Currently, V4L2 is not supported on this model
          em28xx 1-1.5:1.0: dvb set to isoc mode.
          usbcore: registered new interface driver em28xx
          em28xx 1-1.5:1.0: Binding audio extension
          em28xx 1-1.5:1.0: em28xx-audio.c: Copyright (C) 2006 Markus Rechberger
          em28xx 1-1.5:1.0: em28xx-audio.c: Copyright (C) 2007-2016 Mauro Carvalho Chehab
          em28xx 1-1.5:1.0: Endpoint 0x83 high-speed on intf 0 alt 7 interval = 8, size 196
          em28xx 1-1.5:1.0: Number of URBs: 1, with 64 packets and 192 size
          em28xx 1-1.5:1.0: Audio extension successfully initialized
          em28xx: Registered (Em28xx Audio Extension) extension
          em28xx 1-1.5:1.0: Binding DVB extension
          drxk: status = 0x639260d9
          drxk: detected a drx-3926k, spin A3, xtal 20.250 MHz
          drxk: DRXK driver version 0.9.4300
          drxk: frontend initialized.
          tda18271 4-0060: creating new instance
          tda18271: TDA18271HD/C2 detected @ 4-0060
          dvbdev: DVB: registering new adapter (1-1.5:1.0)
          em28xx 1-1.5:1.0: DVB: registering adapter 0 frontend 0 (DRXK DVB-C DVB-T)...
          dvbdev: dvb_create_media_entity: media entity 'DRXK DVB-C DVB-T' registered.
          dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered.
          em28xx 1-1.5:1.0: DVB extension successfully initialized
          em28xx: Registered (Em28xx dvb Extension) extension
          em28xx 1-1.5:1.0: Registering input extension
          rc rc0: 1-1.5:1.0 IR as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.0/rc/rc0
          Registered IR keymap rc-nec-terratec-cinergy-xs
          input: 1-1.5:1.0 IR as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.0/rc/rc0/input0
          em28xx 1-1.5:1.0: Input extension successfully initalized
          em28xx: Registered (Em28xx Input Extension) extension
          tda18271: performing RF tracking filter calibration
          tda18271: RF tracking filter calibration complete
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      d6a64327
  6. 06 6月, 2017 1 次提交
  7. 18 4月, 2017 2 次提交
  8. 03 3月, 2017 1 次提交
  9. 03 2月, 2017 1 次提交
  10. 12 12月, 2016 3 次提交
    • M
      [media] em28xx: don't store usb_device at struct em28xx · c6d48134
      Mauro Carvalho Chehab 提交于
      Now that we're storing usb_interface at em28xx struct,
      there's no good reason to keep storing usb_device, as we can
      get it from usb_interface. So, get rid of it.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      c6d48134
    • M
      [media] em28xx: use usb_interface for dev_foo() calls · 29b05e22
      Mauro Carvalho Chehab 提交于
      The usb_device->dev is not the right device for dev_foo() calls.
      Instead, it should use usb_interface->dev.
      Tested-by: NAntti Palosaari <crope@iki.fi>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      29b05e22
    • M
      [media] em28xx: don't change the device's name · ea48c368
      Mauro Carvalho Chehab 提交于
      Changing the device name, causes it to be unable to remove the
      sysfs file, causing troubles if a device is removed and then
      re-inserted.
      
      [ 1010.310320] WARNING: CPU: 3 PID: 119 at fs/sysfs/dir.c:31 sysfs_warn_dup+0x7b/0x90
      [ 1010.310323] sysfs: cannot create duplicate filename '/bus/usb/devices/1-3.3'
      [ 1010.310325] Modules linked in: lgdt330x em28xx_dvb dvb_core em28xx_alsa tuner_xc2028 tuner tvp5150 em28xx_v4l videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core em28xx tveeprom v4l2_common videodev media xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject_ipv4 xt_tcpudp tun bridge stp llc ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables cmac bnep cpufreq_powersave cpufreq_conservative cpufreq_userspace binfmt_misc parport_pc ppdev lp parport snd_hda_codec_hdmi iTCO_wdt snd_hda_codec_realtek iTCO_vendor_support snd_hda_codec_generic arc4 intel_rapl x86_pkg_temp_thermal iwlmvm intel_powerclamp coretemp kvm_intel mac80211 kvm i915
      [ 1010.310383]  irqbypass crct10dif_pclmul crc32_pclmul ghash_clmulni_intel iwlwifi pl2303 aesni_intel btusb aes_x86_64 usbserial lrw btrtl gf128mul glue_helper btbcm ablk_helper cryptd btintel bluetooth drm_kms_helper cfg80211 drm psmouse pcspkr i2c_i801 e1000e serio_raw snd_hda_intel snd_soc_rt5640 snd_hda_codec snd_soc_rl6231 snd_soc_ssm4567 mei_me i2c_smbus rfkill snd_hda_core ptp mei snd_soc_core ehci_pci sg lpc_ich shpchp mfd_core ehci_hcd pps_core snd_hwdep i2c_algo_bit snd_compress snd_pcm sdhci_acpi snd_timer battery snd sdhci elan_i2c snd_soc_sst_acpi mmc_core fjes dw_dmac i2c_hid soundcore snd_soc_sst_match i2c_designware_platform video i2c_designware_core acpi_pad acpi_als kfifo_buf tpm_tis button industrialio tpm_tis_core tpm ext4 crc16 jbd2 fscrypto mbcache dm_mod joydev evdev hid_logitech_hidpp
      [ 1010.310449]  sd_mod hid_logitech_dj usbhid hid ahci libahci crc32c_intel libata xhci_pci xhci_hcd scsi_mod usbcore fan thermal
      [ 1010.310464] CPU: 3 PID: 119 Comm: kworker/3:2 Not tainted 4.9.0-rc8+ #14
      [ 1010.310466] Hardware name:                  /NUC5i7RYB, BIOS RYBDWi35.86A.0350.2015.0812.1722 08/12/2015
      [ 1010.310487] Workqueue: usb_hub_wq hub_event [usbcore]
      [ 1010.310490]  0000000000000000 ffffffff848f56c5 ffff8803b1f7f858 0000000000000000
      [ 1010.310496]  ffffffff8414f8f8 ffff88030000001f ffffed00763eff07 ffff8803b1f7f8f0
      [ 1010.310501]  ffff8803b3ea1e60 0000000000000001 ffffffffffffffef ffff8803b45c6840
      [ 1010.310505] Call Trace:
      [ 1010.310517]  [<ffffffff848f56c5>] ? dump_stack+0x5c/0x77
      [ 1010.310522]  [<ffffffff8414f8f8>] ? __warn+0x168/0x1a0
      [ 1010.310526]  [<ffffffff8414f9e4>] ? warn_slowpath_fmt+0xb4/0xf0
      [ 1010.310529]  [<ffffffff8414f930>] ? __warn+0x1a0/0x1a0
      [ 1010.310534]  [<ffffffff845436c6>] ? kasan_kmalloc+0xa6/0xd0
      [ 1010.310539]  [<ffffffff846ec2fa>] ? kernfs_path_from_node+0x4a/0x60
      [ 1010.310543]  [<ffffffff846f66eb>] ? sysfs_warn_dup+0x7b/0x90
      [ 1010.310547]  [<ffffffff846f6f26>] ? sysfs_do_create_link_sd.isra.2+0xb6/0xd0
      [ 1010.310553]  [<ffffffff84cd5a08>] ? bus_add_device+0x318/0x6b0
      [ 1010.310557]  [<ffffffff846f8693>] ? sysfs_create_groups+0x83/0x110
      [ 1010.310562]  [<ffffffff84ccff87>] ? device_add+0x777/0x1350
      [ 1010.310567]  [<ffffffff84ccf810>] ? device_private_init+0x180/0x180
      [ 1010.310583]  [<ffffffffc00c0f77>] ? usb_new_device+0x707/0x1030 [usbcore]
      [ 1010.310598]  [<ffffffffc00c58c5>] ? hub_event+0x1d65/0x3280 [usbcore]
      [ 1010.310604]  [<ffffffff841eb4ab>] ? account_entity_dequeue+0x30b/0x4a0
      [ 1010.310618]  [<ffffffffc00c3b60>] ? hub_port_debounce+0x280/0x280 [usbcore]
      [ 1010.310624]  [<ffffffff8407ccd0>] ? compat_start_thread+0x80/0x80
      [ 1010.310629]  [<ffffffff851f5cb4>] ? __schedule+0x704/0x1770
      [ 1010.310633]  [<ffffffff851f55b0>] ? io_schedule_timeout+0x390/0x390
      [ 1010.310638]  [<ffffffff84541783>] ? cache_reap+0x173/0x200
      [ 1010.310642]  [<ffffffff84197bed>] ? process_one_work+0x4ed/0xe60
      [ 1010.310646]  [<ffffffff84198642>] ? worker_thread+0xe2/0xfd0
      [ 1010.310650]  [<ffffffff8421f76c>] ? __wake_up_common+0xbc/0x160
      [ 1010.310654]  [<ffffffff84198560>] ? process_one_work+0xe60/0xe60
      [ 1010.310658]  [<ffffffff841a837c>] ? kthread+0x1cc/0x220
      [ 1010.310663]  [<ffffffff841a81b0>] ? kthread_park+0x80/0x80
      [ 1010.310667]  [<ffffffff841a81b0>] ? kthread_park+0x80/0x80
      [ 1010.310671]  [<ffffffff841a81b0>] ? kthread_park+0x80/0x80
      [ 1010.310675]  [<ffffffff852016f5>] ? ret_from_fork+0x25/0x30
      Tested-by: NAntti Palosaari <crope@iki.fi>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      ea48c368
  11. 18 11月, 2016 1 次提交
  12. 21 10月, 2016 4 次提交
    • M
      [media] em28xx: don't break long lines · c558d13c
      Mauro Carvalho Chehab 提交于
      Due to the 80-cols restrictions, and latter due to checkpatch
      warnings, several strings were broken into multiple lines. This
      is not considered a good practice anymore, as it makes harder
      to grep for strings at the source code.
      
      As we're right now fixing other drivers due to KERN_CONT, we need
      to be able to identify what printk strings don't end with a "\n".
      It is a way easier to detect those if we don't break long lines.
      
      So, join those continuation lines.
      
      The patch was generated via the script below, and manually
      adjusted if needed.
      
      </script>
      use Text::Tabs;
      while (<>) {
      	if ($next ne "") {
      		$c=$_;
      		if ($c =~ /^\s+\"(.*)/) {
      			$c2=$1;
      			$next =~ s/\"\n$//;
      			$n = expand($next);
      			$funpos = index($n, '(');
      			$pos = index($c2, '",');
      			if ($funpos && $pos > 0) {
      				$s1 = substr $c2, 0, $pos + 2;
      				$s2 = ' ' x ($funpos + 1) . substr $c2, $pos + 2;
      				$s2 =~ s/^\s+//;
      
      				$s2 = ' ' x ($funpos + 1) . $s2 if ($s2 ne "");
      
      				print unexpand("$next$s1\n");
      				print unexpand("$s2\n") if ($s2 ne "");
      			} else {
      				print "$next$c2\n";
      			}
      			$next="";
      			next;
      		} else {
      			print $next;
      		}
      		$next="";
      	} else {
      		if (m/\"$/) {
      			if (!m/\\n\"$/) {
      				$next=$_;
      				next;
      			}
      		}
      	}
      	print $_;
      }
      </script>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      c558d13c
    • M
      [media] em28xx: convert the remaining printks to pr_foo · 2a96f60e
      Mauro Carvalho Chehab 提交于
      There are still several places with printk's called directly.
      
      Convert them to pr_foo() macros, except for the debug printk's,
      as those are enabled via modprobe vars.
      
      While here, realign the pr_foo() arguments to match the
      recommended CodingStyle.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      2a96f60e
    • M
      [media] em28xx: use pr_foo instead of em28xx-specific printk macros · 8314d402
      Mauro Carvalho Chehab 提交于
      There's no reason to keep using em28xx-specific printk macros
      here. Just use pr_foo().
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      8314d402
    • M
      [media] em28xx: don't break long lines · 5ccb197d
      Mauro Carvalho Chehab 提交于
      Due to the 80-cols checkpatch warnings, several strings
      were broken into multiple lines. This is not considered
      a good practice anymore, as it makes harder to grep for
      strings at the source code. So, join those continuation
      lines.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      5ccb197d
  13. 10 5月, 2016 1 次提交
  14. 07 5月, 2016 1 次提交
    • S
      [media] em28xx: add support for PLEX PX-BCUD (ISDB-S) · ab4d1452
      Satoshi Nagahama 提交于
      PX-BCUD has the following components:
         USB interface: Empia EM28178
         Demodulator: Toshiba TC90532 (works by code for TC90522)
         Tuner: Next version of Sharp QM1D1C0042
      
      em28xx_dvb_init(): add init code for PLEX PX-BCUD with calling
      px_bcud_init() that does things like pin configuration.
      
      qm1d1c0042_init(): support the next version of QM1D1C0042, change to
      choose an appropriate array of initial registers by reading chip id.
      
      [mchehab@osg.samsung.com: fold a fixup patch and fix checkpatch.pl
       errors/warnings, where applicable]
      Signed-off-by: NSatoshi Nagahama <sattnag@aim.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      ab4d1452
  15. 05 3月, 2016 1 次提交
    • M
      [media] em28xx: fix Terratec Grabby AC97 codec detection · 0899f62f
      Matthieu Rogez 提交于
      EMP202 chip inside Terratec Grabby (hw rev 2) seems to require some time
      before accessing reliably its registers. Otherwise it returns some values
      previously put on the I2C bus.
      
      To account for that period, we delay card setup until we have a proof that
      accessing AC97 registers is reliable. We get this proof by polling
      AC97_RESET until the expected value is read. We also check that unrelated
      registers don't return the same value. This second check handles the case
      where the expected value is constantly returned no matter which register
      is accessed.
      Signed-off-by: NMatthieu Rogez <matthieu.rogez@gmail.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      0899f62f
  16. 04 3月, 2016 2 次提交
  17. 23 2月, 2016 2 次提交
  18. 16 2月, 2016 1 次提交
  19. 11 2月, 2016 1 次提交