summaryrefslogtreecommitdiffstats
path: root/sys/mips/atheros/if_argevar.h
diff options
context:
space:
mode:
authorgonzo <gonzo@FreeBSD.org>2009-11-12 21:27:58 +0000
committergonzo <gonzo@FreeBSD.org>2009-11-12 21:27:58 +0000
commitc19cd2885e6ffb6b45b0192409e7920217c50613 (patch)
tree55565d0f21085bdcb14a6cc3316fdc2b19850b75 /sys/mips/atheros/if_argevar.h
parent8b6644df46ca280a30ea74191eddfad9dda77a15 (diff)
downloadFreeBSD-src-c19cd2885e6ffb6b45b0192409e7920217c50613.zip
FreeBSD-src-c19cd2885e6ffb6b45b0192409e7920217c50613.tar.gz
- Handle multiphy MAC case: create interface with
fixed-state media with parameters set via hints and configure MAC accordingly to these parameters. All the underlying PHY magic is done by boot manager on startup. At the moment there is no proper way to make active and control all PHYs simultaneously from one MII bus and there is no way to associate incoming/outgoing packet with specific PHY.
Diffstat (limited to 'sys/mips/atheros/if_argevar.h')
-rw-r--r--sys/mips/atheros/if_argevar.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/mips/atheros/if_argevar.h b/sys/mips/atheros/if_argevar.h
index 40962ce..bfa4509 100644
--- a/sys/mips/atheros/if_argevar.h
+++ b/sys/mips/atheros/if_argevar.h
@@ -28,6 +28,7 @@
#ifndef __IF_ARGEVAR_H__
#define __IF_ARGEVAR_H__
+#define ARGE_NPHY 32
#define ARGE_TX_RING_COUNT 128
#define ARGE_RX_RING_COUNT 128
#define ARGE_RX_DMA_SIZE ARGE_RX_RING_COUNT * sizeof(struct arge_desc)
@@ -124,6 +125,12 @@ struct arge_ring_data {
struct arge_softc {
struct ifnet *arge_ifp; /* interface info */
device_t arge_dev;
+ struct ifmedia arge_ifmedia;
+ /*
+ * Media & duples settings for multiPHY MAC
+ */
+ uint32_t arge_media_type;
+ uint32_t arge_duplex_mode;
struct resource *arge_res;
int arge_rid;
struct resource *arge_irq;
@@ -140,7 +147,7 @@ struct arge_softc {
int arge_detach;
uint32_t arge_intr_status;
int arge_mac_unit;
- int arge_phy_num;
+ int arge_phymask;
uint32_t arge_ddr_flush_reg;
uint32_t arge_pll_reg;
uint32_t arge_pll_reg_shift;
OpenPOWER on IntegriCloud