[1.] One line summary of the problem: 
093a:2460 Webcam (Pixart PAC207BCA) - inverted LED logic 

[2.] Full description of the problem/report: 
The LED on this webcam is always turned on when connected to USB, unless
 some application uses it - the behavior that is opposite to what is 
expected.
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/525959
The problem persists on all versions of Ubuntu I've tested.


[3.] Keywords (i.e., modules, networking, kernel): Please note, Kernel.org uses 
a different keyword system then the Ubuntu Tags system. 
gspca, pac207, 093a:2460, Pixart PAC207BCA

[4.] Kernel version (from /proc/version): 
Linux version 3.2.0-32-generic-pae (buildd@roseapple) (gcc version 4.6.3 
(Ubuntu/Linaro 4.6.3-1ubuntu5) ) #51-Ubuntu SMP Wed Sep 26 21:54:23 UTC 2012

[5.] Output of Oops.. message (if applicable) with symbolic information 
resolved (see Documentation/oops-tracing.txt) 
NA

[6.] A small shell script or example program which triggers the problem (if 
possible) 
NA

[7.] Environment 
Description:    Ubuntu 12.04.1 LTS
Release:    12.04

[7.1.] Software (add the output of the ver_linux script here)

Linux yuri-desktop 3.2.0-32-generic-pae #51-Ubuntu SMP Wed Sep 26 21:54:23 UTC 
2012 i686 i686 i386 GNU/Linux
 
Gnu C                  4.6
Gnu make               3.81
binutils               2.22
util-linux             2.20.1
mount                  support
module-init-tools      3.16
e2fsprogs              1.42
pcmciautils            018
Linux C Library        2.15
Dynamic linker (ldd)   2.15
Procps                 3.2.8
Net-tools              1.60
Kbd                    1.15.2
Sh-utils               8.13
wireless-tools         30
Modules Loaded         rfcomm bnep bluetooth binfmt_misc dm_crypt 
snd_hda_codec_hdmi gspca_pac207 gspca_main videodev snd_hda_codec_realtek ppdev 
eeepc_wmi asus_wmi sparse_keymap snd_hda_intel snd_hda_codec snd_hwdep snd_pcm 
snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq nvidia parport_pc snd_timer 
wmi snd_seq_device snd serio_raw mac_hid soundcore snd_page_alloc mei lp 
parport vesafb usbhid hid r8169 pata_via video

[7.2.] Processor information (from /proc/cpuinfo):

processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 42
model name    : Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
stepping    : 7
microcode    : 0x28
cpu MHz        : 1600.000
cache size    : 6144 KB
physical id    : 0
siblings    : 4
core id        : 0
cpu cores    : 4
apicid        : 0
initial apicid    : 0
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov 
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm 
constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni 
pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid 
sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat 
epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips    : 6622.34
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 42
model name    : Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
stepping    : 7
microcode    : 0x28
cpu MHz        : 1600.000
cache size    : 6144 KB
physical id    : 0
siblings    : 4
core id        : 1
cpu cores    : 4
apicid        : 2
initial apicid    : 2
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov 
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm 
constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni 
pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid 
sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat 
epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips    : 6622.22
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

processor    : 2
vendor_id    : GenuineIntel
cpu family    : 6
model        : 42
model name    : Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
stepping    : 7
microcode    : 0x28
cpu MHz        : 1600.000
cache size    : 6144 KB
physical id    : 0
siblings    : 4
core id        : 2
cpu cores    : 4
apicid        : 4
initial apicid    : 4
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov 
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm 
constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni 
pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid 
sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat 
epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips    : 6622.21
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

processor    : 3
vendor_id    : GenuineIntel
cpu family    : 6
model        : 42
model name    : Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
stepping    : 7
microcode    : 0x28
cpu MHz        : 1600.000
cache size    : 6144 KB
physical id    : 0
siblings    : 4
core id        : 3
cpu cores    : 4
apicid        : 6
initial apicid    : 6
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov 
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx rdtscp lm 
constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni 
pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid 
sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat 
epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips    : 6622.21
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

[7.3.] Module information (from /proc/modules):

rfcomm 38139 0 - Live 0x00000000
bnep 17830 2 - Live 0x00000000
bluetooth 158438 10 rfcomm,bnep, Live 0x00000000
binfmt_misc 17292 1 - Live 0x00000000
dm_crypt 22528 0 - Live 0x00000000
snd_hda_codec_hdmi 31775 4 - Live 0x00000000
gspca_pac207 13275 0 - Live 0x00000000
gspca_main 27654 1 gspca_pac207, Live 0x00000000
videodev 86588 1 gspca_main, Live 0x00000000
snd_hda_codec_realtek 174313 1 - Live 0x00000000
ppdev 12849 0 - Live 0x00000000
eeepc_wmi 12949 0 - Live 0x00000000
asus_wmi 19624 1 eeepc_wmi, Live 0x00000000
sparse_keymap 13658 1 asus_wmi, Live 0x00000000
snd_hda_intel 32765 5 - Live 0x00000000
snd_hda_codec 109562 3 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel, 
Live 0x00000000
snd_hwdep 13276 1 snd_hda_codec, Live 0x00000000
snd_pcm 80845 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec, Live 0x00000000
snd_seq_midi 13132 0 - Live 0x00000000
snd_rawmidi 25424 1 snd_seq_midi, Live 0x00000000
snd_seq_midi_event 14475 1 snd_seq_midi, Live 0x00000000
snd_seq 51567 2 snd_seq_midi,snd_seq_midi_event, Live 0x00000000
nvidia 10235966 41 - Live 0x00000000 (P)
parport_pc 32114 1 - Live 0x00000000
snd_timer 28931 2 snd_pcm,snd_seq, Live 0x00000000
wmi 18744 1 asus_wmi, Live 0x00000000
snd_seq_device 14172 3 snd_seq_midi,snd_rawmidi,snd_seq, Live 0x00000000
snd 62064 20 
snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device,
 Live 0x00000000
serio_raw 13027 0 - Live 0x00000000
mac_hid 13077 0 - Live 0x00000000
soundcore 14635 1 snd, Live 0x00000000
snd_page_alloc 14108 2 snd_hda_intel,snd_pcm, Live 0x00000000
mei 36570 0 - Live 0x00000000 (C)
lp 17455 0 - Live 0x00000000
parport 40930 3 ppdev,parport_pc,lp, Live 0x00000000
vesafb 13516 1 - Live 0x00000000
usbhid 41906 0 - Live 0x00000000
hid 77367 1 usbhid, Live 0x00000000
r8169 56321 0 - Live 0x00000000
pata_via 13428 0 - Live 0x00000000
video 19068 0 - Live 0x00000000

[7.4.] Loaded driver and hardware information (/proc/ioports, /proc/iomem) 
  
0000-0cf7 : PCI Bus 0000:00
  0000-001f : dma1
  0020-0021 : pic1
  0040-0043 : timer0
  0050-0053 : timer1
  0060-0060 : keyboard
  0064-0064 : keyboard
  0070-0077 : rtc0
  0080-008f : dma page reg
  00a0-00a1 : pic2
  00c0-00df : dma2
  00f0-00ff : fpu
  0200-020f : pnp 00:05
  0290-029f : pnp 00:08
  0378-037a : parport0
  03c0-03df : vesafb
  03f8-03ff : serial
  0400-0453 : pnp 00:05
    0400-0403 : ACPI PM1a_EVT_BLK
    0404-0405 : ACPI PM1a_CNT_BLK
    0408-040b : ACPI PM_TMR
    0410-0415 : ACPI CPU throttle
    0420-042f : ACPI GPE0_BLK
    0450-0450 : ACPI PM2_CNT_BLK
  0454-0457 : pnp 00:07
  0458-047f : pnp 00:05
  04d0-04d1 : pnp 00:0a
  0500-057f : pnp 00:05
  0680-069f : pnp 00:05
0cf8-0cff : PCI conf1
0d00-ffff : PCI Bus 0000:00
  164e-164f : pnp 00:05
  c000-cfff : PCI Bus 0000:05
    c000-c0ff : 0000:05:00.0
      c000-c0ff : r8169
  d000-dfff : PCI Bus 0000:03
    d000-d00f : 0000:03:00.0
      d000-d00f : pata_via
    d010-d013 : 0000:03:00.0
      d010-d013 : pata_via
    d020-d027 : 0000:03:00.0
      d020-d027 : pata_via
    d030-d033 : 0000:03:00.0
      d030-d033 : pata_via
    d040-d047 : 0000:03:00.0
      d040-d047 : pata_via
  e000-efff : PCI Bus 0000:01
    e000-e07f : 0000:01:00.0
  f000-f01f : 0000:00:1f.3
  f020-f02f : 0000:00:1f.5
    f020-f02f : ata_piix
  f030-f03f : 0000:00:1f.5
    f030-f03f : ata_piix
  f040-f043 : 0000:00:1f.5
    f040-f043 : ata_piix
  f050-f057 : 0000:00:1f.5
    f050-f057 : ata_piix
  f060-f063 : 0000:00:1f.5
    f060-f063 : ata_piix
  f070-f077 : 0000:00:1f.5
    f070-f077 : ata_piix
  f080-f08f : 0000:00:1f.2
    f080-f08f : ata_piix
  f090-f09f : 0000:00:1f.2
    f090-f09f : ata_piix
  f0a0-f0a3 : 0000:00:1f.2
    f0a0-f0a3 : ata_piix
  f0b0-f0b7 : 0000:00:1f.2
    f0b0-f0b7 : ata_piix
  f0c0-f0c3 : 0000:00:1f.2
    f0c0-f0c3 : ata_piix
  f0d0-f0d7 : 0000:00:1f.2
    f0d0-f0d7 : ata_piix
  ffff-ffff : pnp 00:05
    ffff-ffff : pnp 00:05


00000000-0000ffff : reserved
00010000-0009ebff : System RAM
0009ec00-0009ffff : reserved
000a0000-000bffff : PCI Bus 0000:00
  000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000d0000-000d3fff : PCI Bus 0000:00
000d4000-000d7fff : PCI Bus 0000:00
000d8000-000dbfff : PCI Bus 0000:00
000dc000-000dffff : PCI Bus 0000:00
000e0000-000fffff : reserved
  000e0000-000e3fff : PCI Bus 0000:00
  000e4000-000e7fff : PCI Bus 0000:00
  000f0000-000fffff : System ROM
00100000-de948fff : System RAM
  01000000-015af13b : Kernel code
  015af13c-0187627f : Kernel data
  01936000-01a0efff : Kernel bss
de949000-df13bfff : reserved
df13c000-df38dfff : ACPI Non-volatile Storage
df38e000-df39bfff : ACPI Tables
df39c000-df3bbfff : ACPI Non-volatile Storage
df3bc000-df3c0fff : ACPI Tables
df3c1000-df403fff : ACPI Non-volatile Storage
df404000-df7fffff : System RAM
df800000-dfffffff : RAM buffer
e0000000-feafffff : PCI Bus 0000:00
  e0000000-ebffffff : PCI Bus 0000:01
    e0000000-e7ffffff : 0000:01:00.0
    e8000000-ebffffff : 0000:01:00.0
      e9000000-e94fffff : vesafb
  ec100000-ec1fffff : PCI Bus 0000:05
    ec100000-ec103fff : 0000:05:00.0
      ec100000-ec103fff : r8169
    ec104000-ec104fff : 0000:05:00.0
      ec104000-ec104fff : r8169
  ec200000-ec200fff : pnp 00:0e
  f4000000-f60fffff : PCI Bus 0000:01
    f4000000-f5ffffff : 0000:01:00.0
      f4000000-f5ffffff : nvidia
    f6000000-f607ffff : 0000:01:00.0
    f6080000-f6083fff : 0000:01:00.1
      f6080000-f6083fff : ICH HD audio
  f6100000-f61fffff : PCI Bus 0000:04
    f6100000-f6107fff : 0000:04:00.0
      f6100000-f6107fff : xhci_hcd
  f6200000-f62fffff : PCI Bus 0000:03
    f6200000-f620ffff : 0000:03:00.0
  f6300000-f6303fff : 0000:00:1b.0
    f6300000-f6303fff : ICH HD audio
  f6305000-f63050ff : 0000:00:1f.3
  f6306000-f63063ff : 0000:00:1d.0
    f6306000-f63063ff : ehci_hcd
  f6307000-f63073ff : 0000:00:1a.0
    f6307000-f63073ff : ehci_hcd
  f630a000-f630a00f : 0000:00:16.0
    f630a000-f630a00f : mei
  f8000000-fbffffff : PCI MMCONFIG 0000 [bus 00-3f]
    f8000000-fbffffff : reserved
      f8000000-fbffffff : pnp 00:0e
fec00000-fec00fff : reserved
  fec00000-fec003ff : IOAPIC 0
fed00000-fed03fff : reserved
  fed00000-fed003ff : HPET 0
fed10000-fed17fff : pnp 00:0e
fed18000-fed18fff : pnp 00:0e
fed19000-fed19fff : pnp 00:0e
fed1c000-fed1ffff : reserved
  fed1c000-fed1ffff : pnp 00:0e
fed20000-fed3ffff : pnp 00:0e
fed40000-fed44fff : pnp 00:01
fed45000-fed8ffff : pnp 00:0e
fed90000-fed93fff : pnp 00:0e
fee00000-fee00fff : Local APIC
  fee00000-fee00fff : reserved
ff000000-ffffffff : reserved
  ff000000-ffffffff : pnp 00:0e
100000000-11effffff : System RAM
11f000000-11fffffff : RAM buffer

[7.5.] PCI information ('lspci -vvv' as root)

See the attached file lspci -vvv.txt

[7.6.] SCSI information (from /proc/scsi/scsi)

Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: WDC WD5000AAKX-0 Rev: 15.0
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: TSSTcorp Model: CDDVDW SH-222AB  Rev: SB00
  Type:   CD-ROM                           ANSI  SCSI revision: 05
Host: scsi2 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: ST3500410AS      Rev: CC31
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi4 Channel: 00 Id: 01 Lun: 00
  Vendor: ATA      Model: WDC WD1600JB-00R Rev: 20.0
  Type:   Direct-Access                    ANSI  SCSI revision: 05

[7.7.] Other information that might be relevant to the problem (please 
look in /proc and include all information that you think to be 
relevant): 
NA

[X.] Other notes, patches, fixes, workarounds: 
Suggested solution:
The driver for this camera is gspca_pac207 (located at /lib/modules/ 2.6.31- 
19-generic/ kernel/ drivers/ media/video/ gspca).
In the driver source file pac207.c it can be seen that the bit 1 of the 
register at 0x41 controls the LED. Looks like it was assumed that '0' at
 this bit turns the light off, when actually '1' does that. After I've 
changed the value of this register to the opposite, the re-compiled 
driver works correctly and the LED is on only when the camera is in use.
I've attached the modified pac207.c. The diff of the changed file vs. original 
is below:
272c272 change:
pac207_ write_reg( gspca_dev, 0x41, 0x00);
to:
pac207_ write_reg( gspca_dev, 0x41, 0x02);
308c308 change:
mode = 0x02; /* Image Format (Bit 0), LED (1), Compr. test mode (2) */
to:
mode = 0x00; /* Image Format (Bit 0), LED (1), Compr. test mode (2) */
331c331 change:
pac207_ write_reg( gspca_dev, 0x41, 0x00); /* Turn of LED */
to:
pac207_ write_reg( gspca_dev, 0x41, 0x02); /* Turn off LED */

** Attachment added: "lspci -vvv.txt"
   
https://bugs.launchpad.net/bugs/525959/+attachment/3441242/+files/lspci%20-vvv.txt

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/525959

Title:
  093a:2460 Webcam (Pixart PAC207BCA) - inverted LED logic

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/525959/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to