Rev 867 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 867 | Rev 1194 | ||
---|---|---|---|
Line 24... | Line 24... | ||
24 | ;; ;; |
24 | ;; ;; |
25 | ;; See file COPYING for details ;; |
25 | ;; See file COPYING for details ;; |
26 | ;; ;; |
26 | ;; ;; |
27 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
27 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 28... | Line 28... | ||
28 | 28 | ||
Line 29... | Line 29... | ||
29 | $Revision: 867 $ |
29 | $Revision: 1194 $ |
30 | 30 | ||
31 | ;******************************************************************** |
31 | ;******************************************************************** |
32 | ; Interface |
32 | ; Interface |
Line 923... | Line 923... | ||
923 | 923 | ||
924 | mov dword [forcedeth_mapio_addr], eax |
924 | mov dword [forcedeth_mapio_addr], eax |
925 | mov edi, eax |
925 | mov edi, eax |
926 | mov eax, dword [edi+NvRegMacAddrA] |
926 | mov eax, dword [edi+NvRegMacAddrA] |
927 | mov dword [forcedeth_orig_mac0], eax |
927 | mov dword [forcedeth_orig_mac0], eax |
928 | mov eax, dword [edi+NvRegMacAddrB] |
928 | mov edx, dword [edi+NvRegMacAddrB] |
Line 929... | Line 929... | ||
929 | mov dword [forcedeth_orig_mac1], eax |
929 | mov dword [forcedeth_orig_mac1], edx |
- | 930 | ||
930 | 931 | ; save MAC-address to global variable node_addr |
|
- | 932 | mov dword [node_addr], eax |
|
931 | ; save MAC-address to global variable node_addr |
933 | mov word [node_addr+4], dx |
932 | mov ecx, MAC_ADDR_LEN |
934 | |
- | 935 | ; reverse if desired |
|
933 | xor ebx, ebx |
936 | cmp word [forcedeth_device_id], 0x03E5 |
- | 937 | jae .no_reverse_mac |
|
- | 938 | mov al, byte [node_addr] |
|
934 | mov edx, forcedeth_orig_mac0 |
939 | xchg al, byte [node_addr+5] |
- | 940 | mov byte [node_addr], al |
|
935 | add edx, (MAC_ADDR_LEN-1) |
941 | mov al, byte [node_addr+1] |
936 | @@: mov al, byte [edx] |
942 | xchg al, byte [node_addr+4] |
- | 943 | mov byte [node_addr+4], al |
|
937 | mov byte [node_addr+ebx], al |
944 | mov al, byte [node_addr+2] |
938 | inc ebx |
945 | xchg al, byte [node_addr+3] |
Line 939... | Line 946... | ||
939 | dec edx |
946 | mov byte [node_addr+3], al |
940 | loop @b |
947 | .no_reverse_mac: |
941 | 948 | ||
Line 1013... | Line 1020... | ||
1013 | 1020 | ||
1014 | ; break; |
1021 | ; break; |
Line 1015... | Line 1022... | ||
1015 | jmp .end_switch |
1022 | jmp .end_switch |
- | 1023 | ||
- | 1024 | .next_0x0268: |
|
- | 1025 | ; cmp word [forcedeth_device_id], 0x0268 |
|
- | 1026 | ; je @f |
|
- | 1027 | ; cmp word [forcedeth_device_id], 0x0269 |
|
- | 1028 | ; je @f |
|
- | 1029 | ; cmp word [forcedeth_device_id], 0x0372 |
|
- | 1030 | ; je @f |
|
- | 1031 | ; cmp word [forcedeth_device_id], 0x0373 |
|
- | 1032 | ; je @f |
|
1016 | 1033 | ; jmp .default_switch |
|
1017 | .next_0x0268: |
- | |
1018 | cmp word [forcedeth_device_id], 0x0268 |
- | |
1019 | je @f |
- | |
1020 | cmp word [forcedeth_device_id], 0x0269 |
- | |
1021 | je @f |
- | |
1022 | cmp word [forcedeth_device_id], 0x0372 |
- | |
1023 | je @f |
- | |
1024 | cmp word [forcedeth_device_id], 0x0373 |
1034 | ;@@: |
1025 | je @f |
- | |
1026 | jmp .default_switch |
1035 | cmp word [forcedeth_device_id], 0x0268 |
1027 | @@: |
1036 | jb .default_switch |
1028 | ; pci_read_config_byte(pci, PCI_REVISION_ID, &revision_id); |
1037 | ; pci_read_config_byte(pci, PCI_REVISION_ID, &revision_id); |
1029 | mov al, 0 ; byte |
1038 | mov al, 0 ; byte |
1030 | mov bh, [pci_dev] |
1039 | mov bh, [pci_dev] |