44 #ifndef _DEV_IC_TULIPREG_H_ 45 #define _DEV_IC_TULIPREG_H_ 177 #define TDSTAT_OWN 0x80000000 178 #define TDSTAT_ES 0x00008000 183 #define TDSTAT_Rx_FF 0x40000000 184 #define TDSTAT_WINB_Rx_RCMP 0x40000000 185 #define TDSTAT_Rx_FL 0x3fff0000 186 #define TDSTAT_Rx_DE 0x00004000 187 #define TDSTAT_Rx_DT 0x00003000 188 #define TDSTAT_Rx_RF 0x00000800 189 #define TDSTAT_Rx_MF 0x00000400 190 #define TDSTAT_Rx_FS 0x00000200 191 #define TDSTAT_Rx_LS 0x00000100 192 #define TDSTAT_Rx_TL 0x00000080 193 #define TDSTAT_Rx_CS 0x00000040 194 #define TDSTAT_Rx_RT 0x00000020 195 #define TDSTAT_Rx_RW 0x00000010 196 #define TDSTAT_Rx_RE 0x00000008 197 #define TDSTAT_Rx_DB 0x00000004 198 #define TDSTAT_Rx_CE 0x00000002 199 #define TDSTAT_Rx_ZER 0x00000001 201 #define TDSTAT_Rx_LENGTH(x) (((x) & TDSTAT_Rx_FL) >> 16) 203 #define TDSTAT_Rx_DT_SR 0x00000000 204 #define TDSTAT_Rx_DT_IL 0x00001000 205 #define TDSTAT_Rx_DT_EL 0x00002000 206 #define TDSTAT_Rx_DT_r 0x00003000 211 #define TDSTAT_WINB_Tx_TE 0x00008000 212 #define TDSTAT_Tx_TO 0x00004000 213 #define TDSTAT_Tx_LO 0x00000800 214 #define TDSTAT_Tx_NC 0x00000400 215 #define TDSTAT_Tx_LC 0x00000200 216 #define TDSTAT_Tx_EC 0x00000100 217 #define TDSTAT_Tx_HF 0x00000080 218 #define TDSTAT_Tx_CC 0x00000078 219 #define TDSTAT_Tx_LF 0x00000004 220 #define TDSTAT_Tx_UF 0x00000002 221 #define TDSTAT_Tx_DE 0x00000001 223 #define TDSTAT_Tx_COLLISIONS(x) (((x) & TDSTAT_Tx_CC) >> 3) 228 #define TDCTL_SIZE1 0x000007ff 229 #define TDCTL_SIZE1_SHIFT 0 231 #define TDCTL_SIZE2 0x003ff800 232 #define TDCTL_SIZE2_SHIFT 11 234 #define TDCTL_ER 0x02000000 235 #define TDCTL_CH 0x01000000 240 #define TDCTL_Tx_IC 0x80000000 241 #define TDCTL_Tx_LS 0x40000000 242 #define TDCTL_Tx_FS 0x20000000 243 #define TDCTL_Tx_FT1 0x10000000 244 #define TDCTL_Tx_SET 0x08000000 245 #define TDCTL_Tx_AC 0x04000000 246 #define TDCTL_Tx_DPD 0x00800000 247 #define TDCTL_Tx_FT0 0x00400000 281 #define TDCTL_Tx_FT_PERFECT 0 282 #define TDCTL_Tx_FT_HASH TDCTL_Tx_FT0 283 #define TDCTL_Tx_FT_INVERSE TDCTL_Tx_FT1 284 #define TDCTL_Tx_FT_HASHONLY (TDCTL_Tx_FT1|TDCTL_Tx_FT0) 286 #define TULIP_SETUP_PACKET_LEN 192 287 #define TULIP_MAXADDRS 16 288 #define TULIP_MCHASHSIZE 512 289 #define TULIP_PNICII_HASHSIZE 128 294 #define TULIP_ROM_SIZE(bits) (2 << (bits)) 295 #define TULIP_MAX_ROM_SIZE 512 320 #define TULIP_ROM_SROM_FORMAT_VERION 18 321 #define TULIP_ROM_CHIP_COUNT 19 322 #define TULIP_ROM_IEEE_NETWORK_ADDRESS 20 323 #define TULIP_ROM_CHIPn_DEVICE_NUMBER(n) (26 + ((n) * 3)) 324 #define TULIP_ROM_CHIPn_INFO_LEAF_OFFSET(n) (27 + ((n) * 3)) 325 #define TULIP_ROM_CRC32_CHECKSUM 126 326 #define TULIP_ROM_CRC32_CHECKSUM1 94 328 #define TULIP_ROM_IL_SELECT_CONN_TYPE 0 329 #define TULIP_ROM_IL_MEDIA_COUNT 2 330 #define TULIP_ROM_IL_MEDIAn_BLOCK_BASE 3 332 #define SELECT_CONN_TYPE_TP 0x0000 333 #define SELECT_CONN_TYPE_BNC 0x0001 334 #define SELECT_CONN_TYPE_AUI 0x0002 335 #define SELECT_CONN_TYPE_100TX 0x0003 336 #define SELECT_CONN_TYPE_100T4 0x0006 337 #define SELECT_CONN_TYPE_100FX 0x0007 338 #define SELECT_CONN_TYPE MII_10T 0x0009 339 #define SELECT_CONN_TYPE_MII_100TX 0x000d 340 #define SELECT_CONN_TYPE_MII_100T4 0x000f 341 #define SELECT_CONN_TYPE_MII_100FX 0x0010 342 #define SELECT_CONN_TYPE_TP_AUTONEG 0x0100 343 #define SELECT_CONN_TYPE_TP_FDX 0x0204 344 #define SELECT_CONN_TYPE_MII_10T_FDX 0x020a 345 #define SELECT_CONN_TYPE_100TX_FDX 0x020e 346 #define SELECT_CONN_TYPE_MII_100TX_FDX 0x0211 347 #define SELECT_CONN_TYPE_TP_NOLINKPASS 0x0400 348 #define SELECT_CONN_TYPE_ASENSE 0x0800 349 #define SELECT_CONN_TYPE_ASENSE_POWERUP 0x8800 350 #define SELECT_CONN_TYPE_ASENSE_AUTONEG 0x0900 352 #define TULIP_ROM_MB_MEDIA_CODE 0x3f 353 #define TULIP_ROM_MB_MEDIA_TP 0x00 354 #define TULIP_ROM_MB_MEDIA_BNC 0x01 355 #define TULIP_ROM_MB_MEDIA_AUI 0x02 356 #define TULIP_ROM_MB_MEDIA_100TX 0x03 357 #define TULIP_ROM_MB_MEDIA_TP_FDX 0x04 358 #define TULIP_ROM_MB_MEDIA_100TX_FDX 0x05 359 #define TULIP_ROM_MB_MEDIA_100T4 0x06 360 #define TULIP_ROM_MB_MEDIA_100FX 0x07 361 #define TULIP_ROM_MB_MEDIA_100FX_FDX 0x08 363 #define TULIP_ROM_MB_EXT 0x40 365 #define TULIP_ROM_MB_CSR13 1 366 #define TULIP_ROM_MB_CSR14 3 367 #define TULIP_ROM_MB_CSR15 5 369 #define TULIP_ROM_MB_SIZE(mc) (((mc) & TULIP_ROM_MB_EXT) ? 7 : 1) 371 #define TULIP_ROM_MB_NOINDICATOR 0x8000 372 #define TULIP_ROM_MB_DEFAULT 0x4000 373 #define TULIP_ROM_MB_POLARITY 0x0080 374 #define TULIP_ROM_MB_OPMODE(x) (((x) & 0x71) << 18) 375 #define TULIP_ROM_MB_BITPOS(x) (1 << (((x) & 0x0e) >> 1)) 377 #define TULIP_ROM_MB_21140_GPR 0 378 #define TULIP_ROM_MB_21140_MII 1 379 #define TULIP_ROM_MB_21142_SIA 2 380 #define TULIP_ROM_MB_21142_MII 3 381 #define TULIP_ROM_MB_21143_SYM 4 382 #define TULIP_ROM_MB_21143_RESET 5 384 #define TULIP_ROM_GETW(data, off) ((uint32_t)(data)[(off)] | \ 385 (uint32_t)((data)[(off) + 1]) << 8) 391 #define TULIP_CSR0 0x00 392 #define TULIP_CSR1 0x08 393 #define TULIP_CSR2 0x10 394 #define TULIP_CSR3 0x18 395 #define TULIP_CSR4 0x20 396 #define TULIP_CSR5 0x28 397 #define TULIP_CSR6 0x30 398 #define TULIP_CSR7 0x38 399 #define TULIP_CSR8 0x40 400 #define TULIP_CSR9 0x48 401 #define TULIP_CSR10 0x50 402 #define TULIP_CSR11 0x58 403 #define TULIP_CSR12 0x60 404 #define TULIP_CSR13 0x68 405 #define TULIP_CSR14 0x70 406 #define TULIP_CSR15 0x78 407 #define TULIP_CSR16 0x80 408 #define TULIP_CSR17 0x88 409 #define TULIP_CSR18 0x90 410 #define TULIP_CSR19 0x98 411 #define TULIP_CSR20 0xa0 412 #define TULIP_CSR21 0xa8 413 #define TULIP_CSR22 0xb0 414 #define TULIP_CSR23 0xb8 415 #define TULIP_CSR24 0xc0 416 #define TULIP_CSR25 0xc8 417 #define TULIP_CSR26 0xd0 418 #define TULIP_CSR27 0xd8 419 #define TULIP_CSR28 0xe0 420 #define TULIP_CSR29 0xe8 421 #define TULIP_CSR30 0xf0 422 #define TULIP_CSR31 0xf8 424 #define TULIP_CSR_INDEX(csr) ((csr) >> 3) 427 #define CSR_BUSMODE TULIP_CSR0 428 #define BUSMODE_SWR 0x00000001 429 #define BUSMODE_BAR 0x00000002 430 #define BUSMODE_DSL 0x0000007c 431 #define BUSMODE_BLE 0x00000080 433 #define BUSMODE_PBL_DEFAULT 0x00000000 434 #define BUSMODE_PBL_1LW 0x00000100 435 #define BUSMODE_PBL_2LW 0x00000200 436 #define BUSMODE_PBL_4LW 0x00000400 437 #define BUSMODE_PBL_8LW 0x00000800 438 #define BUSMODE_PBL_16LW 0x00001000 439 #define BUSMODE_PBL_32LW 0x00002000 441 #define BUSMODE_CAL_NONE 0x00000000 442 #define BUSMODE_CAL_8LW 0x00004000 443 #define BUSMODE_CAL_16LW 0x00008000 444 #define BUSMODE_CAL_32LW 0x0000c000 445 #define BUSMODE_DAS 0x00010000 455 #define BUSMODE_TAP_NONE 0x00000000 456 #define BUSMODE_TAP_200us 0x00020000 457 #define BUSMODE_TAP_800us 0x00040000 458 #define BUSMODE_TAP_1_6ms 0x00060000 459 #define BUSMODE_TAP_12_8us 0x00080000 460 #define BUSMODE_TAP_25_6us 0x000a0000 461 #define BUSMODE_TAP_51_2us 0x000c0000 462 #define BUSMODE_TAP_102_4us 0x000e0000 463 #define BUSMODE_DBO 0x00100000 464 #define BUSMODE_RME 0x00200000 465 #define BUSMODE_WINB_WAIT 0x00200000 466 #define BUSMODE_RLE 0x00800000 467 #define BUSMODE_WLE 0x01000000 468 #define BUSMODE_PNIC_MBO 0x04000000 473 #define CSR_TXPOLL TULIP_CSR1 474 #define TXPOLL_TPD 0x00000001 478 #define CSR_RXPOLL TULIP_CSR2 479 #define RXPOLL_RPD 0x00000001 483 #define CSR_RXLIST TULIP_CSR3 486 #define CSR_TXLIST TULIP_CSR4 489 #define CSR_STATUS TULIP_CSR5 490 #define STATUS_TI 0x00000001 491 #define STATUS_TPS 0x00000002 492 #define STATUS_TU 0x00000004 493 #define STATUS_TJT 0x00000008 494 #define STATUS_WINB_REI 0x00000008 495 #define STATUS_LNPANC 0x00000010 496 #define STATUS_WINB_RERR 0x00000010 497 #define STATUS_UNF 0x00000020 498 #define STATUS_RI 0x00000040 499 #define STATUS_RU 0x00000080 500 #define STATUS_RPS 0x00000100 501 #define STATUS_RWT 0x00000200 502 #define STATUS_AT 0x00000400 504 #define STATUS_ETI 0x00000400 506 #define STATUS_FD 0x00000800 508 #define STATUS_TM 0x00000800 509 #define STATUS_LNF 0x00001000 510 #define STATUS_SE 0x00002000 511 #define STATUS_ER 0x00004000 512 #define STATUS_AIS 0x00008000 513 #define STATUS_NIS 0x00010000 514 #define STATUS_RS 0x000e0000 515 #define STATUS_RS_STOPPED 0x00000000 516 #define STATUS_RS_FETCH 0x00020000 518 #define STATUS_RS_CHECK 0x00040000 520 #define STATUS_RS_WAIT 0x00060000 521 #define STATUS_RS_SUSPENDED 0x00080000 522 #define STATUS_RS_CLOSE 0x000a0000 524 #define STATUS_RS_FLUSH 0x000c0000 526 #define STATUS_RS_QUEUE 0x000e0000 529 #define STATUS_DM_RS_STOPPED 0x00000000 530 #define STATUS_DM_RS_FETCH 0x00020000 532 #define STATUS_DM_RS_WAIT 0x00040000 533 #define STATUS_DM_RS_QUEUE 0x00060000 536 #define STATUS_DM_RS_CLOSE_OWN 0x00080000 538 #define STATUS_DM_RS_CLOSE_ST 0x000a0000 540 #define STATUS_DM_RS_SUSPENDED 0x000c0000 541 #define STATUS_DM_RS_FLUSH 0x000e0000 543 #define STATUS_TS 0x00700000 544 #define STATUS_TS_STOPPED 0x00000000 545 #define STATUS_TS_FETCH 0x00100000 547 #define STATUS_TS_WAIT 0x00200000 549 #define STATUS_TS_READING 0x00300000 552 #define STATUS_TS_RESERVED 0x00400000 553 #define STATUS_TS_SETUP 0x00500000 554 #define STATUS_TS_SUSPENDED 0x00600000 555 #define STATUS_TS_CLOSE 0x00700000 557 #define STATUS_DM_TS_STOPPED 0x00000000 558 #define STATUS_DM_TS_FETCH 0x00100000 560 #define STATUS_DM_TS_SETUP 0x00200000 561 #define STATUS_DM_TS_READING 0x00300000 564 #define STATUS_DM_TS_CLOSE_OWN 0x00400000 566 #define STATUS_DM_TS_WAIT 0x00500000 568 #define STATUS_DM_TS_CLOSE_ST 0x00600000 570 #define STATUS_DM_TS_SUSPENDED 0x00700000 571 #define STATUS_EB 0x03800000 572 #define STATUS_EB_PARITY 0x00000000 573 #define STATUS_EB_MABT 0x00800000 574 #define STATUS_EB_TABT 0x01000000 575 #define STATUS_GPPI 0x04000000 576 #define STATUS_PNIC_TXABORT 0x04000000 577 #define STATUS_LC 0x08000000 579 #define STATUS_PMAC_WKUPI 0x10000000 580 #define STATUS_X3201_PMEIS 0x10000000 582 #define STATUS_X3201_SFIS 0x80000000 587 #define CSR_OPMODE TULIP_CSR6 588 #define OPMODE_HP 0x00000001 589 #define OPMODE_SR 0x00000002 590 #define OPMODE_HO 0x00000004 591 #define OPMODE_PB 0x00000008 592 #define OPMODE_WINB_APP 0x00000008 593 #define OPMODE_IF 0x00000010 594 #define OPMODE_WINB_AMP 0x00000010 595 #define OPMODE_SB 0x00000020 596 #define OPMODE_WINB_ABP 0x00000020 597 #define OPMODE_PR 0x00000040 598 #define OPMODE_WINB_ARP 0x00000040 599 #define OPMODE_PM 0x00000080 600 #define OPMODE_WINB_AEP 0x00000080 601 #define OPMODE_FKD 0x00000100 602 #define OPMODE_AX_RB 0x00000100 603 #define OPMODE_FD 0x00000200 604 #define OPMODE_OM 0x00000c00 605 #define OPMODE_OM_NORMAL 0x00000000 606 #define OPMODE_OM_INTLOOP 0x00000400 607 #define OPMODE_OM_EXTLOOP 0x00000800 608 #define OPMODE_FC 0x00001000 609 #define OPMODE_ST 0x00002000 610 #define OPMODE_TR 0x0000c000 611 #define OPMODE_TR_72 0x00000000 612 #define OPMODE_TR_96 0x00004000 613 #define OPMODE_TR_128 0x00008000 614 #define OPMODE_TR_160 0x0000c000 615 #define OPMODE_WINB_TTH 0x001fc000 616 #define OPMODE_WINB_TTH_SHIFT 14 617 #define OPMODE_BP 0x00010000 618 #define OPMODE_CA 0x00020000 619 #define OPMODE_PNIC_TBEN 0x00020000 624 #define OPMODE_PS 0x00040000 627 #define OPMODE_HBD 0x00080000 632 #define OPMODE_PNIC_IT 0x00100000 633 #define OPMODE_SF 0x00200000 635 #define OPMODE_WINB_REIT 0x1fe00000 636 #define OPMODE_WINB_REIT_SHIFT 21 637 #define OPMODE_TTM 0x00400000 640 #define OPMODE_PCS 0x00800000 641 #define OPMODE_SCR 0x01000000 642 #define OPMODE_MBO 0x02000000 644 #define OPMODE_IDAMSB 0x04000000 646 #define OPMODE_PNIC_DRC 0x20000000 648 #define OPMODE_WINB_FES 0x20000000 649 #define OPMODE_RA 0x40000000 650 #define OPMODE_PNIC_EED 0x40000000 652 #define OPMODE_WINB_TEIO 0x40000000 653 #define OPMODE_SC 0x80000000 655 #define OPMODE_WINB_REIO 0x80000000 658 #define OPMODE_MEDIA_BITS (OPMODE_FD|OPMODE_PS|OPMODE_TTM|OPMODE_PCS|OPMODE_SCR) 661 #define CSR_INTEN TULIP_CSR7 666 #define CSR_MISSED TULIP_CSR8 667 #define MISSED_MFC 0x0000ffff 668 #define MISSED_MFO 0x00010000 670 #define MISSED_FOC 0x0ffe0000 672 #define MISSED_OCO 0x10000000 675 #define MISSED_GETMFC(x) ((x) & MISSED_MFC) 676 #define MISSED_GETFOC(x) (((x) & MISSED_FOC) >> 17) 680 #define CSR_MIIROM TULIP_CSR9 681 #define MIIROM_DATA 0x000000ff 685 #define MIIROM_SROMCS 0x00000001 686 #define MIIROM_SROMSK 0x00000002 687 #define MIIROM_SROMDI 0x00000004 688 #define MIIROM_SROMDO 0x00000008 689 #define MIIROM_REG 0x00000400 690 #define MIIROM_SR 0x00000800 691 #define MIIROM_BR 0x00001000 692 #define MIIROM_WR 0x00002000 693 #define MIIROM_RD 0x00004000 694 #define MIIROM_MOD 0x00008000 695 #define MIIROM_MDC 0x00010000 696 #define MIIROM_MDO 0x00020000 697 #define MIIROM_MIIDIR 0x00040000 700 #define MIIROM_MDI 0x00080000 701 #define MIIROM_DN 0x80000000 703 #define MIIROM_PMAC_LED0SEL 0x10000000 705 #define MIIROM_PMAC_LED1SEL 0x20000000 707 #define MIIROM_PMAC_LED2SEL 0x40000000 709 #define MIIROM_PMAC_LED3SEL 0x80000000 713 #define TULIP_SROM_OPC_ERASE 0x04 714 #define TULIP_SROM_OPC_WRITE 0x05 715 #define TULIP_SROM_OPC_READ 0x06 718 #define PNIC_MIIROM_DATA 0x0000ffff 719 #define PNIC_MIIROM_BUSY 0x80000000 723 #define CSR_ROMADDR TULIP_CSR10 724 #define ROMADDR_MASK 0x000003ff 728 #define CSR_GPT TULIP_CSR11 729 #define GPT_VALUE 0x0000ffff 730 #define GPT_CON 0x00010000 732 #define GPT_NRX 0x000e0000 733 #define GPT_RXT 0x00f00000 734 #define GPT_NTX 0x07000000 735 #define GPT_TXT 0x78000000 736 #define GPT_CYCLE 0x80000000 740 #define CSR_SIASTAT TULIP_CSR12 741 #define SIASTAT_PAUI 0x00000001 743 #define SIASTAT_MRA 0x00000001 745 #define SIASTAT_NCR 0x00000002 746 #define SIASTAT_LS100 0x00000002 748 #define SIASTAT_LKF 0x00000004 749 #define SIASTAT_LS10 0x00000004 751 #define SIASTAT_APS 0x00000008 752 #define SIASTAT_DSD 0x00000010 753 #define SIASTAT_DSP 0x00000020 754 #define SIASTAT_DAZ 0x00000040 755 #define SIASTAT_DAO 0x00000080 756 #define SIASTAT_SRA 0x00000100 758 #define SIASTAT_ARA 0x00000100 760 #define SIASTAT_NRA 0x00000200 762 #define SIASTAT_TRA 0x00000200 764 #define SIASTAT_NSN 0x00000400 766 #define SIASTAT_TRF 0x00000800 768 #define SIASTAT_ANS 0x00007000 770 #define SIASTAT_ANS_DIS 0x00000000 771 #define SIASTAT_ANS_TXDIS 0x00001000 772 #define SIASTAT_ANS_START 0x00001000 773 #define SIASTAT_ANS_ABD 0x00002000 774 #define SIASTAT_ANS_ACKD 0x00003000 775 #define SIASTAT_ANS_ACKC 0x00004000 776 #define SIASTAT_ANS_FLPGOOD 0x00005000 777 #define SIASTAT_ANS_LINKCHECK 0x00006000 778 #define SIASTAT_LPN 0x00008000 780 #define SIASTAT_LPC 0xffff0000 782 #define SIASTAT_GETLPC(x) (((x) & SIASTAT_LPC) >> 16) 786 #define CSR_SIACONN TULIP_CSR13 787 #define SIACONN_SRL 0x00000001 789 #define SIACONN_PS 0x00000002 791 #define SIACONN_CAC 0x00000004 792 #define SIACONN_AUI 0x00000008 793 #define SIACONN_EDP 0x00000010 795 #define SIACONN_ENI 0x00000020 797 #define SIACONN_SIM 0x00000040 799 #define SIACONN_ASE 0x00000080 801 #define SIACONN_SEL 0x00000f00 804 #define SIACONN_IE 0x00001000 805 #define SIACONN_OE1_3 0x00002000 807 #define SIACONN_OE2_4 0x00004000 809 #define SIACONN_OE5_6_7 0x00008000 811 #define SIACONN_SDM 0x0000ef00 818 #define CSR_SIATXRX TULIP_CSR14 819 #define SIATXRX_ECEN 0x00000001 820 #define SIATXRX_LBK 0x00000002 821 #define SIATXRX_DREN 0x00000004 822 #define SIATXRX_LSE 0x00000008 823 #define SIATXRX_CPEN 0x00000030 824 #define SIATXRX_CPEN_DIS0 0x00000000 825 #define SIATXRX_CPEN_DIS1 0x00000010 826 #define SIATXRX_CPEN_HIGHPWR 0x00000020 827 #define SIATXRX_CPEN_NORMAL 0x00000030 828 #define SIATXRX_MBO 0x00000040 829 #define SIATXRX_TH 0x00000040 830 #define SIATXRX_ANE 0x00000080 832 #define SIATXRX_RSQ 0x00000100 833 #define SIATXRX_CSQ 0x00000200 834 #define SIATXRX_CLD 0x00000400 835 #define SIATXRX_SQE 0x00000800 837 #define SIATXRX_LTE 0x00001000 838 #define SIATXRX_APE 0x00002000 839 #define SIATXRX_SPP 0x00004000 840 #define SIATXRX_TAS 0x00008000 842 #define SIATXRX_THX 0x00010000 843 #define SIATXRX_TXF 0x00020000 844 #define SIATXRX_T4 0x00040000 848 #define CSR_SIAGEN TULIP_CSR15 849 #define SIAGEN_JBD 0x00000001 850 #define SIAGEN_HUJ 0x00000002 851 #define SIAGEN_JCK 0x00000004 852 #define SIAGEN_ABM 0x00000008 853 #define SIAGEN_RWD 0x00000010 854 #define SIAGEN_RWR 0x00000020 855 #define SIAGEN_LE1 0x00000040 856 #define SIAGEN_LV1 0x00000080 857 #define SIAGEN_TSCK 0x00000100 858 #define SIAGEN_FUSQ 0x00000200 859 #define SIAGEN_FLF 0x00000400 860 #define SIAGEN_LSD 0x00000800 862 #define SIAGEN_LEE 0x00000800 863 #define SIAGEN_DPST 0x00001000 864 #define SIAGEN_FRL 0x00002000 865 #define SIAGEN_LE2 0x00004000 866 #define SIAGEN_RMP 0x00004000 868 #define SIAGEN_LV2 0x00008000 869 #define SIAGEN_HCKR 0x00008000 870 #define SIAGEN_MD 0x000f0000 871 #define SIAGEN_LGS0 0x00100000 872 #define SIAGEN_LGS1 0x00200000 873 #define SIAGEN_LGS2 0x00400000 874 #define SIAGEN_LGS3 0x00800000 875 #define SIAGEN_GEI0 0x01000000 876 #define SIAGEN_GEI1 0x02000000 877 #define SIAGEN_RME 0x04000000 878 #define SIAGEN_CWE 0x08000000 879 #define SIAGEN_GI0 0x10000000 880 #define SIAGEN_GI1 0x20000000 881 #define SIAGEN_RMI 0x40000000 885 #define CSR_GPP TULIP_CSR12 886 #define GPP_MD 0x000000ff 887 #define GPP_GPC 0x00000100 888 #define GPP_PNIC_GPD 0x0000000f 889 #define GPP_PNIC_GPC 0x000000f0 891 #define GPP_PNIC_IN(x) (1 << (x)) 892 #define GPP_PNIC_OUT(x, on) (((on) << (x)) | (1 << ((x) + 4))) 903 #define GPP_PNIC_PIN_SPEED_RLY 0 904 #define GPP_PNIC_PIN_100M_LPKB 1 905 #define GPP_PNIC_PIN_BNC_XMER 2 906 #define GPP_PNIC_PIN_LNK100X 3 911 #define GPP_SMC9332DST_PINS 0x3f 912 #define GPP_SMC9332DST_OK10 0x80 913 #define GPP_SMC9332DST_OK100 0x40 914 #define GPP_SMC9332DST_INIT 0x09 919 #define GPP_COGENT_EM1x0_PINS 0x3f 920 #define GPP_COGENT_EM1x0_INIT 0x09 928 #define CSR_21040_FDX TULIP_CSR11 929 #define FDX21040_FDXACV 0x0000ffff 934 #define SIACONN_21040_10BASET 0x0000ef01 935 #define SIATXRX_21040_10BASET 0x0000ffff 936 #define SIAGEN_21040_10BASET 0x00000000 940 #define SIACONN_21040_10BASET_FDX 0x0000ef01 941 #define SIATXRX_21040_10BASET_FDX 0x0000fffd 942 #define SIAGEN_21040_10BASET_FDX 0x00000000 946 #define SIACONN_21040_AUI 0x0000ef09 947 #define SIATXRX_21040_AUI 0x00000705 948 #define SIAGEN_21040_AUI 0x00000006 952 #define SIACONN_21040_EXTSIA 0x00003041 953 #define SIATXRX_21040_EXTSIA 0x00000000 954 #define SIAGEN_21040_EXTSIA 0x00000006 962 #define SIACONN_21041_10BASET 0x0000ef01 963 #define SIATXRX_21041_10BASET 0x0000ff3f 964 #define SIAGEN_21041_10BASET 0x00000000 966 #define SIACONN_21041P2_10BASET SIACONN_21041_10BASET 967 #define SIATXRX_21041P2_10BASET 0x0000ffff 968 #define SIAGEN_21041P2_10BASET SIAGEN_21041_10BASET 972 #define SIACONN_21041_10BASET_FDX 0x0000ef01 973 #define SIATXRX_21041_10BASET_FDX 0x0000ff3d 974 #define SIAGEN_21041_10BASET_FDX 0x00000000 976 #define SIACONN_21041P2_10BASET_FDX SIACONN_21041_10BASET_FDX 977 #define SIATXRX_21041P2_10BASET_FDX 0x0000ffff 978 #define SIAGEN_21041P2_10BASET_FDX SIAGEN_21041_10BASET_FDX 982 #define SIACONN_21041_AUI 0x0000ef09 983 #define SIATXRX_21041_AUI 0x0000f73d 984 #define SIAGEN_21041_AUI 0x0000000e 986 #define SIACONN_21041P2_AUI SIACONN_21041_AUI 987 #define SIATXRX_21041P2_AUI 0x0000f7fd 988 #define SIAGEN_21041P2_AUI SIAGEN_21041_AUI 992 #define SIACONN_21041_BNC 0x0000ef09 993 #define SIATXRX_21041_BNC 0x0000f73d 994 #define SIAGEN_21041_BNC 0x00000006 996 #define SIACONN_21041P2_BNC SIACONN_21041_BNC 997 #define SIATXRX_21041P2_BNC 0x0000f7fd 998 #define SIAGEN_21041P2_BNC SIAGEN_21041_BNC 1006 #define SIACONN_21142_10BASET 0x00000001 1007 #define SIATXRX_21142_10BASET 0x00007f3f 1008 #define SIAGEN_21142_10BASET 0x00000008 1012 #define SIACONN_21142_10BASET_FDX 0x00000001 1013 #define SIATXRX_21142_10BASET_FDX 0x00007f3d 1014 #define SIAGEN_21142_10BASET_FDX 0x00000008 1018 #define SIACONN_21142_AUI 0x00000009 1019 #define SIATXRX_21142_AUI 0x00004705 1020 #define SIAGEN_21142_AUI 0x0000000e 1024 #define SIACONN_21142_BNC 0x00000009 1025 #define SIATXRX_21142_BNC 0x00004705 1026 #define SIAGEN_21142_BNC 0x00000006 1034 #define CSR_PNIC_ENDEC 0x78 1035 #define PNIC_ENDEC_JDIS 0x00000001 1038 #define CSR_PNIC_SROMPWR 0x90 1039 #define PNIC_SROMPWR_MRLE 0x00000001 1040 #define PNIC_SROMPWR_CB 0x00000002 1046 #define CSR_PNIC_SROMCTL 0x98 1047 #define PNIC_SROMCTL_addr 0x0000003f 1049 #define PNIC_SROMCTL_READ 0x00000600 1052 #define CSR_PNIC_MII 0xa0 1053 #define PNIC_MII_DATA 0x0000ffff 1054 #define PNIC_MII_REG 0x007c0000 1055 #define PNIC_MII_REGSHIFT 18 1056 #define PNIC_MII_PHY 0x0f800000 1057 #define PNIC_MII_PHYSHIFT 23 1058 #define PNIC_MII_OPCODE 0x30000000 1059 #define PNIC_MII_RESERVED 0x00020000 1061 #define PNIC_MII_MBO 0x40000000 1062 #define PNIC_MII_BUSY 0x80000000 1064 #define PNIC_MII_WRITE 0x10000000 1065 #define PNIC_MII_READ 0x20000000 1068 #define CSR_PNIC_NWAY 0xb8 1069 #define PNIC_NWAY_RS 0x00000001 1070 #define PNIC_NWAY_PD 0x00000002 1071 #define PNIC_NWAY_BX 0x00000004 1072 #define PNIC_NWAY_LC 0x00000008 1073 #define PNIC_NWAY_UV 0x00000010 1074 #define PNIC_NWAY_DX 0x00000020 1075 #define PNIC_NWAY_TW 0x00000040 1076 #define PNIC_NWAY_AF 0x00000080 1078 #define PNIC_NWAY_FD 0x00000100 1079 #define PNIC_NWAY_DL 0x00000200 1081 #define PNIC_NWAY_DM 0x00000400 1082 #define PNIC_NWAY_100 0x00000800 1083 #define PNIC_NWAY_NW 0x00001000 1084 #define PNIC_NWAY_CAP10T 0x00002000 1085 #define PNIC_NWAY_CAP10TFDX 0x00004000 1086 #define PNIC_NWAY_CAP100TXFDX 0x00008000 1087 #define PNIC_NWAY_CAP100TX 0x00010000 1088 #define PNIC_NWAY_CAP100T4 0x00020000 1089 #define PNIC_NWAY_RN 0x02000000 1090 #define PNIC_NWAY_RF 0x04000000 1091 #define PNIC_NWAY_LPAR10T 0x08000000 1092 #define PNIC_NWAY_LPAR10TFDX 0x10000000 1093 #define PNIC_NWAY_LPAR100TXFDX 0x20000000 1094 #define PNIC_NWAY_LPAR100TX 0x40000000 1095 #define PNIC_NWAY_LPAR100T4 0x80000000 1096 #define PNIC_NWAY_LPAR_MASK 0xf8000000 1118 #define CSR_PMAC_10TSTAT TULIP_CSR12 1119 #define PMAC_SIASTAT_MASK (SIASTAT_LS100|SIASTAT_LS10| \ 1120 SIASTAT_APS|SIASTAT_TRF|SIASTAT_ANS| \ 1121 SIASTAT_LPN|SIASTAT_LPC) 1125 #define CSR_PMAC_NWAYRESET TULIP_CSR13 1127 #define PMAC_SIACONN_MASK (SIACONN_SRL) 1128 #define PMAC_NWAYRESET_100TXRESET 0x00000002 1132 #define CSR_PMAC_10TCTL TULIP_CSR14 1134 #define PMAC_SIATXRX_MASK (SIATXRX_LBK|SIATXRX_DREN|SIATXRX_TH| \ 1135 SIATXRX_ANE|SIATXRX_RSQ|SIATXRX_LTE| \ 1136 SIATXRX_THX|SIATXRX_TXF|SIATXRX_T4) 1142 #define PMAC_SIAGEN_MASK (SIAGEN_JBD|SIAGEN_HUJ|SIAGEN_JCK| \ 1143 SIAGEN_RWD|SIAGEN_RWR) 1147 #define CSR_PMAC_TOR TULIP_CSR16 1148 #define PMAC_TOR_98713 0x0F370000 1149 #define PMAC_TOR_98715 0x0B3C0000 1153 #define CSR_PMAC_NWAYSTAT TULIP_CSR20 1164 #define PMAC_NWAYSTAT_DS120 0x00000200 1165 #define PMAC_NWAYSTAT_DS130 0x00004000 1166 #define PMAC_NWAYSTAT_EQTEST 0x00001000 1167 #define PMAC_NWAYSTAT_PCITEST 0x00010000 1168 #define PMAC_NWAYSTAT_10TXH 0x08000000 1169 #define PMAC_NWAYSTAT_10TXF 0x10000000 1170 #define PMAC_NWAYSTAT_100TXH 0x20000000 1171 #define PMAC_NWAYSTAT_100TXF 0x40000000 1172 #define PMAC_NWAYSTAT_T4 0x80000000 1176 #define CSR_PNICII_FLOWCTL TULIP_CSR21 1177 #define PNICII_FLOWCTL_WKFCATEN 0x00000010 1179 #define PNICII_FLOWCTL_NFCE 0x00000020 1181 #define PNICII_FLOWCTL_FCTH0 0x00000040 1182 #define PNICII_FLOWCTL_FCTH1 0x00000080 1183 #define PNICII_FLOWCTL_REJECTFC 0x00000100 1184 #define PNICII_FLOWCTL_STOPTX 0x00000200 1185 #define PNICII_FLOWCTL_RUFCEN 0x00000400 1187 #define PNICII_FLOWCTL_RXFCEN 0x00000800 1188 #define PNICII_FLOWCTL_TXFCEN 0x00001000 1189 #define PNICII_FLOWCTL_RESTOP 0x00002000 1190 #define PNICII_FLOWCTL_RESTART 0x00004000 1191 #define PNICII_FLOWCTL_TEST 0x00008000 1192 #define PNICII_FLOWCTL_TMVAL 0xffff0000 1195 #define PNICII_FLOWCTL_TH_512 (PNICII_FLOWCTL_FCTH0|PNICII_FLOWCTL_FCTH1) 1196 #define PNICII_FLOWCTL_TH_256 (PNICII_FLOWCTL_FCTH1) 1197 #define PNICII_FLOWCTL_TH_128 (PNICII_FLOWCTL_FCTH0) 1198 #define PNICII_FLOWCTL_TH_OVFLW (0) 1202 #define CSR_PNICII_MACID0 TULIP_CSR22 1203 #define PNICII_MACID_1 0 1204 #define PNICII_MACID_0 8 1205 #define PNICII_MACID_3 16 1206 #define PNICII_MACID_2 24 1210 #define PNICII_MACID_5 0 1211 #define PNICII_MACID_4 8 1212 #define PNICII_MAGID_5 16 1213 #define PNICII_MAGIC_4 24 1217 #define PNICII_MAGID_1 0 1218 #define PNICII_MAGID_0 8 1219 #define PNICII_MAGID_3 16 1220 #define PNICII_MAGID_2 24 1224 #define CSR_PNICII_MASK0 TULIP_CSR25 1226 #define CSR_PNICII_MASK1 TULIP_CSR26 1228 #define CSR_PNICII_MASK2 TULIP_CSR27 1230 #define CSR_PNICII_MASK3 TULIP_CSR28 1234 #define CSR_PNICII_FILOFF TULIP_CSR29 1235 #define PNICII_FILOFF_PAT0 0x0000007f 1236 #define PNICII_FILOFF_EN0 0x00000080 1237 #define PNICII_FILOFF_PAT1 0x00007f00 1238 #define PNICII_FILOFF_EN1 0x00008000 1239 #define PNICII_FILOFF_PAT2 0x007f0000 1240 #define PNICII_FILOFF_EN2 0x00800000 1241 #define PNICII_FILOFF_PAT3 0x7f000000 1242 #define PNICII_FILOFF_EN3 0x80000000 1246 #define CSR_PNICII_FIL01 TULIP_CSR30 1247 #define PNICII_FIL01_CRC0 0x0000ffff 1248 #define PNICII_FIL01_CRC1 0xffff0000 1252 #define CSR_PNICII_FIL23 TULIP_CSR31 1253 #define PNICII_FIL23_CRC2 0x0000ffff 1254 #define PNICII_FIL23_CRC3 0xffff0000 1262 #define CSR_WINB_CRDAR TULIP_CSR12 1266 #define CSR_WINB_CCRBAR TULIP_CSR13 1270 #define CSR_WINB_CMA0 TULIP_CSR14 1274 #define CSR_WINB_CMA1 TULIP_CSR15 1278 #define CSR_WINB_CPA0 TULIP_CSR16 1282 #define CSR_WINB_CPA1 TULIP_CSR17 1286 #define CSR_WINB_CBRCR TULIP_CSR18 1287 #define WINB_CBRCR_NONE 0x00000000 1289 #define WINB_CBRCR_8K 0x00000002 1290 #define WINB_CBRCR_16K 0x00000003 1291 #define WINB_CBRCR_32K 0x00000004 1292 #define WINB_CBRCR_64K 0x00000005 1293 #define WINB_CBRCR_128K 0x00000006 1294 #define WINB_CBRCR_256K 0x00000007 1298 #define CSR_WINB_CTDAR TULIP_CSR19 1302 #define CSR_WINB_CTBAR TULIP_CSR20 1313 #define CSR_ADM_WCSR 0x68 1314 #define ADM_WCSR_LSC 0x00000001 1315 #define ADM_WCSR_MPR 0x00000002 1316 #define ADM_WCSR_WFR 0x00000004 1317 #define ADM_WCSR_LSCE 0x00000100 1318 #define ADM_WCSR_MPRE 0x00000200 1319 #define ADM_WCSR_WFRE 0x00000400 1320 #define ADM_WCSR_LINKON 0x00010000 1321 #define ADM_WCSR_LINKOFF 0x00020000 1322 #define ADM_WCSR_WP5E 0x02000000 1323 #define ADM_WCSR_WP4E 0x04000000 1324 #define ADM_WCSR_WP3E 0x08000000 1325 #define ADM_WCSR_WP2E 0x10000000 1326 #define ADM_WCSR_WP1E 0x20000000 1327 #define ADM_WCSR_CRCT 0x40000000 1333 #define CSR_ADM_WPDR 0x70 1348 #define CSR_ADM_ASR 0x80 1350 #define ADM_ASR_AAISS 0x00080000 1351 #define ADM_ASR_ANISS 0x00010000 1354 #define ADM_ASR_BET 0x03800000 1355 #define ADM_ASR_BET_PERR 0x00000000 1356 #define ADM_ASR_BET_MABT 0x00800000 1357 #define ADM_ASR_BET_TABT 0x01000000 1358 #define ADM_ASR_PFR 0x04000000 1359 #define ADM_ASR_TDIS 0x10000000 1360 #define ADM_ASR_XIS 0x20000000 1361 #define ADM_ASR_REIS 0x40000000 1362 #define ADM_ASR_TEIS 0x80000000 1366 #define CSR_ADM_AIE 0x84 1371 #define CSR_ADM_CR 0x88 1372 #define ADM_CR_ATUR 0x00000001 1373 #define ADM_CR_SINT 0x00000002 1374 #define ADM_CR_DRT 0x0000000c 1375 #define ADM_CR_DRT_8LW 0x00000000 1376 #define ADM_CR_DRT_16LW 0x00000004 1377 #define ADM_CR_DRT_SF 0x00000008 1378 #define ADM_CR_RTE 0x00000010 1379 #define ADM_CR_PAUSE 0x00000020 1380 #define ADM_CR_RWP 0x00000040 1383 #define ADM_CR_WOL 0x00040000 1384 #define ADM_CR_PM 0x00080000 1385 #define ADM_CR_RFS 0x00600000 1386 #define ADM_CR_RFS_1K 0x00600000 1387 #define ADM_CR_RFS_2K 0x00400000 1388 #define ADM_CR_LEDMODE 0x00800000 1389 #define ADM_CR_AUXCL 0x30000000 1390 #define ADM_CR_D3CS 0x80000000 1394 #define CSR_ADM_PCIC 0x8c 1395 #define ADM_PCIC_DWCNT 0x000000ff 1398 #define ADM_PCIC_CLKCNT 0xffff0000 1403 #define CSR_ADM_PMCSR 0x90 1411 #define CSR_ADM_TXBR 0x9c 1412 #define ADM_TXBR_TTO 0x00000fff 1413 #define ADM_TXBR_TBCNT 0x001f0000 1417 #define CSR_ADM_FROM 0xa0 1418 #define ADM_FROM_DATA 0x000000ff 1419 #define ADM_FROM_ADDR 0x01ffff00 1420 #define ADM_FROM_ADDR_SHIFT 8 1421 #define ADM_FROM_WEN 0x04000000 1422 #define ADM_FROM_REN 0x08000000 1423 #define ADM_FROM_bra16on 0x80000000 1428 #define CSR_ADM_PAR0 0xa4 1432 #define CSR_ADM_PAR1 0xa8 1436 #define CSR_ADM_MAR0 0xac 1440 #define CSR_ADM_MAR1 0xb0 1445 #define CSR_ADM_BMCR 0xb4 1446 #define CSR_ADM_BMSR 0xb8 1447 #define CSR_ADM_PHYIDR1 0xbc 1448 #define CSR_ADM_PHYIDR2 0xc0 1449 #define CSR_ADM_ANAR 0xc4 1450 #define CSR_ADM_ANLPAR 0xc8 1451 #define CSR_ADM_ANER 0xcc 1454 #define CSR_ADM_XMC 0xd0 1455 #define ADM_XMC_LD 0x00000800 1460 #define CSR_ADM_XCIIS 0xd4 1461 #define ADM_XCIIS_REF 0x0001 1462 #define ADM_XCIIS_ANPR 0x0002 1463 #define ADM_XCIIS_PDF 0x0004 1464 #define ADM_XCIIS_ANAR 0x0008 1465 #define ADM_XCIIS_LS 0x0010 1466 #define ADM_XCIIS_RFD 0x0020 1467 #define ADM_XCIIS_ANC 0x0040 1468 #define ADM_XCIIS_PAUSE 0x0080 1469 #define ADM_XCIIS_DUPLEX 0x0100 1470 #define ADM_XCIIS_SPEED 0x0200 1474 #define CSR_ADM_XIE 0xd8 1479 #define CSR_ADM_100CTR 0xdc 1480 #define ADM_100CTR_DISCRM 0x0001 1481 #define ADM_100CTR_DISMLT 0x0002 1482 #define ADM_100CTR_CMODE 0x001c 1483 #define ADM_100CTR_CMODE_AUTO 0x0000 1484 #define ADM_100CTR_CMODE_10 0x0004 1485 #define ADM_100CTR_CMODE_100 0x0008 1488 #define ADM_100CTR_CMODE_10FD 0x0014 1489 #define ADM_100CTR_CMODE_100FD 0x0018 1490 #define ADM_100CTR_CMODE_ISO 0x001c 1491 #define ADM_100CTR_ISOTX 0x0020 1492 #define ADM_100CTR_ENRZI 0x0080 1493 #define ADM_100CTR_ENDCR 0x0100 1494 #define ADM_100CTR_ENRLB 0x0200 1495 #define ADM_100CTR_RXVPP 0x0800 1498 #define ADM_100CTR_ANC 0x1000 1499 #define ADM_100CTR_DISRER 0x2000 1502 #define CSR_ADM983_OPMODE 0xfc 1503 #define ADM983_OPMODE_SPEED 0x80000000 1504 #define ADM983_OPMODE_FD 0x40000000 1505 #define ADM983_OPMODE_LINK 0x20000000 1506 #define ADM983_OPMODE_EERLOD 0x04000000 1507 #define ADM983_OPMODE_SingleChip 0x00000007 1508 #define ADM983_OPMODE_MacOnly 0x00000004 1515 #define CSR_X3201_PMR TULIP_CSR16 1516 #define X3201_PMR_EDINT 0x0000000f 1517 #define X3201_PMR_EDEN 0x00000100 1518 #define X3201_PMR_MPEN 0x00000200 1519 #define X3201_PMR_WOLEN 0x00000400 1520 #define X3201_PMR_PMGP0EN 0x00001000 1521 #define X3201_PMR_PMLCEN 0x00002000 1522 #define X3201_PMR_WOLTMEN 0x00008000 1523 #define X3201_PMR_EP 0x00010000 1524 #define X3201_PMR_LP 0x00200000 1525 #define X3201_PMR_EDES 0x01000000 1526 #define X3201_PMR_MPES 0x02000000 1527 #define X3201_PMR_WOLES 0x04000000 1528 #define X3201_PMR_WOLPS 0x08000000 1529 #define X3201_PMR_GP0ES 0x10000000 1530 #define X3201_PMR_LCES 0x20000000 1537 #define CSR_DM_PHYSTAT TULIP_CSR12 1538 #define DM_PHYSTAT_10 0x00000001 1539 #define DM_PHYSTAT_100 0x00000002 1540 #define DM_PHYSTAT_FDX 0x00000004 1541 #define DM_PHYSTAT_LINK 0x00000008 1542 #define DM_PHYSTAT_RXLOCK 0x00000010 1543 #define DM_PHYSTAT_SIGNAL 0x00000020 1544 #define DM_PHYSTAT_UTPSIG 0x00000040 1545 #define DM_PHYSTAT_GPED 0x00000080 1546 #define DM_PHYSTAT_GEPC 0x00000100 1550 #define CSR_DM_SFAR TULIP_CSR13 1554 #define CSR_DM_SFDR TULIP_CSR14 1562 #define CSR_AX_FILTIDX TULIP_CSR13 1565 #define CSR_AX_FILTDATA TULIP_CSR14 1568 #define AX_FILTIDX_PAR0 0x00000000 1569 #define AX_FILTIDX_PAR1 0x00000001 1570 #define AX_FILTIDX_MAR0 0x00000002 1571 #define AX_FILTIDX_MAR1 0x00000003 __volatile u_int32_t td_ctl
__volatile u_int32_t td_bufaddr1
__volatile u_int32_t td_status
__volatile u_int32_t td_bufaddr2