diff options
author | Anton Sviridenko <anton@corp.bluecherry.net> | 2017-07-01 07:26:01 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@s-opensource.com> | 2017-07-20 06:53:34 -0400 |
commit | 3361d54eecccc8e0f9b9893bdca1c2b84fbe0d30 (patch) | |
tree | d7b53c9c3f475fcc472ef811685ff907ec574510 /drivers/media/pci/solo6x10 | |
parent | d05431a1ef5600cd72f114362e63a7ad7255b98a (diff) | |
download | linux-stable-3361d54eecccc8e0f9b9893bdca1c2b84fbe0d30.tar.gz linux-stable-3361d54eecccc8e0f9b9893bdca1c2b84fbe0d30.tar.bz2 linux-stable-3361d54eecccc8e0f9b9893bdca1c2b84fbe0d30.zip |
media: solo6x10: fix detection of TW2864B chips
This patch enables support for non-Bluecherry labeled solo6110
based PCI cards which have 3 x TW2864B chips and one TW2865.
These cards are displayed by lspci -nn as
"Softlogic Co., Ltd. SOLO6110 H.264 Video encoder/decoder [9413:6110]"
Bluecherry cards have 4 x TW2864A. According to datasheet register 0xFF
of TW2864B chips contains value 0x6A or 0x6B depending on revision
which being shifted 3 bits right gives value 0x0d.
Existing version of solo6x10 fails on these cards with
[276582.344942] solo6x10 0000:07:00.0: Probing Softlogic 6110
[276582.402151] solo6x10 0000:07:00.0: Could not initialize any techwell chips
[276582.402781] solo6x10: probe of 0000:07:00.0 failed with error -22
Signed-off-by: Anton Sviridenko <anton@corp.bluecherry.net>
Acked-by: Andrey Utkin <andrey_utkin@fastmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'drivers/media/pci/solo6x10')
-rw-r--r-- | drivers/media/pci/solo6x10/solo6x10-tw28.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/pci/solo6x10/solo6x10-tw28.c b/drivers/media/pci/solo6x10/solo6x10-tw28.c index 1c013a03d851..7ecb725b6dd2 100644 --- a/drivers/media/pci/solo6x10/solo6x10-tw28.c +++ b/drivers/media/pci/solo6x10/solo6x10-tw28.c @@ -606,6 +606,7 @@ int solo_tw28_init(struct solo_dev *solo_dev) solo_dev->tw28_cnt++; break; case 0x0c: + case 0x0d: solo_dev->tw2864 |= 1 << i; solo_dev->tw28_cnt++; break; |