diff options
author | hosokawa <hosokawa@FreeBSD.org> | 2000-01-21 03:08:46 +0000 |
---|---|---|
committer | hosokawa <hosokawa@FreeBSD.org> | 2000-01-21 03:08:46 +0000 |
commit | 7ce7351da146d0eddcacf9714003c07a4369b00c (patch) | |
tree | e41abc40a42cdb05a522a6aeb9a55bf82c6c9101 /sys/dev/pccard | |
parent | c6da76a1a6b1b60435d8df410d11a7a497db504a (diff) | |
download | FreeBSD-src-7ce7351da146d0eddcacf9714003c07a4369b00c.zip FreeBSD-src-7ce7351da146d0eddcacf9714003c07a4369b00c.tar.gz |
Propagate MAC address in CIS tupple to dev/ed/ driver.
Many ed-based Ethernet PC-cards can't get correct MAC address without
this patch.
Submitted by: Takanori Watanabe <takawata@shidahara1.planet.sci.kobe-u.ac.jp>
Reviewed by: Warner Losh <imp@village.org>
Diffstat (limited to 'sys/dev/pccard')
-rw-r--r-- | sys/dev/pccard/pccardvar.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/dev/pccard/pccardvar.h b/sys/dev/pccard/pccardvar.h index 3504f68..ed26e3f 100644 --- a/sys/dev/pccard/pccardvar.h +++ b/sys/dev/pccard/pccardvar.h @@ -269,3 +269,16 @@ void pccard_io_unmap(struct pccard_function *, int); #define pccard_mem_unmap(pf, window) \ (pccard_chip_mem_unmap((pf)->sc->pct, (pf)->sc->pch, (window))) + +/* ivar interface */ +enum { + PCCARD_IVAR_ETHADDR, /* read ethernet address from CIS tupple */ +}; + +/* read ethernet address from CIS tupple */ +__inline static int +pccard_get_ether(device_t dev, u_char *enaddr) +{ + return BUS_READ_IVAR(device_get_parent(dev), dev, + PCCARD_IVAR_ETHADDR, (uintptr_t *)enaddr); +} |