Loading drivers/staging/tm6000/hack.c +156 −2 Original line number Diff line number Diff line Loading @@ -37,7 +37,6 @@ static inline int tm6000_snd_control_msg(struct tm6000_core *dev, __u8 request, static int pseudo_zl10353_pll(struct tm6000_core *tm6000_dev, struct dvb_frontend_parameters *p) { int ret; u8 *data = kzalloc(50*sizeof(u8), GFP_KERNEL); printk(KERN_ALERT "should set frequency %u\n", p->frequency); Loading @@ -51,7 +50,7 @@ printk(KERN_ALERT "and bandwith %u\n", p->u.ofdm.bandwidth); } // init ZL10353 data[0] = 0x0b; /* data[0] = 0x0b; ret = tm6000_snd_control_msg(tm6000_dev, 0x10, 0x501e, 0x00, data, 0x1); msleep(15); data[0] = 0x80; Loading Loading @@ -189,6 +188,161 @@ printk(KERN_ALERT "and bandwith %u\n", p->u.ofdm.bandwidth); msleep(15); break; } */ switch(p->u.ofdm.bandwidth) { case BANDWIDTH_8_MHZ: data[0] = 0x03; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x501e,0,data,1); msleep(40); data[0] = 0x44; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x511e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x46; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x521e,0,data,1); msleep(40); data[0] = 0x15; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x531e,0,data,1); msleep(40); data[0] = 0x0f; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x541e,0,data,1); msleep(40); data[0] = 0x80; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x00; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x8b; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x631e,0,data,1); msleep(40); data[0] = 0x75; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xcc1e,0,data,1); msleep(40); data[0] = 0xe6; //0x19; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6c1e,0,data,1); msleep(40); data[0] = 0x09; //0xf7; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6d1e,0,data,1); msleep(40); data[0] = 0x67; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x651e,0,data,1); msleep(40); data[0] = 0xe5; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x661e,0,data,1); msleep(40); data[0] = 0x75; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5c1e,0,data,1); msleep(40); data[0] = 0x17; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5f1e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5e1e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x701e,0,data,1); msleep(40); break; case BANDWIDTH_7_MHZ: data[0] = 0x03; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x501e,0,data,1); msleep(40); data[0] = 0x44; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x511e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x46; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x521e,0,data,1); msleep(40); data[0] = 0x15; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x531e,0,data,1); msleep(40); data[0] = 0x0f; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x541e,0,data,1); msleep(40); data[0] = 0x80; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x00; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x83; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x631e,0,data,1); msleep(40); data[0] = 0xa3; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xcc1e,0,data,1); msleep(40); data[0] = 0xe6; //0x19; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6c1e,0,data,1); msleep(40); data[0] = 0x09; //0xf7; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6d1e,0,data,1); msleep(40); data[0] = 0x5a; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x651e,0,data,1); msleep(40); data[0] = 0xe9; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x661e,0,data,1); msleep(40); data[0] = 0x86; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5c1e,0,data,1); msleep(40); data[0] = 0x17; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5f1e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5e1e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x701e,0,data,1); msleep(40); break; default: printk(KERN_ALERT "tm6000: bandwidth not supported\n"); } tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x0f1f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x091f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x0b1f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); kfree(data); Loading Loading
drivers/staging/tm6000/hack.c +156 −2 Original line number Diff line number Diff line Loading @@ -37,7 +37,6 @@ static inline int tm6000_snd_control_msg(struct tm6000_core *dev, __u8 request, static int pseudo_zl10353_pll(struct tm6000_core *tm6000_dev, struct dvb_frontend_parameters *p) { int ret; u8 *data = kzalloc(50*sizeof(u8), GFP_KERNEL); printk(KERN_ALERT "should set frequency %u\n", p->frequency); Loading @@ -51,7 +50,7 @@ printk(KERN_ALERT "and bandwith %u\n", p->u.ofdm.bandwidth); } // init ZL10353 data[0] = 0x0b; /* data[0] = 0x0b; ret = tm6000_snd_control_msg(tm6000_dev, 0x10, 0x501e, 0x00, data, 0x1); msleep(15); data[0] = 0x80; Loading Loading @@ -189,6 +188,161 @@ printk(KERN_ALERT "and bandwith %u\n", p->u.ofdm.bandwidth); msleep(15); break; } */ switch(p->u.ofdm.bandwidth) { case BANDWIDTH_8_MHZ: data[0] = 0x03; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x501e,0,data,1); msleep(40); data[0] = 0x44; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x511e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x46; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x521e,0,data,1); msleep(40); data[0] = 0x15; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x531e,0,data,1); msleep(40); data[0] = 0x0f; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x541e,0,data,1); msleep(40); data[0] = 0x80; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x00; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x8b; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x631e,0,data,1); msleep(40); data[0] = 0x75; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xcc1e,0,data,1); msleep(40); data[0] = 0xe6; //0x19; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6c1e,0,data,1); msleep(40); data[0] = 0x09; //0xf7; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6d1e,0,data,1); msleep(40); data[0] = 0x67; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x651e,0,data,1); msleep(40); data[0] = 0xe5; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x661e,0,data,1); msleep(40); data[0] = 0x75; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5c1e,0,data,1); msleep(40); data[0] = 0x17; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5f1e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5e1e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x701e,0,data,1); msleep(40); break; case BANDWIDTH_7_MHZ: data[0] = 0x03; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x501e,0,data,1); msleep(40); data[0] = 0x44; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x511e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x46; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x521e,0,data,1); msleep(40); data[0] = 0x15; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x531e,0,data,1); msleep(40); data[0] = 0x0f; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x541e,0,data,1); msleep(40); data[0] = 0x80; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x551e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x00; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xea1e,0,data,1); msleep(40); data[0] = 0x83; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x631e,0,data,1); msleep(40); data[0] = 0xa3; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0xcc1e,0,data,1); msleep(40); data[0] = 0xe6; //0x19; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6c1e,0,data,1); msleep(40); data[0] = 0x09; //0xf7; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x6d1e,0,data,1); msleep(40); data[0] = 0x5a; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x651e,0,data,1); msleep(40); data[0] = 0xe9; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x661e,0,data,1); msleep(40); data[0] = 0x86; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5c1e,0,data,1); msleep(40); data[0] = 0x17; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5f1e,0,data,1); msleep(40); data[0] = 0x40; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x5e1e,0,data,1); msleep(40); data[0] = 0x01; tm6000_read_write_usb(tm6000_dev,0x40,0x10,0x701e,0,data,1); msleep(40); break; default: printk(KERN_ALERT "tm6000: bandwidth not supported\n"); } tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x051f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x0f1f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x091f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); tm6000_read_write_usb(tm6000_dev,0xc0,0x10,0x0b1f,0,data,2); printk(KERN_INFO "buf %#x %#x \n", data[0], data[1]); msleep(40); kfree(data); Loading