Commit 70375ecc authored by Antti Palosaari's avatar Antti Palosaari Committed by Mauro Carvalho Chehab
Browse files

[media] af9035: change dual mode boolean to bit field



For some reason there seems to be value	0x03 in eeprom for dual mode
(and 0x00 for single mode). Boolean is not always 1 bit wide - it
could be 8 bit wide too. Storing number 0x03 to boolean causes driver
to thing there is 4 tuners in some cases :o
Add also some comments regarding to eeprom.

Signed-off-by: default avatarAntti Palosaari <crope@iki.fi>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 1c72fe26
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -59,7 +59,7 @@ struct state {
	u8 prechip_version;
	u8 chip_version;
	u16 chip_type;
	bool dual_mode;
	u8 dual_mode:1;
	u16 eeprom_addr;
	struct af9033_config af9033_config[2];
};
@@ -96,6 +96,14 @@ static const u32 clock_lut_it9135[] = {
#define AF9035_FIRMWARE_IT9135_V1 "dvb-usb-it9135-01.fw"
#define AF9035_FIRMWARE_IT9135_V2 "dvb-usb-it9135-02.fw"

/*
 * eeprom is memory mapped as read only. Writing that memory mapped address
 * will not corrupt eeprom.
 *
 * eeprom has value 0x00 single mode and 0x03 for dual mode as far as I have
 * seen to this day.
 */

#define EEPROM_BASE_AF9035        0x42fd
#define EEPROM_BASE_IT9135        0x499c
#define EEPROM_SHIFT                0x10