@@ -475,14 +475,6 @@ static int altera_cvp_probe(struct pci_dev *pdev,
475
475
if (ret )
476
476
goto err_unmap ;
477
477
478
- ret = driver_create_file (& altera_cvp_driver .driver ,
479
- & driver_attr_chkcfg );
480
- if (ret ) {
481
- dev_err (& pdev -> dev , "Can't create sysfs chkcfg file\n" );
482
- fpga_mgr_unregister (mgr );
483
- goto err_unmap ;
484
- }
485
-
486
478
return 0 ;
487
479
488
480
err_unmap :
@@ -501,7 +493,6 @@ static void altera_cvp_remove(struct pci_dev *pdev)
501
493
struct altera_cvp_conf * conf = mgr -> priv ;
502
494
u16 cmd ;
503
495
504
- driver_remove_file (& altera_cvp_driver .driver , & driver_attr_chkcfg );
505
496
fpga_mgr_unregister (mgr );
506
497
if (conf -> map )
507
498
pci_iounmap (pdev , conf -> map );
@@ -511,7 +502,30 @@ static void altera_cvp_remove(struct pci_dev *pdev)
511
502
pci_write_config_word (pdev , PCI_COMMAND , cmd );
512
503
}
513
504
514
- module_pci_driver (altera_cvp_driver );
505
+ static int __init altera_cvp_init (void )
506
+ {
507
+ int ret ;
508
+
509
+ ret = pci_register_driver (& altera_cvp_driver );
510
+ if (ret )
511
+ return ret ;
512
+
513
+ ret = driver_create_file (& altera_cvp_driver .driver ,
514
+ & driver_attr_chkcfg );
515
+ if (ret )
516
+ pr_warn ("Can't create sysfs chkcfg file\n" );
517
+
518
+ return 0 ;
519
+ }
520
+
521
+ static void __exit altera_cvp_exit (void )
522
+ {
523
+ driver_remove_file (& altera_cvp_driver .driver , & driver_attr_chkcfg );
524
+ pci_unregister_driver (& altera_cvp_driver );
525
+ }
526
+
527
+ module_init (altera_cvp_init );
528
+ module_exit (altera_cvp_exit );
515
529
516
530
MODULE_LICENSE ("GPL v2" );
517
531
MODULE_AUTHOR (
"Anatolij Gustschin <[email protected] >" );
0 commit comments