* stk webcam driver needs DMI upside down table
@ 2012-04-06 16:04 Gregor Jasny
2012-04-08 14:12 ` Hans de Goede
0 siblings, 1 reply; 2+ messages in thread
From: Gregor Jasny @ 2012-04-06 16:04 UTC (permalink / raw)
To: Linux Media Mailing List; +Cc: Hans de Goede, Jaime Velasco Juan
[-- Attachment #1: Type: text/plain, Size: 503 bytes --]
Hello,
I recently received a webcam upside down report from a ASUS Z96Fm owner.
Usually we add the USB id and DMI information to the libv4l upside down
table. Except for webcam drivers that can flip images in hardware. By
looking at stk-webcam.c I see both, a hflip anf vflip parameter.
Some gspca drivers handle the situation by adding a DMI table to the
webcam driver. Would this make sense for the STK driver, too?
I've attached the dmi and usb information to populate the table.
Thanks,
Gregor
[-- Attachment #2: dmi.log --]
[-- Type: text/plain, Size: 11212 bytes --]
# dmidecode 2.11
SMBIOS 2.4 present.
33 structures occupying 1420 bytes.
Table at 0x000F0690.
Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
Vendor: American Megatrends Inc.
Version: 080012
Release Date: 06/08/2007
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 512 kB
Characteristics:
ISA is supported
PCI is supported
PC Card (PCMCIA) is supported
PNP is supported
BIOS is upgradeable
BIOS shadowing is allowed
ESCD support is available
Boot from CD is supported
Selectable boot is supported
BIOS ROM is socketed
EDD is supported
5.25"/1.2 MB floppy services are supported (int 13h)
3.5"/720 kB floppy services are supported (int 13h)
3.5"/2.88 MB floppy services are supported (int 13h)
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
CGA/mono video services are supported (int 10h)
ACPI is supported
USB legacy is supported
LS-120 boot is supported
ATAPI Zip drive boot is supported
BIOS boot specification is supported
Targeted content distribution is supported
BIOS Revision: 8.12
Handle 0x0001, DMI type 1, 27 bytes
System Information
Manufacturer: To Be Filled By O.E.M.
Product Name: Z96FM
Version: 1.0
Serial Number: NB-1234567890
UUID: Not Present
Wake-up Type: Power Switch
SKU Number: To Be Filled By O.E.M.
Family: To Be Filled By O.E.M.
Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
Manufacturer: To Be Filled By O.E.M.
Product Name: Z96FM
Version: 1.00
Serial Number: NB-0123456789
Asset Tag: To Be Filled By O.E.M.
Features:
Board is a hosting board
Board is replaceable
Location In Chassis: To Be Filled By O.E.M.
Chassis Handle: 0x0003
Type: Motherboard
Contained Object Handles: 0
Handle 0x0003, DMI type 3, 21 bytes
Chassis Information
Manufacturer: To Be Filled By O.E.M.
Type: Notebook
Lock: Present
Version: 1.0
Serial Number: 0x00000000
Asset Tag: 0x00000000
Boot-up State: Safe
Power Supply State: Safe
Thermal State: Safe
Security Status: None
OEM Information: 0x00000000
Height: Unspecified
Number Of Power Cords: 1
Contained Elements: 0
Handle 0x0004, DMI type 4, 35 bytes
Processor Information
Socket Designation: Socket 478M
Type: Central Processor
Family: Core Solo
Manufacturer: Intel
ID: EC 06 00 00 FF FB E9 BF
Signature: Type 0, Family 6, Model 14, Stepping 12
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
CLFSH (CLFLUSH instruction supported)
DS (Debug store)
ACPI (ACPI supported)
MMX (MMX technology supported)
FXSR (FXSAVE and FXSTOR instructions supported)
SSE (Streaming SIMD extensions)
SSE2 (Streaming SIMD extensions 2)
SS (Self-snoop)
HTT (Multi-threading)
TM (Thermal monitor supported)
PBE (Pending break enabled)
Version: Intel(R) Core(TM) Duo CPU T2350 @ 1.86GHz
Voltage: 1.4 V
External Clock: 133 MHz
Max Speed: 1866 MHz
Current Speed: 1866 MHz
Status: Populated, Enabled
Upgrade: Other
L1 Cache Handle: 0x0005
L2 Cache Handle: 0x0006
L3 Cache Handle: 0x0007
Serial Number: To Be Filled By O.E.M.
Asset Tag: To Be Filled By O.E.M.
Part Number: To Be Filled By O.E.M.
Handle 0x0005, DMI type 7, 19 bytes
Cache Information
Socket Designation: L1-Cache
Configuration: Enabled, Not Socketed, Level 1
Operational Mode: Write Back
Location: Internal
Installed Size: 32 kB
Maximum Size: 32 kB
Supported SRAM Types:
Other
Installed SRAM Type: Other
Speed: Unknown
Error Correction Type: Parity
System Type: Data
Associativity: 8-way Set-associative
Handle 0x0006, DMI type 7, 19 bytes
Cache Information
Socket Designation: L2-Cache
Configuration: Enabled, Not Socketed, Level 2
Operational Mode: Write Back
Location: Internal
Installed Size: 2048 kB
Maximum Size: 2048 kB
Supported SRAM Types:
Other
Installed SRAM Type: Other
Speed: Unknown
Error Correction Type: Single-bit ECC
System Type: Instruction
Associativity: 8-way Set-associative
Handle 0x0007, DMI type 7, 19 bytes
Cache Information
Socket Designation: L3-Cache
Configuration: Disabled, Not Socketed, Level 3
Operational Mode: Unknown
Location: Internal
Installed Size: 0 kB
Maximum Size: 0 kB
Supported SRAM Types:
Unknown
Installed SRAM Type: Unknown
Speed: Unknown
Error Correction Type: Unknown
System Type: Unknown
Associativity: Unknown
Handle 0x0008, DMI type 5, 20 bytes
Memory Controller Information
Error Detecting Method: 64-bit ECC
Error Correcting Capabilities:
None
Supported Interleave: One-way Interleave
Current Interleave: One-way Interleave
Maximum Memory Module Size: 1024 MB
Maximum Total Memory Size: 2048 MB
Supported Speeds:
Other
Supported Memory Types:
DIMM
SDRAM
Memory Module Voltage: 3.3 V
Associated Memory Slots: 2
0x0009
0x000A
Enabled Error Correcting Capabilities:
None
Handle 0x0009, DMI type 6, 12 bytes
Memory Module Information
Socket Designation: DIMM0
Bank Connections: 0 1
Current Speed: Unknown
Type: DIMM SDRAM
Installed Size: 1024 MB (Single-bank Connection)
Enabled Size: 1024 MB (Single-bank Connection)
Error Status: OK
Handle 0x000A, DMI type 6, 12 bytes
Memory Module Information
Socket Designation: DIMM1
Bank Connections: 4 5
Current Speed: Unknown
Type: DIMM SDRAM
Installed Size: 1024 MB (Double-bank Connection)
Enabled Size: 1024 MB (Double-bank Connection)
Error Status: OK
Handle 0x000B, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J2A2
Internal Connector Type: None
External Reference Designator: USB1
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x000C, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J2A2
Internal Connector Type: None
External Reference Designator: USB2
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x000D, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J5A1
Internal Connector Type: None
External Reference Designator: USB3
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x000E, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J5A1
Internal Connector Type: None
External Reference Designator: USB4
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x000F, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J6A1
Internal Connector Type: None
External Reference Designator: Audio Mic In
External Connector Type: Mini Jack (headphones)
Port Type: Audio Port
Handle 0x0010, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J6A1
Internal Connector Type: None
External Reference Designator: Audio Line In
External Connector Type: Mini Jack (headphones)
Port Type: Audio Port
Handle 0x0011, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J6A1
Internal Connector Type: None
External Reference Designator: Audio Line Out
External Connector Type: Mini Jack (headphones)
Port Type: Audio Port
Handle 0x0012, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J5A1
Internal Connector Type: None
External Reference Designator: LAN
External Connector Type: RJ-45
Port Type: Network Port
Handle 0x0013, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J6J2 - PRI IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x0014, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: J6J1 - SEC IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x0015, DMI type 10, 6 bytes
On Board Device Information
Type: Video
Status: Enabled
Description: To Be Filled By O.E.M.
Handle 0x0016, DMI type 11, 5 bytes
OEM Strings
String 1: To Be Filled By O.E.M.
String 2: To Be Filled By O.E.M.
String 3: To Be Filled By O.E.M.
String 4: To Be Filled By O.E.M.
Handle 0x0017, DMI type 13, 22 bytes
BIOS Language Information
Language Description Format: Abbreviated
Installable Languages: 1
en|US|iso8859-1
Currently Installed Language: en|US|iso8859-1
Handle 0x0018, DMI type 15, 35 bytes
System Event Log
Area Length: 4 bytes
Header Start Offset: 0x0000
Header Length: 2 bytes
Data Start Offset: 0x0002
Access Method: Indexed I/O, one 16-bit index port, one 8-bit data port
Access Address: Index 0x046A, Data 0x046C
Status: Invalid, Not Full
Change Token: 0x00000000
Header Format: No Header
Supported Log Type Descriptors: 6
Descriptor 1: End of log
Data Format 1: OEM-specific
Descriptor 2: End of log
Data Format 2: OEM-specific
Descriptor 3: End of log
Data Format 3: OEM-specific
Descriptor 4: End of log
Data Format 4: OEM-specific
Descriptor 5: End of log
Data Format 5: OEM-specific
Descriptor 6: End of log
Data Format 6: OEM-specific
Handle 0x0019, DMI type 16, 15 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 4 GB
Error Information Handle: Not Provided
Number Of Devices: 2
Handle 0x001A, DMI type 19, 15 bytes
Memory Array Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000800003FF
Range Size: 2 GB
Physical Array Handle: 0x0019
Partition Width: 4
Handle 0x001B, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x0019
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 1024 MB
Form Factor: DIMM
Set: None
Locator: DIMM0
Bank Locator: BANK0
Type: SDRAM
Type Detail: Synchronous
Speed: Unknown
Manufacturer: Manufacturer0
Serial Number: SerNum0
Asset Tag: AssetTagNum0
Part Number: PartNum0
Handle 0x001C, DMI type 20, 19 bytes
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0003FFFFFFF
Range Size: 1 GB
Physical Device Handle: 0x001B
Memory Array Mapped Address Handle: 0x001A
Partition Row Position: 1
Interleaved Data Depth: 1
Handle 0x001D, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x0019
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 1024 MB
Form Factor: DIMM
Set: None
Locator: DIMM1
Bank Locator: BANK1
Type: SDRAM
Type Detail: Synchronous
Speed: Unknown
Manufacturer: Manufacturer1
Serial Number: SerNum1
Asset Tag: AssetTagNum1
Part Number: PartNum1
Handle 0x001E, DMI type 126, 19 bytes
Inactive
Handle 0x001F, DMI type 32, 20 bytes
System Boot Information
Status: No errors detected
Handle 0x0020, DMI type 127, 4 bytes
End Of Table
[-- Attachment #3: lsusb.log --]
[-- Type: text/plain, Size: 393 bytes --]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 05e1:0501 Syntek Semiconductor Co., Ltd DC-1125 Webcam
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: stk webcam driver needs DMI upside down table
2012-04-06 16:04 stk webcam driver needs DMI upside down table Gregor Jasny
@ 2012-04-08 14:12 ` Hans de Goede
0 siblings, 0 replies; 2+ messages in thread
From: Hans de Goede @ 2012-04-08 14:12 UTC (permalink / raw)
To: Gregor Jasny; +Cc: Linux Media Mailing List, Jaime Velasco Juan
Hi,
On 04/06/2012 06:04 PM, Gregor Jasny wrote:
> Hello,
>
> I recently received a webcam upside down report from a ASUS Z96Fm owner.
> Usually we add the USB id and DMI information to the libv4l upside down
> table. Except for webcam drivers that can flip images in hardware. By
> looking at stk-webcam.c I see both, a hflip anf vflip parameter.
>
> Some gspca drivers handle the situation by adding a DMI table to the
> webcam driver. Would this make sense for the STK driver, too?
hehe, funny I still had an upside down report for the STK driver
(for a different model laptop) on my to-do list.
WRT your question, maybe adding a dmi table to the driver makes sense,
but first we must change its behavior away from flipping the image
by default to leaving the image upright. Which should fix things for
the Z96FM laptop this thread started with, as well as for the Asus
A3H laptop for which I've a report.
If we then get bug reports after making this change, then those will be
for laptops which actually do have the sensor upside down (which I think
we will, I assume that is the reason currently the driver is flipping by
default) and we can collect dmi info from the reporters and add *those*
to a dmi table :)
So for now I'm going to send a patch upstream to change the default
to not flip.
Regards,
Hans
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-04-08 14:10 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-06 16:04 stk webcam driver needs DMI upside down table Gregor Jasny
2012-04-08 14:12 ` Hans de Goede
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).