dingusppc/zdocs/bmac.md
2020-03-07 15:40:46 -07:00

65 lines
1.8 KiB
Markdown

The BMac is an Ethernet controller featured in G3 and early G4 Macs. As described by a Linux contributor, this controller "appears to have some parts in common with the Sun "Happy Meal" (HME) controller".
The max frame size is 0x5EE bytes.
It resides on 0xF3011000, with Writing DMA on 0xF3008200 and Reading DMA on 0xF3008300.
## Register Map
| Register Name | Offset |
|:-------------:|:------:|
| XIFC | 0x000 |
| TXFIFOCSR | 0x100 |
| TXTH | 0x110 |
| RXFIFOCSR | 0x120 |
| MEMADD | 0x130 |
| XCVRIF | 0x160 |
| CHIPID | 0x170 |
| MIFCSR | 0x180 |
| SROMCSR | 0x190 |
| TXPNTR | 0x1A0 |
| RXPNTR | 0x1B0 |
| STATUS | 0x200 |
| INTDISABLE | 0x210 |
| TXRST | 0x420 |
| TXCFG | 0x430 |
| IPG1 | 0x440 |
| IPG2 | 0x450 |
| ALIMIT | 0x460 |
| SLOT | 0x470 |
| PALEN | 0x480 |
| PAPAT | 0x490 |
| TXSFD | 0x4A0 |
| JAM | 0x4B0 |
| TXMAX | 0x4C0 |
| TXMIN | 0x4D0 |
| PAREG | 0x4E0 |
| DCNT | 0x4F0 |
| NCCNT | 0x500 |
| NTCNT | 0x510 |
| EXCNT | 0x520 |
| LTCNT | 0x530 |
| RSEED | 0x540 |
| TXSM | 0x550 |
| RXRST | 0x620 |
| RXRST | 0x620 |
| RXCFG | 0x630 |
| RXMAX | 0x640 |
| RXMIN | 0x650 |
| MADD2 | 0x660 |
| MADD1 | 0x670 |
| MADD0 | 0x680 |
| FRCNT | 0x690 |
| LECNT | 0x6A0 |
| AECNT | 0x6B0 |
| FECNT | 0x6C0 |
| RXSM | 0x6D0 |
| RXCV | 0x6E0 |
| HASH3 | 0x700 |
| HASH2 | 0x710 |
| HASH1 | 0x720 |
| HASH0 | 0x730 |
| AFR2 | 0x740 |
| AFR1 | 0x750 |
| AFR0 | 0x760 |
| AFCR | 0x770 |