From 00db70e21ad030df6771cd171ba12bdde17dadf5 Mon Sep 17 00:00:00 2001 From: benno Date: Tue, 9 Jul 2002 13:43:06 +0000 Subject: Add the OF_getetheraddr function required by if_gem. --- sys/powerpc/aim/ofw_machdep.c | 12 ++++++++++++ sys/powerpc/include/ofw_machdep.h | 35 +++++++++++++++++++++++++++++++++++ sys/powerpc/powerpc/ofw_machdep.c | 12 ++++++++++++ 3 files changed, 59 insertions(+) create mode 100644 sys/powerpc/include/ofw_machdep.h (limited to 'sys/powerpc') diff --git a/sys/powerpc/aim/ofw_machdep.c b/sys/powerpc/aim/ofw_machdep.c index 6fcf196..b87d97a 100644 --- a/sys/powerpc/aim/ofw_machdep.c +++ b/sys/powerpc/aim/ofw_machdep.c @@ -46,6 +46,8 @@ static const char rcsid[] = #include #include +#include + #include #include @@ -54,6 +56,7 @@ static const char rcsid[] = #include #include +#include #define OFMEM_REGIONS 32 static struct mem_region OFmem[OFMEM_REGIONS + 1], OFavail[OFMEM_REGIONS + 3]; @@ -166,3 +169,12 @@ ppc_boot(str) OF_boot(str); } + +void +OF_getetheraddr(device_t dev, u_char *addr) +{ + phandle_t node; + + node = ofw_pci_find_node(dev); + OF_getprop(node, "local-mac-address", addr, ETHER_ADDR_LEN); +} diff --git a/sys/powerpc/include/ofw_machdep.h b/sys/powerpc/include/ofw_machdep.h new file mode 100644 index 0000000..35b09b9 --- /dev/null +++ b/sys/powerpc/include/ofw_machdep.h @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2001 by Thomas Moestl . + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE + * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _MACHINE_OFW_MACHDEP_H_ +#define _MACHINE_OFW_MACHDEP_H_ + +#include + +void OF_getetheraddr(device_t dev, u_char *addr); + +#endif /* _MACHINE_OFW_MACHDEP_H_ */ diff --git a/sys/powerpc/powerpc/ofw_machdep.c b/sys/powerpc/powerpc/ofw_machdep.c index 6fcf196..b87d97a 100644 --- a/sys/powerpc/powerpc/ofw_machdep.c +++ b/sys/powerpc/powerpc/ofw_machdep.c @@ -46,6 +46,8 @@ static const char rcsid[] = #include #include +#include + #include #include @@ -54,6 +56,7 @@ static const char rcsid[] = #include #include +#include #define OFMEM_REGIONS 32 static struct mem_region OFmem[OFMEM_REGIONS + 1], OFavail[OFMEM_REGIONS + 3]; @@ -166,3 +169,12 @@ ppc_boot(str) OF_boot(str); } + +void +OF_getetheraddr(device_t dev, u_char *addr) +{ + phandle_t node; + + node = ofw_pci_find_node(dev); + OF_getprop(node, "local-mac-address", addr, ETHER_ADDR_LEN); +} -- cgit v1.1