Re: [PATCH] [media] solo6x10: fix detection of TW2864B chips

2017-07-01 Thread Andrey Utkin
On Sat, Jul 01, 2017 at 03:26:01PM +0400, Anton Sviridenko wrote:
> 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 :07:00.0: Probing Softlogic 6110
> [276582.402151] solo6x10 :07:00.0: Could not initialize any techwell chips
> [276582.402781] solo6x10: probe of :07:00.0 failed with error -22
> 
> Signed-off-by: Anton Sviridenko 

Acked-by: Andrey Utkin 

I have looked into same case long time ago, just haven't managed to
conclude.


[PATCH] [media] solo6x10: fix detection of TW2864B chips

2017-07-01 Thread Anton Sviridenko
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 :07:00.0: Probing Softlogic 6110
[276582.402151] solo6x10 :07:00.0: Could not initialize any techwell chips
[276582.402781] solo6x10: probe of :07:00.0 failed with error -22

Signed-off-by: Anton Sviridenko 
---
 drivers/media/pci/solo6x10/solo6x10-tw28.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/media/pci/solo6x10/solo6x10-tw28.c 
b/drivers/media/pci/solo6x10/solo6x10-tw28.c
index 0632d3f7c73c..c74a0fdb35fb 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;
-- 
2.13.0