From: Mauro Carvalho Chehab Date: Wed, 11 Jan 2012 13:00:28 +0000 (-0200) Subject: mb86a20s: Add a few more register settings at the init seq X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ebe967492c681da781dbc0f7c0d6a1b5c1977d45;p=mv-sheeva.git mb86a20s: Add a few more register settings at the init seq Some time ago, Manoel sent us a patch adding more stuff to the init sequence. However, his patch were also doing non-related stuff, by changing the init logic without any good reason. So, it was asked for him to submit a patch with just the data that has changed, in order to allow us to better analyze it. As he didn't what it was requested, I finally found some time to dig into his init sequence and add it here. Basically, new stuff is added there. There are a few changes: 1) The removal of the extra (duplicated) logic that puts the chip into the serial mode; 2) Some Viterbi VBER measurement init data was changed from 0x00 to 0xff for layer A, to match what was done for layers B and C. None of those caused any regressions and both make sense on my eyes. The other parameters additions actually increased the tuning quality for some channels. Yet, some channels that were previously discovered with scan disappered, while others appeared instead. This were tested in Brasilia, with an external antena. At the overall, it is now a little better. So, better to add these, and then try to figure out a configuration that would get even better scanning results. Reported-by: Manoel Pinheiro Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/dvb/frontends/mb86a20s.c b/drivers/media/dvb/frontends/mb86a20s.c index 011a106bd07..7fa3e472cdc 100644 --- a/drivers/media/dvb/frontends/mb86a20s.c +++ b/drivers/media/dvb/frontends/mb86a20s.c @@ -66,6 +66,7 @@ static struct regdata mb86a20s_init[] = { { 0x71, 0x00 }, { 0x28, 0x2a }, { 0x29, 0x00 }, { 0x2a, 0xff }, { 0x2b, 0x80 }, { 0x28, 0x20 }, { 0x29, 0x33 }, { 0x2a, 0xdf }, { 0x2b, 0xa9 }, + { 0x28, 0x22 }, { 0x29, 0x00 }, { 0x2a, 0x1f }, { 0x2b, 0xf0 }, { 0x3b, 0x21 }, { 0x3c, 0x3a }, { 0x01, 0x0d }, @@ -91,14 +92,16 @@ static struct regdata mb86a20s_init[] = { { 0x04, 0x07 }, { 0x05, 0xd8 }, { 0x04, 0x12 }, { 0x05, 0x00 }, { 0x04, 0x13 }, { 0x05, 0xff }, + { 0x04, 0x15 }, { 0x05, 0x4e }, + { 0x04, 0x16 }, { 0x05, 0x20 }, { 0x52, 0x01 }, - { 0x50, 0xa7 }, { 0x51, 0x00 }, + { 0x50, 0xa7 }, { 0x51, 0xff }, { 0x50, 0xa8 }, { 0x51, 0xff }, { 0x50, 0xa9 }, { 0x51, 0xff }, - { 0x50, 0xaa }, { 0x51, 0x00 }, + { 0x50, 0xaa }, { 0x51, 0xff }, { 0x50, 0xab }, { 0x51, 0xff }, { 0x50, 0xac }, { 0x51, 0xff }, - { 0x50, 0xad }, { 0x51, 0x00 }, + { 0x50, 0xad }, { 0x51, 0xff }, { 0x50, 0xae }, { 0x51, 0xff }, { 0x50, 0xaf }, { 0x51, 0xff }, { 0x5e, 0x07 }, @@ -123,6 +126,11 @@ static struct regdata mb86a20s_init[] = { { 0x50, 0xd6 }, { 0x51, 0x1f }, { 0x50, 0xd2 }, { 0x51, 0x03 }, { 0x50, 0xd7 }, { 0x51, 0x3f }, + { 0x28, 0x74 }, { 0x29, 0x00 }, { 0x28, 0x74 }, { 0x29, 0x40 }, + { 0x28, 0x46 }, { 0x29, 0x2c }, { 0x28, 0x46 }, { 0x29, 0x0c }, + { 0x04, 0x40 }, { 0x05, 0x01 }, + { 0x28, 0x00 }, { 0x29, 0x10 }, + { 0x28, 0x05 }, { 0x29, 0x02 }, { 0x1c, 0x01 }, { 0x28, 0x06 }, { 0x29, 0x00 }, { 0x2a, 0x00 }, { 0x2b, 0x03 }, { 0x28, 0x07 }, { 0x29, 0x00 }, { 0x2a, 0x00 }, { 0x2b, 0x0d }, @@ -157,7 +165,7 @@ static struct regdata mb86a20s_init[] = { { 0x50, 0x26 }, { 0x51, 0x00 }, { 0x50, 0x27 }, { 0x51, 0xc3 }, { 0x50, 0x39 }, { 0x51, 0x02 }, - { 0x50, 0xd5 }, { 0x51, 0x01 }, + { 0x28, 0x6a }, { 0x29, 0x00 }, { 0x2a, 0x00 }, { 0x2b, 0x00 }, { 0xd0, 0x00 }, };