Lines Matching refs:pt1
72 struct pt1 { struct
91 struct pt1 *pt1; argument
254 static int pt1_demod_block_init(struct pt1 *pt1) in pt1_demod_block_init() argument
263 cl = pt1->adaps[i]->demod_i2c_client; in pt1_demod_block_init()
275 cl = pt1->adaps[i]->demod_i2c_client; in pt1_demod_block_init()
288 static void pt1_write_reg(struct pt1 *pt1, int reg, u32 data) in pt1_write_reg() argument
290 writel(data, pt1->regs + reg * 4); in pt1_write_reg()
293 static u32 pt1_read_reg(struct pt1 *pt1, int reg) in pt1_read_reg() argument
295 return readl(pt1->regs + reg * 4); in pt1_read_reg()
301 static void pt1_increment_table_count(struct pt1 *pt1) in pt1_increment_table_count() argument
303 pt1_write_reg(pt1, 0, 0x00000020); in pt1_increment_table_count()
306 static void pt1_init_table_count(struct pt1 *pt1) in pt1_init_table_count() argument
308 pt1_write_reg(pt1, 0, 0x00000010); in pt1_init_table_count()
311 static void pt1_register_tables(struct pt1 *pt1, u32 first_pfn) in pt1_register_tables() argument
313 pt1_write_reg(pt1, 5, first_pfn); in pt1_register_tables()
314 pt1_write_reg(pt1, 0, 0x0c000040); in pt1_register_tables()
317 static void pt1_unregister_tables(struct pt1 *pt1) in pt1_unregister_tables() argument
319 pt1_write_reg(pt1, 0, 0x08080000); in pt1_unregister_tables()
322 static int pt1_sync(struct pt1 *pt1) in pt1_sync() argument
326 if (pt1_read_reg(pt1, 0) & 0x20000000) in pt1_sync()
328 pt1_write_reg(pt1, 0, 0x00000008); in pt1_sync()
330 dev_err(&pt1->pdev->dev, "could not sync\n"); in pt1_sync()
334 static u64 pt1_identify(struct pt1 *pt1) in pt1_identify() argument
340 id |= (u64)(pt1_read_reg(pt1, 0) >> 30 & 1) << i; in pt1_identify()
341 pt1_write_reg(pt1, 0, 0x00000008); in pt1_identify()
346 static int pt1_unlock(struct pt1 *pt1) in pt1_unlock() argument
349 pt1_write_reg(pt1, 0, 0x00000008); in pt1_unlock()
351 if (pt1_read_reg(pt1, 0) & 0x80000000) in pt1_unlock()
355 dev_err(&pt1->pdev->dev, "could not unlock\n"); in pt1_unlock()
359 static int pt1_reset_pci(struct pt1 *pt1) in pt1_reset_pci() argument
362 pt1_write_reg(pt1, 0, 0x01010000); in pt1_reset_pci()
363 pt1_write_reg(pt1, 0, 0x01000000); in pt1_reset_pci()
365 if (pt1_read_reg(pt1, 0) & 0x00000001) in pt1_reset_pci()
369 dev_err(&pt1->pdev->dev, "could not reset PCI\n"); in pt1_reset_pci()
373 static int pt1_reset_ram(struct pt1 *pt1) in pt1_reset_ram() argument
376 pt1_write_reg(pt1, 0, 0x02020000); in pt1_reset_ram()
377 pt1_write_reg(pt1, 0, 0x02000000); in pt1_reset_ram()
379 if (pt1_read_reg(pt1, 0) & 0x00000002) in pt1_reset_ram()
383 dev_err(&pt1->pdev->dev, "could not reset RAM\n"); in pt1_reset_ram()
387 static int pt1_do_enable_ram(struct pt1 *pt1) in pt1_do_enable_ram() argument
391 status = pt1_read_reg(pt1, 0) & 0x00000004; in pt1_do_enable_ram()
392 pt1_write_reg(pt1, 0, 0x00000002); in pt1_do_enable_ram()
395 if ((pt1_read_reg(pt1, 0) & 0x00000004) != status) in pt1_do_enable_ram()
400 dev_err(&pt1->pdev->dev, "could not enable RAM\n"); in pt1_do_enable_ram()
404 static int pt1_enable_ram(struct pt1 *pt1) in pt1_enable_ram() argument
409 phase = pt1->pdev->device == 0x211a ? 128 : 166; in pt1_enable_ram()
411 ret = pt1_do_enable_ram(pt1); in pt1_enable_ram()
418 static void pt1_disable_ram(struct pt1 *pt1) in pt1_disable_ram() argument
420 pt1_write_reg(pt1, 0, 0x0b0b0000); in pt1_disable_ram()
423 static void pt1_set_stream(struct pt1 *pt1, int index, int enabled) in pt1_set_stream() argument
425 pt1_write_reg(pt1, 2, 1 << (index + 8) | enabled << index); in pt1_set_stream()
428 static void pt1_init_streams(struct pt1 *pt1) in pt1_init_streams() argument
432 pt1_set_stream(pt1, i, 0); in pt1_init_streams()
435 static int pt1_filter(struct pt1 *pt1, struct pt1_buffer_page *page) in pt1_filter() argument
454 adap = pt1->adaps[index]; in pt1_filter()
462 pt1->table_index, pt1->buf_index); in pt1_filter()
491 struct pt1 *pt1; in pt1_thread() local
498 pt1 = data; in pt1_thread()
506 pt1_set_stream(pt1, i, !!pt1->adaps[i]->users); in pt1_thread()
509 page = pt1->tables[pt1->table_index].bufs[pt1->buf_index].page; in pt1_thread()
510 if (!pt1_filter(pt1, page)) { in pt1_thread()
521 if (++pt1->buf_index >= PT1_NR_BUFS) { in pt1_thread()
522 pt1_increment_table_count(pt1); in pt1_thread()
523 pt1->buf_index = 0; in pt1_thread()
524 if (++pt1->table_index >= pt1_nr_tables) in pt1_thread()
525 pt1->table_index = 0; in pt1_thread()
532 static void pt1_free_page(struct pt1 *pt1, void *page, dma_addr_t addr) in pt1_free_page() argument
534 dma_free_coherent(&pt1->pdev->dev, PT1_PAGE_SIZE, page, addr); in pt1_free_page()
537 static void *pt1_alloc_page(struct pt1 *pt1, dma_addr_t *addrp, u32 *pfnp) in pt1_alloc_page() argument
542 page = dma_alloc_coherent(&pt1->pdev->dev, PT1_PAGE_SIZE, &addr, in pt1_alloc_page()
555 static void pt1_cleanup_buffer(struct pt1 *pt1, struct pt1_buffer *buf) in pt1_cleanup_buffer() argument
557 pt1_free_page(pt1, buf->page, buf->addr); in pt1_cleanup_buffer()
561 pt1_init_buffer(struct pt1 *pt1, struct pt1_buffer *buf, u32 *pfnp) in pt1_init_buffer() argument
566 page = pt1_alloc_page(pt1, &addr, pfnp); in pt1_init_buffer()
577 static void pt1_cleanup_table(struct pt1 *pt1, struct pt1_table *table) in pt1_cleanup_table() argument
582 pt1_cleanup_buffer(pt1, &table->bufs[i]); in pt1_cleanup_table()
584 pt1_free_page(pt1, table->page, table->addr); in pt1_cleanup_table()
588 pt1_init_table(struct pt1 *pt1, struct pt1_table *table, u32 *pfnp) in pt1_init_table() argument
595 page = pt1_alloc_page(pt1, &addr, pfnp); in pt1_init_table()
600 ret = pt1_init_buffer(pt1, &table->bufs[i], &buf_pfn); in pt1_init_table()
607 pt1_increment_table_count(pt1); in pt1_init_table()
614 pt1_cleanup_buffer(pt1, &table->bufs[i]); in pt1_init_table()
616 pt1_free_page(pt1, page, addr); in pt1_init_table()
620 static void pt1_cleanup_tables(struct pt1 *pt1) in pt1_cleanup_tables() argument
625 tables = pt1->tables; in pt1_cleanup_tables()
626 pt1_unregister_tables(pt1); in pt1_cleanup_tables()
629 pt1_cleanup_table(pt1, &tables[i]); in pt1_cleanup_tables()
634 static int pt1_init_tables(struct pt1 *pt1) in pt1_init_tables() argument
647 pt1_init_table_count(pt1); in pt1_init_tables()
650 ret = pt1_init_table(pt1, &tables[0], &first_pfn); in pt1_init_tables()
656 ret = pt1_init_table(pt1, &tables[i], &pfn); in pt1_init_tables()
665 pt1_register_tables(pt1, first_pfn); in pt1_init_tables()
666 pt1->tables = tables; in pt1_init_tables()
671 pt1_cleanup_table(pt1, &tables[i]); in pt1_init_tables()
677 static int pt1_start_polling(struct pt1 *pt1) in pt1_start_polling() argument
681 mutex_lock(&pt1->lock); in pt1_start_polling()
682 if (!pt1->kthread) { in pt1_start_polling()
683 pt1->kthread = kthread_run(pt1_thread, pt1, "earth-pt1"); in pt1_start_polling()
684 if (IS_ERR(pt1->kthread)) { in pt1_start_polling()
685 ret = PTR_ERR(pt1->kthread); in pt1_start_polling()
686 pt1->kthread = NULL; in pt1_start_polling()
689 mutex_unlock(&pt1->lock); in pt1_start_polling()
700 ret = pt1_start_polling(adap->pt1); in pt1_start_feed()
703 pt1_set_stream(adap->pt1, adap->index, 1); in pt1_start_feed()
708 static void pt1_stop_polling(struct pt1 *pt1) in pt1_stop_polling() argument
712 mutex_lock(&pt1->lock); in pt1_stop_polling()
714 count += pt1->adaps[i]->users; in pt1_stop_polling()
716 if (count == 0 && pt1->kthread) { in pt1_stop_polling()
717 kthread_stop(pt1->kthread); in pt1_stop_polling()
718 pt1->kthread = NULL; in pt1_stop_polling()
720 mutex_unlock(&pt1->lock); in pt1_stop_polling()
728 pt1_set_stream(adap->pt1, adap->index, 0); in pt1_stop_feed()
729 pt1_stop_polling(adap->pt1); in pt1_stop_feed()
735 pt1_update_power(struct pt1 *pt1) in pt1_update_power() argument
747 bits = pt1->power | !pt1->reset << 3; in pt1_update_power()
748 mutex_lock(&pt1->lock); in pt1_update_power()
750 adap = pt1->adaps[i]; in pt1_update_power()
765 pt1_write_reg(pt1, 1, bits); in pt1_update_power()
766 mutex_unlock(&pt1->lock); in pt1_update_power()
775 pt1_update_power(adap->pt1); in pt1_set_voltage()
795 pt1_update_power(adap->pt1); in pt1_sleep()
806 pt1_update_power(adap->pt1); in pt1_wakeup()
809 ret = config_demod(adap->demod_i2c_client, adap->pt1->fe_clk); in pt1_wakeup()
828 pt1_alloc_adapter(struct pt1 *pt1) in pt1_alloc_adapter() argument
843 adap->pt1 = pt1; in pt1_alloc_adapter()
862 &pt1->pdev->dev, adapter_nr); in pt1_alloc_adapter()
900 static void pt1_cleanup_adapters(struct pt1 *pt1) in pt1_cleanup_adapters() argument
904 pt1_free_adapter(pt1->adaps[i]); in pt1_cleanup_adapters()
907 static int pt1_init_adapters(struct pt1 *pt1) in pt1_init_adapters() argument
914 adap = pt1_alloc_adapter(pt1); in pt1_init_adapters()
921 pt1->adaps[i] = adap; in pt1_init_adapters()
927 pt1_free_adapter(pt1->adaps[i]); in pt1_init_adapters()
958 static void pt1_cleanup_frontends(struct pt1 *pt1) in pt1_cleanup_frontends() argument
962 pt1_cleanup_frontend(pt1->adaps[i]); in pt1_cleanup_frontends()
965 static int pt1_init_frontends(struct pt1 *pt1) in pt1_init_frontends() argument
980 cl = dvb_module_probe("tc90522", info->type, &pt1->i2c_adap, in pt1_init_frontends()
984 pt1->adaps[i]->demod_i2c_client = cl; in pt1_init_frontends()
1008 pt1->adaps[i]->tuner_i2c_client = cl; in pt1_init_frontends()
1010 ret = pt1_init_frontend(pt1->adaps[i], dcfg.fe); in pt1_init_frontends()
1015 ret = pt1_demod_block_init(pt1); in pt1_init_frontends()
1022 dvb_module_release(pt1->adaps[i]->tuner_i2c_client); in pt1_init_frontends()
1024 dvb_module_release(pt1->adaps[i]->demod_i2c_client); in pt1_init_frontends()
1026 dev_warn(&pt1->pdev->dev, "failed to init FE(%d).\n", i); in pt1_init_frontends()
1029 dvb_unregister_frontend(pt1->adaps[i]->fe); in pt1_init_frontends()
1030 dvb_module_release(pt1->adaps[i]->tuner_i2c_client); in pt1_init_frontends()
1031 dvb_module_release(pt1->adaps[i]->demod_i2c_client); in pt1_init_frontends()
1036 static void pt1_i2c_emit(struct pt1 *pt1, int addr, int busy, int read_enable, in pt1_i2c_emit() argument
1039 pt1_write_reg(pt1, 4, addr << 18 | busy << 13 | read_enable << 12 | in pt1_i2c_emit()
1043 static void pt1_i2c_write_bit(struct pt1 *pt1, int addr, int *addrp, int data) in pt1_i2c_write_bit() argument
1045 pt1_i2c_emit(pt1, addr, 1, 0, 0, data, addr + 1); in pt1_i2c_write_bit()
1046 pt1_i2c_emit(pt1, addr + 1, 1, 0, 1, data, addr + 2); in pt1_i2c_write_bit()
1047 pt1_i2c_emit(pt1, addr + 2, 1, 0, 0, data, addr + 3); in pt1_i2c_write_bit()
1051 static void pt1_i2c_read_bit(struct pt1 *pt1, int addr, int *addrp) in pt1_i2c_read_bit() argument
1053 pt1_i2c_emit(pt1, addr, 1, 0, 0, 1, addr + 1); in pt1_i2c_read_bit()
1054 pt1_i2c_emit(pt1, addr + 1, 1, 0, 1, 1, addr + 2); in pt1_i2c_read_bit()
1055 pt1_i2c_emit(pt1, addr + 2, 1, 1, 1, 1, addr + 3); in pt1_i2c_read_bit()
1056 pt1_i2c_emit(pt1, addr + 3, 1, 0, 0, 1, addr + 4); in pt1_i2c_read_bit()
1060 static void pt1_i2c_write_byte(struct pt1 *pt1, int addr, int *addrp, int data) in pt1_i2c_write_byte() argument
1064 pt1_i2c_write_bit(pt1, addr, &addr, data >> (7 - i) & 1); in pt1_i2c_write_byte()
1065 pt1_i2c_write_bit(pt1, addr, &addr, 1); in pt1_i2c_write_byte()
1069 static void pt1_i2c_read_byte(struct pt1 *pt1, int addr, int *addrp, int last) in pt1_i2c_read_byte() argument
1073 pt1_i2c_read_bit(pt1, addr, &addr); in pt1_i2c_read_byte()
1074 pt1_i2c_write_bit(pt1, addr, &addr, last); in pt1_i2c_read_byte()
1078 static void pt1_i2c_prepare(struct pt1 *pt1, int addr, int *addrp) in pt1_i2c_prepare() argument
1080 pt1_i2c_emit(pt1, addr, 1, 0, 1, 1, addr + 1); in pt1_i2c_prepare()
1081 pt1_i2c_emit(pt1, addr + 1, 1, 0, 1, 0, addr + 2); in pt1_i2c_prepare()
1082 pt1_i2c_emit(pt1, addr + 2, 1, 0, 0, 0, addr + 3); in pt1_i2c_prepare()
1087 pt1_i2c_write_msg(struct pt1 *pt1, int addr, int *addrp, struct i2c_msg *msg) in pt1_i2c_write_msg() argument
1090 pt1_i2c_prepare(pt1, addr, &addr); in pt1_i2c_write_msg()
1091 pt1_i2c_write_byte(pt1, addr, &addr, msg->addr << 1); in pt1_i2c_write_msg()
1093 pt1_i2c_write_byte(pt1, addr, &addr, msg->buf[i]); in pt1_i2c_write_msg()
1098 pt1_i2c_read_msg(struct pt1 *pt1, int addr, int *addrp, struct i2c_msg *msg) in pt1_i2c_read_msg() argument
1101 pt1_i2c_prepare(pt1, addr, &addr); in pt1_i2c_read_msg()
1102 pt1_i2c_write_byte(pt1, addr, &addr, msg->addr << 1 | 1); in pt1_i2c_read_msg()
1104 pt1_i2c_read_byte(pt1, addr, &addr, i == msg->len - 1); in pt1_i2c_read_msg()
1108 static int pt1_i2c_end(struct pt1 *pt1, int addr) in pt1_i2c_end() argument
1110 pt1_i2c_emit(pt1, addr, 1, 0, 0, 0, addr + 1); in pt1_i2c_end()
1111 pt1_i2c_emit(pt1, addr + 1, 1, 0, 1, 0, addr + 2); in pt1_i2c_end()
1112 pt1_i2c_emit(pt1, addr + 2, 1, 0, 1, 1, 0); in pt1_i2c_end()
1114 pt1_write_reg(pt1, 0, 0x00000004); in pt1_i2c_end()
1119 } while (pt1_read_reg(pt1, 0) & 0x00000080); in pt1_i2c_end()
1123 static void pt1_i2c_begin(struct pt1 *pt1, int *addrp) in pt1_i2c_begin() argument
1128 pt1_i2c_emit(pt1, addr, 0, 0, 1, 1, addr /* itself */); in pt1_i2c_begin()
1131 if (!pt1->i2c_running) { in pt1_i2c_begin()
1132 pt1_i2c_emit(pt1, addr, 1, 0, 1, 1, addr + 1); in pt1_i2c_begin()
1133 pt1_i2c_emit(pt1, addr + 1, 1, 0, 1, 0, addr + 2); in pt1_i2c_begin()
1135 pt1->i2c_running = 1; in pt1_i2c_begin()
1142 struct pt1 *pt1; in pt1_i2c_xfer() local
1149 pt1 = i2c_get_adapdata(adap); in pt1_i2c_xfer()
1168 pt1_i2c_begin(pt1, &addr); in pt1_i2c_xfer()
1169 pt1_i2c_write_msg(pt1, addr, &addr, msg); in pt1_i2c_xfer()
1170 pt1_i2c_read_msg(pt1, addr, &addr, next_msg); in pt1_i2c_xfer()
1171 ret = pt1_i2c_end(pt1, addr); in pt1_i2c_xfer()
1175 word = pt1_read_reg(pt1, 2); in pt1_i2c_xfer()
1181 pt1_i2c_begin(pt1, &addr); in pt1_i2c_xfer()
1182 pt1_i2c_write_msg(pt1, addr, &addr, msg); in pt1_i2c_xfer()
1183 ret = pt1_i2c_end(pt1, addr); in pt1_i2c_xfer()
1202 static void pt1_i2c_wait(struct pt1 *pt1) in pt1_i2c_wait() argument
1206 pt1_i2c_emit(pt1, 0, 0, 0, 1, 1, 0); in pt1_i2c_wait()
1209 static void pt1_i2c_init(struct pt1 *pt1) in pt1_i2c_init() argument
1213 pt1_i2c_emit(pt1, i, 0, 0, 1, 1, 0); in pt1_i2c_init()
1220 struct pt1 *pt1 = dev_get_drvdata(dev); in pt1_suspend() local
1222 pt1_init_streams(pt1); in pt1_suspend()
1223 pt1_disable_ram(pt1); in pt1_suspend()
1224 pt1->power = 0; in pt1_suspend()
1225 pt1->reset = 1; in pt1_suspend()
1226 pt1_update_power(pt1); in pt1_suspend()
1232 struct pt1 *pt1 = dev_get_drvdata(dev); in pt1_resume() local
1236 pt1->power = 0; in pt1_resume()
1237 pt1->reset = 1; in pt1_resume()
1238 pt1_update_power(pt1); in pt1_resume()
1240 pt1_i2c_init(pt1); in pt1_resume()
1241 pt1_i2c_wait(pt1); in pt1_resume()
1243 ret = pt1_sync(pt1); in pt1_resume()
1247 pt1_identify(pt1); in pt1_resume()
1249 ret = pt1_unlock(pt1); in pt1_resume()
1253 ret = pt1_reset_pci(pt1); in pt1_resume()
1257 ret = pt1_reset_ram(pt1); in pt1_resume()
1261 ret = pt1_enable_ram(pt1); in pt1_resume()
1265 pt1_init_streams(pt1); in pt1_resume()
1267 pt1->power = 1; in pt1_resume()
1268 pt1_update_power(pt1); in pt1_resume()
1271 pt1->reset = 0; in pt1_resume()
1272 pt1_update_power(pt1); in pt1_resume()
1275 ret = pt1_demod_block_init(pt1); in pt1_resume()
1280 dvb_frontend_reinitialise(pt1->adaps[i]->fe); in pt1_resume()
1282 pt1_init_table_count(pt1); in pt1_resume()
1287 pt1->tables[i].bufs[j].page->upackets[PT1_NR_UPACKETS-1] in pt1_resume()
1289 pt1_increment_table_count(pt1); in pt1_resume()
1291 pt1_register_tables(pt1, pt1->tables[0].addr >> PT1_PAGE_SHIFT); in pt1_resume()
1293 pt1->table_index = 0; in pt1_resume()
1294 pt1->buf_index = 0; in pt1_resume()
1296 pt1->adaps[i]->upacket_count = 0; in pt1_resume()
1297 pt1->adaps[i]->packet_count = 0; in pt1_resume()
1298 pt1->adaps[i]->st_count = -1; in pt1_resume()
1304 dev_info(&pt1->pdev->dev, "failed to resume PT1/PT2."); in pt1_resume()
1312 struct pt1 *pt1; in pt1_remove() local
1315 pt1 = pci_get_drvdata(pdev); in pt1_remove()
1316 regs = pt1->regs; in pt1_remove()
1318 if (pt1->kthread) in pt1_remove()
1319 kthread_stop(pt1->kthread); in pt1_remove()
1320 pt1_cleanup_tables(pt1); in pt1_remove()
1321 pt1_cleanup_frontends(pt1); in pt1_remove()
1322 pt1_disable_ram(pt1); in pt1_remove()
1323 pt1->power = 0; in pt1_remove()
1324 pt1->reset = 1; in pt1_remove()
1325 pt1_update_power(pt1); in pt1_remove()
1326 pt1_cleanup_adapters(pt1); in pt1_remove()
1327 i2c_del_adapter(&pt1->i2c_adap); in pt1_remove()
1328 kfree(pt1); in pt1_remove()
1338 struct pt1 *pt1; in pt1_probe() local
1361 pt1 = kzalloc(sizeof(struct pt1), GFP_KERNEL); in pt1_probe()
1362 if (!pt1) { in pt1_probe()
1367 mutex_init(&pt1->lock); in pt1_probe()
1368 pt1->pdev = pdev; in pt1_probe()
1369 pt1->regs = regs; in pt1_probe()
1370 pt1->fe_clk = (pdev->device == 0x211a) ? in pt1_probe()
1372 pci_set_drvdata(pdev, pt1); in pt1_probe()
1374 ret = pt1_init_adapters(pt1); in pt1_probe()
1378 mutex_init(&pt1->lock); in pt1_probe()
1380 pt1->power = 0; in pt1_probe()
1381 pt1->reset = 1; in pt1_probe()
1382 pt1_update_power(pt1); in pt1_probe()
1384 i2c_adap = &pt1->i2c_adap; in pt1_probe()
1389 i2c_set_adapdata(i2c_adap, pt1); in pt1_probe()
1394 pt1_i2c_init(pt1); in pt1_probe()
1395 pt1_i2c_wait(pt1); in pt1_probe()
1397 ret = pt1_sync(pt1); in pt1_probe()
1401 pt1_identify(pt1); in pt1_probe()
1403 ret = pt1_unlock(pt1); in pt1_probe()
1407 ret = pt1_reset_pci(pt1); in pt1_probe()
1411 ret = pt1_reset_ram(pt1); in pt1_probe()
1415 ret = pt1_enable_ram(pt1); in pt1_probe()
1419 pt1_init_streams(pt1); in pt1_probe()
1421 pt1->power = 1; in pt1_probe()
1422 pt1_update_power(pt1); in pt1_probe()
1425 pt1->reset = 0; in pt1_probe()
1426 pt1_update_power(pt1); in pt1_probe()
1429 ret = pt1_init_frontends(pt1); in pt1_probe()
1433 ret = pt1_init_tables(pt1); in pt1_probe()
1440 pt1_cleanup_frontends(pt1); in pt1_probe()
1442 pt1_disable_ram(pt1); in pt1_probe()
1443 pt1->power = 0; in pt1_probe()
1444 pt1->reset = 1; in pt1_probe()
1445 pt1_update_power(pt1); in pt1_probe()
1449 pt1_cleanup_adapters(pt1); in pt1_probe()
1451 kfree(pt1); in pt1_probe()