@@ -28,10 +28,11 @@ FILE_LICENCE ( GPL2_OR_LATER );
28
28
#include <ipxe/umalloc.h>
29
29
#include <ipxe/efi/efi.h>
30
30
#include <ipxe/efi/efi_driver.h>
31
- #include <ipxe/efi/efi_snp.h>
32
31
#include <ipxe/efi/efi_pci.h>
33
32
#include <ipxe/efi/efi_utils.h>
33
+ #include <ipxe/efi/Protocol/NetworkInterfaceIdentifier.h>
34
34
#include <ipxe/efi/IndustryStandard/Acpi10.h>
35
+ #include "nii.h"
35
36
36
37
/** @file
37
38
*
@@ -955,45 +956,13 @@ static struct net_device_operations nii_operations = {
955
956
.poll = nii_poll ,
956
957
};
957
958
958
- /**
959
- * Check to see if driver supports a device
960
- *
961
- * @v device EFI device handle
962
- * @ret rc Return status code
963
- */
964
- static int nii_supported ( EFI_HANDLE device ) {
965
- EFI_BOOT_SERVICES * bs = efi_systab -> BootServices ;
966
- EFI_STATUS efirc ;
967
-
968
- /* Check that this is not a device we are providing ourselves */
969
- if ( find_snpdev ( device ) != NULL ) {
970
- DBGCP ( device , "NII %p %s is provided by this binary\n" ,
971
- device , efi_handle_name ( device ) );
972
- return - ENOTTY ;
973
- }
974
-
975
- /* Test for presence of NII protocol */
976
- if ( ( efirc = bs -> OpenProtocol ( device ,
977
- & efi_nii31_protocol_guid ,
978
- NULL , efi_image_handle , device ,
979
- EFI_OPEN_PROTOCOL_TEST_PROTOCOL ))!= 0 ){
980
- DBGCP ( device , "NII %p %s is not an NII device\n" ,
981
- device , efi_handle_name ( device ) );
982
- return - EEFI ( efirc );
983
- }
984
- DBGC ( device , "NII %p %s is an NII device\n" ,
985
- device , efi_handle_name ( device ) );
986
-
987
- return 0 ;
988
- }
989
-
990
959
/**
991
960
* Attach driver to device
992
961
*
993
962
* @v efidev EFI device
994
963
* @ret rc Return status code
995
964
*/
996
- static int nii_start ( struct efi_device * efidev ) {
965
+ int nii_start ( struct efi_device * efidev ) {
997
966
EFI_BOOT_SERVICES * bs = efi_systab -> BootServices ;
998
967
EFI_HANDLE device = efidev -> device ;
999
968
struct net_device * netdev ;
@@ -1106,7 +1075,7 @@ static int nii_start ( struct efi_device *efidev ) {
1106
1075
*
1107
1076
* @v efidev EFI device
1108
1077
*/
1109
- static void nii_stop ( struct efi_device * efidev ) {
1078
+ void nii_stop ( struct efi_device * efidev ) {
1110
1079
EFI_BOOT_SERVICES * bs = efi_systab -> BootServices ;
1111
1080
struct net_device * netdev = efidev_get_drvdata ( efidev );
1112
1081
struct nii_nic * nii = netdev -> priv ;
@@ -1130,11 +1099,3 @@ static void nii_stop ( struct efi_device *efidev ) {
1130
1099
netdev_nullify ( netdev );
1131
1100
netdev_put ( netdev );
1132
1101
}
1133
-
1134
- /** EFI NII driver */
1135
- struct efi_driver nii_driver __efi_driver ( EFI_DRIVER_NORMAL ) = {
1136
- .name = "NII" ,
1137
- .supported = nii_supported ,
1138
- .start = nii_start ,
1139
- .stop = nii_stop ,
1140
- };
0 commit comments