Subversion Repositories Kolibri OS

Rev

Rev 7250 | Rev 8997 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7250 Rev 7299
Line 524... Line 524...
524
 
524
 
Line 525... Line 525...
525
        DEBUGF  1,"init_board\n"
525
        DEBUGF  1,"init_board\n"
526
 
526
 
527
; Make the device a bus master
527
; Make the device a bus master
528
        invoke  PciRead32, [ebx + device.pci_bus], [ebx + device.pci_dev], PCI_header00.command
528
        invoke  PciRead32, [ebx + device.pci_bus], [ebx + device.pci_dev], PCI_header00.command
Line 529... Line 529...
529
        or      al, PCI_CMD_MASTER
529
        or      al, PCI_CMD_MASTER or PCI_CMD_PIO
530
        invoke  PciWrite32, [ebx + device.pci_bus], [ebx + device.pci_dev], PCI_header00.command, eax
530
        invoke  PciWrite32, [ebx + device.pci_bus], [ebx + device.pci_dev], PCI_header00.command, eax
531
 
531
 
Line 542... Line 542...
542
        in      al, dx
542
        in      al, dx
543
        test    al, CMD_Reset
543
        test    al, CMD_Reset
544
        jz      @f
544
        jz      @f
545
        udelay  10
545
        udelay  10
546
        loop    @b
546
        loop    @b
-
 
547
        DEBUGF  2,"chip reset timeout\n"
-
 
548
        or      eax, -1
-
 
549
        ret
547
  @@:
550
  @@:
Line 548... Line 551...
548
 
551
 
549
 
552
 
Line 564... Line 567...
564
        mov     ecx, [esi+12]
567
        mov     ecx, [esi+12]
565
        mov     [ebx + device.name], ecx
568
        mov     [ebx + device.name], ecx
566
        DEBUGF  2, "Detected chip: %s\n", ecx
569
        DEBUGF  2, "Detected chip: %s\n", ecx
567
        cmp     dword[esi], 0
570
        cmp     dword[esi], 0
568
        jne     @f
571
        jne     @f
569
        DEBUGF  2, "TxConfig = 0x%x\n", eax
572
        DEBUGF  1, "TxConfig = 0x%x\n", eax
570
  @@:
573
  @@:
Line 571... Line 574...
571
 
574
 
572
        xor     eax, eax
575
        xor     eax, eax
Line 689... Line 692...
689
        DEBUGF  2,"init OK!\n"
692
        DEBUGF  2,"init OK!\n"
690
        xor     eax, eax
693
        xor     eax, eax
691
        ret
694
        ret
Line 692... Line 695...
692
 
695
 
693
  .err:
696
  .err:
694
        DEBUGF  2,"failed!\n"
697
        DEBUGF  2,"reset failed!\n"
695
        or      eax, -1
698
        or      eax, -1
Line 1339... Line 1342...
1339
 
1342
 
Line 1340... Line 1343...
1340
include_debug_strings                           ; All data wich FDO uses will be included here
1343
include_debug_strings                           ; All data wich FDO uses will be included here
Line 1341... Line 1344...
1341
 
1344
 
1342
MAC_VERSION_LIST:
1345
MAC_VERSION_LIST:
1343
 
1346
 
1344
; 8168EP family.
1347
; 8168E+ family
1345
dd 0x7cf00000, 0x50200000, 51, name_49
1348
dd 0x7cf00000, 0x50200000, 51, sz_rtl8168ep
1346
dd 0x7cf00000, 0x50100000, 50, name_49
1349
dd 0x7cf00000, 0x50100000, 50, sz_rtl8168ep
1347
dd 0x7cf00000, 0x50000000, 49, name_49
1350
dd 0x7cf00000, 0x50000000, 49, sz_rtl8168ep
1348
 
1351
 
1349
; 8168H family.
1352
; 8168H family
1350
dd 0x7cf00000, 0x54100000, 46, name_45
1353
dd 0x7cf00000, 0x54100000, 46, sz_rtl8168h
1351
dd 0x7cf00000, 0x54000000, 45, name_45
1354
dd 0x7cf00000, 0x54000000, 45, sz_rtl8168h
1352
 
1355
 
1353
; 8168G family.
1356
; 8168G family
1354
dd 0x7cf00000, 0x5c800000, 44, name_44
1357
dd 0x7cf00000, 0x5c800000, 44, sz_rtl8411
1355
dd 0x7cf00000, 0x50900000, 42, name_40
1358
dd 0x7cf00000, 0x50900000, 42, sz_rtl8168g
1356
dd 0x7cf00000, 0x4c100000, 41, name_40
1359
dd 0x7cf00000, 0x4c100000, 41, sz_rtl8168g
1357
dd 0x7cf00000, 0x4c000000, 40, name_40
1360
dd 0x7cf00000, 0x4c000000, 40, sz_rtl8168g
1358
 
1361
 
1359
; 8168F family.
1362
; 8168F family
1360
dd 0x7c800000, 0x48800000, 38, name_38
1363
dd 0x7c800000, 0x48800000, 38, sz_rtl8411
1361
dd 0x7cf00000, 0x48100000, 36, name_35
1364
dd 0x7cf00000, 0x48100000, 36, sz_rtl8168f
1362
dd 0x7cf00000, 0x48000000, 35, name_35
1365
dd 0x7cf00000, 0x48000000, 35, sz_rtl8168f
1363
 
1366
 
1364
; 8168E family.
1367
; 8168E family
1365
dd 0x7c800000, 0x2c800000, 34, name_34
1368
dd 0x7c800000, 0x2c800000, 34, sz_rtl8168evl
1366
dd 0x7cf00000, 0x2c200000, 33, name_32
1369
dd 0x7cf00000, 0x2c200000, 33, sz_rtl8168e
1367
dd 0x7cf00000, 0x2c100000, 32, name_32
1370
dd 0x7cf00000, 0x2c100000, 32, sz_rtl8168e
1368
dd 0x7c800000, 0x2c000000, 33, name_32
1371
dd 0x7c800000, 0x2c000000, 33, sz_rtl8168e
1369
 
1372
 
1370
; 8168D family.
1373
; 8168D family
1371
dd 0x7cf00000, 0x28300000, 26, name_25
1374
dd 0x7cf00000, 0x28300000, 26, sz_rtl8168d
1372
dd 0x7cf00000, 0x28100000, 25, name_25
1375
dd 0x7cf00000, 0x28100000, 25, sz_rtl8168d
1373
dd 0x7c800000, 0x28000000, 26, name_25
1376
dd 0x7c800000, 0x28000000, 26, sz_rtl8168d
1374
 
1377
 
1375
; 8168DP family.
1378
; 8168D+ family
1376
dd 0x7cf00000, 0x28800000, 27, name_27
1379
dd 0x7cf00000, 0x28800000, 27, sz_rtl8168dp
1377
dd 0x7cf00000, 0x28a00000, 28, name_27
1380
dd 0x7cf00000, 0x28a00000, 28, sz_rtl8168dp
1378
 
1381
 
1379
; 8168C family.
1382
; 8168C family
1380
dd 0x7cf00000, 0x3cb00000, 24, name_18
1383
dd 0x7cf00000, 0x3cb00000, 24, sz_rtl8168p
1381
dd 0x7cf00000, 0x3c900000, 23, name_18
1384
dd 0x7cf00000, 0x3c900000, 23, sz_rtl8168p
1382
dd 0x7cf00000, 0x3c800000, 18, name_18
1385
dd 0x7cf00000, 0x3c800000, 18, sz_rtl8168p
1383
dd 0x7c800000, 0x3c800000, 24, name_18
1386
dd 0x7c800000, 0x3c800000, 24, sz_rtl8168p
1384
dd 0x7cf00000, 0x3c000000, 19, name_19
1387
dd 0x7cf00000, 0x3c000000, 19, sz_rtl8168c
1385
dd 0x7cf00000, 0x3c200000, 20, name_19
1388
dd 0x7cf00000, 0x3c200000, 20, sz_rtl8168c
1386
dd 0x7cf00000, 0x3c300000, 21, name_19
1389
dd 0x7cf00000, 0x3c300000, 21, sz_rtl8168c
1387
dd 0x7cf00000, 0x3c400000, 22, name_19
1390
dd 0x7cf00000, 0x3c400000, 22, sz_rtl8168c
1388
dd 0x7c800000, 0x3c000000, 22, name_19
1391
dd 0x7c800000, 0x3c000000, 22, sz_rtl8168c
1389
 
1392
 
1390
; 8168B family.
1393
; 8168B family
1391
dd 0x7cf00000, 0x38000000, 12, name_11
1394
dd 0x7cf00000, 0x38000000, 12, sz_rtl8168b
1392
dd 0x7cf00000, 0x38500000, 17, name_10
1395
dd 0x7cf00000, 0x38500000, 17, sz_rtl8101e
1393
dd 0x7c800000, 0x38000000, 17, name_10
1396
dd 0x7c800000, 0x38000000, 17, sz_rtl8101e
1394
dd 0x7c800000, 0x30000000, 11, name_11
1397
dd 0x7c800000, 0x30000000, 11, sz_rtl8168b
1395
 
1398
 
1396
; 8101 family.
1399
; 8101 family
1397
dd 0x7cf00000, 0x44900000, 39, name_39
1400
dd 0x7cf00000, 0x44900000, 39, sz_rtl8106e
1398
dd 0x7c800000, 0x44800000, 39, name_39
1401
dd 0x7c800000, 0x44800000, 39, sz_rtl8106e
1399
dd 0x7c800000, 0x44000000, 37, name_37
1402
dd 0x7c800000, 0x44000000, 37, sz_rtl8402
1400
dd 0x7cf00000, 0x40b00000, 30, name_29
1403
dd 0x7cf00000, 0x40b00000, 30, sz_rtl8105e
1401
dd 0x7cf00000, 0x40a00000, 30, name_29
1404
dd 0x7cf00000, 0x40a00000, 30, sz_rtl8105e
1402
dd 0x7cf00000, 0x40900000, 29, name_29
1405
dd 0x7cf00000, 0x40900000, 29, sz_rtl8105e
1403
dd 0x7c800000, 0x40800000, 30, name_29
1406
dd 0x7c800000, 0x40800000, 30, sz_rtl8105e
1404
dd 0x7cf00000, 0x34a00000, 09, name_07
1407
dd 0x7cf00000, 0x34a00000, 09, sz_rtl8102e
1405
dd 0x7cf00000, 0x24a00000, 09, name_07
1408
dd 0x7cf00000, 0x24a00000, 09, sz_rtl8102e
1406
dd 0x7cf00000, 0x34900000, 08, name_07
1409
dd 0x7cf00000, 0x34900000, 08, sz_rtl8102e
1407
dd 0x7cf00000, 0x24900000, 08, name_07
1410
dd 0x7cf00000, 0x24900000, 08, sz_rtl8102e
1408
dd 0x7cf00000, 0x34800000, 07, name_07
1411
dd 0x7cf00000, 0x34800000, 07, sz_rtl8102e
1409
dd 0x7cf00000, 0x24800000, 07, name_07
1412
dd 0x7cf00000, 0x24800000, 07, sz_rtl8102e
1410
dd 0x7cf00000, 0x34000000, 13, name_10
1413
dd 0x7cf00000, 0x34000000, 13, sz_rtl8101e
1411
dd 0x7cf00000, 0x34300000, 10, name_10
1414
dd 0x7cf00000, 0x34300000, 10, sz_rtl8101e
1412
dd 0x7cf00000, 0x34200000, 16, name_11
1415
dd 0x7cf00000, 0x34200000, 16, sz_rtl8168b
1413
dd 0x7c800000, 0x34800000, 09, name_07
1416
dd 0x7c800000, 0x34800000, 09, sz_rtl8102e
1414
dd 0x7c800000, 0x24800000, 09, name_07
1417
dd 0x7c800000, 0x24800000, 09, sz_rtl8102e
1415
dd 0x7c800000, 0x34000000, 16, name_11
1418
dd 0x7c800000, 0x34000000, 16, sz_rtl8168b
1416
dd 0xfc800000, 0x38800000, 15, name_14
1419
dd 0xfc800000, 0x38800000, 15, sz_rtl8100e
1417
dd 0xfc800000, 0x30800000, 14, name_14
1420
dd 0xfc800000, 0x30800000, 14, sz_rtl8100e
1418
 
1421
 
1419
; 8110 family.
1422
; 8110 family
1420
dd 0xfc800000, 0x98000000, 06, name_05
1423
dd 0xfc800000, 0x98000000, 06, sz_rtl8169sc
1421
dd 0xfc800000, 0x18000000, 05, name_05
1424
dd 0xfc800000, 0x18000000, 05, sz_rtl8169sc
1422
dd 0xfc800000, 0x10000000, 04, name_04
1425
dd 0xfc800000, 0x10000000, 04, sz_rtl8169sb
Line 1423... Line 1426...
1423
dd 0xfc800000, 0x04000000, 03, name_03
1426
dd 0xfc800000, 0x04000000, 03, sz_rtl8110s
1424
dd 0xfc800000, 0x00800000, 02, name_02
1427
dd 0xfc800000, 0x00800000, 02, sz_rtl8169s
1425
dd 0xfc800000, 0x00000000, 01, name_01
-
 
1426
 
-
 
1427
; Catch-all
-
 
1428
dd 0x00000000, 0x00000000, 0, name_unknown
-
 
1429
 
-
 
1430
; PCI-devices
-
 
1431
name_01 db "RTL8169",0
-
 
1432
name_02 db "RTL8169s",0
-
 
1433
name_03 db "RTL8110s",0
-
 
1434
name_04 db "RTL8169sb/8110sb",0
-
 
1435
name_05 db "RTL8169sc/8110sc",0
-
 
1436
;name_06 db "RTL8169sc/8110sc",0
-
 
1437
 
-
 
1438
; PCI-E devices
-
 
1439
name_07 db "RTL8102e",0
-
 
1440
;name_08 db "RTL8102e",0
-
 
1441
;name_09 db "RTL8102e",0
-
 
1442
name_10 db "RTL8101e",0
-
 
1443
name_11 db "RTL8168b/8111b",0
-
 
1444
;name_12 db "RTL8168b/8111b",0
-
 
1445
;name_13 db "RTL8101e",0
-
 
1446
name_14 db "RTL8100e",0
-
 
1447
;name_15 db "RTL8100e",0
-
 
1448
;name_16 db "RTL8168b/8111b",0
-
 
1449
;name_17 db "RTL8101e",0
-
 
1450
name_18 db "RTL8168cp/8111cp",0
-
 
1451
name_19 db "RTL8168c/8111c",0
-
 
1452
;name_20 db "RTL8168c/8111c",0
-
 
1453
;name_21 db "RTL8168c/8111c",0
-
 
1454
;name_22 db "RTL8168c/8111c",0
-
 
1455
;name_23 db "RTL8168cp/8111cp",0
-
 
1456
;name_24 db "RTL8168cp/8111cp",0
-
 
1457
name_25 db "RTL8168d/8111d",0
-
 
1458
;name_26 db "RTL8168d/8111d",0
-
 
1459
name_27 db "RTL8168dp/8111dp",0
-
 
1460
;name_28 db "RTL8168dp/8111dp",0
-
 
1461
name_29 db "RTL8105e",0
-
 
1462
;name_30 db "RTL8105e",0
-
 
1463
;name_31 db "RTL8168dp/8111dp",0
-
 
1464
name_32 db "RTL8168e/8111e",0
-
 
1465
;name_33 db "RTL8168e/8111e",0
-
 
1466
name_34 db "RTL8168evl/8111evl",0
-
 
1467
name_35 db "RTL8168f/8111f",0
-
 
1468
;name_36 db "RTL8168f/8111f",0
-
 
1469
name_37 db "RTL8402",0
-
 
1470
name_38 db "RTL8411",0
-
 
1471
name_39 db "RTL8106e",0
-
 
1472
name_40 db "RTL8168g/8111g",0
-
 
1473
;name_41 db "RTL8168g/8111g",0
-
 
1474
;name_42 db "RTL8168g/8111g",0
-
 
1475
;name_43 db "RTL8106e",0
-
 
1476
name_44 db "RTL8411",0
-
 
1477
name_45 db "RTL8168h/8111h",0
-
 
1478
;name_46 db "RTL8168h/8111h",0
-
 
1479
name_47 db "RTL8107e",0
-
 
Line -... Line 1428...
-
 
1428
dd 0xfc800000, 0x00000000, 01, sz_rtl8169
-
 
1429
 
-
 
1430
; Catch-all
-
 
1431
dd 0x00000000, 0x00000000, 0, sz_unknown
-
 
1432
 
-
 
1433
sz_rtl8169      db "Realtek 8169",0
-
 
1434
sz_rtl8169s     db "Realtek 8169s",0
-
 
1435
sz_rtl8110s     db "Realtek 8110s",0
-
 
1436
sz_rtl8169sb    db "Realtek 8169sb/8110sb",0
-
 
1437
sz_rtl8169sc    db "Realtek 8169sc/8110sc",0
-
 
1438
sz_rtl8102e     db "Realtek 8102e",0
-
 
1439
sz_rtl8101e     db "Realtek 8101e",0
-
 
1440
sz_rtl8168b     db "Realtek 8168b/8111b",0
-
 
1441
sz_rtl8100e     db "Realtek 8100e",0
-
 
1442
sz_rtl8168p     db "Realtek 8168c+/8111c+",0
-
 
1443
sz_rtl8168c     db "Realtek 8168c/8111c",0
-
 
1444
sz_rtl8168d     db "Realtek 8168d/8111d",0
-
 
1445
sz_rtl8168dp    db "Realtek 8168d+/8111d+",0
-
 
1446
sz_rtl8105e     db "Realtek 8105e",0
-
 
1447
sz_rtl8168e     db "Realtek 8168e/8111e",0
-
 
1448
sz_rtl8168evl   db "Realtek 8168evl/8111evl",0
-
 
1449
sz_rtl8168f     db "Realtek 8168f/8111f",0
-
 
1450
sz_rtl8402      db "Realtek 8402",0
1480
;name_48 db "RTL8107e",0
1451
sz_rtl8411      db "Realtek 8411",0
Line 1481... Line 1452...
1481
name_49 db "RTL8168ep/8111ep",0
1452
sz_rtl8106e     db "Realtek 8106e",0
1482
;name_50 db "RTL8168ep/8111ep",0
1453
sz_rtl8168ep    db "Realtek 8168e+",0
1483
;name_51 db "RTL8168ep/8111ep",0
1454
sz_rtl8168g     db "Realtek 8168g/8111g",0