[media] NetUP Dual DVB-T/C CI RF: load firmware according card revision
Currently available two hardware revision: 0x1 firmware filename: dvb-netup-altera-01.fw 0x4 firmware filename: dvb-netup-altera-04.fw Signed-off-by: Abylay Ospan <aospan@netup.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
1752cd5d3e
commit
b8f0d306b7
|
@ -29,6 +29,7 @@
|
|||
#include "../../../staging/altera-stapl/altera.h"
|
||||
#include "cx23885.h"
|
||||
#include "tuner-xc2028.h"
|
||||
#include "netup-eeprom.h"
|
||||
#include "netup-init.h"
|
||||
#include "altera-ci.h"
|
||||
#include "xc4000.h"
|
||||
|
@ -1430,6 +1431,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
|
|||
const struct firmware *fw;
|
||||
const char *filename = "dvb-netup-altera-01.fw";
|
||||
char *action = "configure";
|
||||
static struct netup_card_info cinfo;
|
||||
struct altera_config netup_config = {
|
||||
.dev = dev,
|
||||
.action = action,
|
||||
|
@ -1438,6 +1440,18 @@ void cx23885_card_setup(struct cx23885_dev *dev)
|
|||
|
||||
netup_initialize(dev);
|
||||
|
||||
netup_get_card_info(&dev->i2c_bus[0].i2c_adap, &cinfo);
|
||||
switch (cinfo.rev) {
|
||||
case 0x4:
|
||||
filename = "dvb-netup-altera-04.fw";
|
||||
break;
|
||||
default:
|
||||
filename = "dvb-netup-altera-01.fw";
|
||||
break;
|
||||
}
|
||||
printk(KERN_INFO "NetUP card rev=0x%x fw_filename=%s\n",
|
||||
cinfo.rev, filename);
|
||||
|
||||
ret = request_firmware(&fw, filename, &dev->pci->dev);
|
||||
if (ret != 0)
|
||||
printk(KERN_ERR "did not find the firmware file. (%s) "
|
||||
|
|
Loading…
Reference in New Issue