From 66659ff1ad6831b0ea7425fa6ecd8a8687523658 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 6 Nov 2013 16:20:21 +0100 Subject: Update to FreeBSD 9.2 --- rtemsbsd/include/cam/cam_xpt_internal.h | 1 + rtemsbsd/include/cam/cam_xpt_periph.h | 1 + rtemsbsd/include/cam/scsi/smp_all.h | 1 + rtemsbsd/include/machine/_align.h | 1 + rtemsbsd/include/machine/rtems-bsd-syscall-api.h | 6 +- rtemsbsd/include/rtems/bsd/local/bus_if.h | 21 + rtemsbsd/include/rtems/bsd/local/miidevs.h | 646 +++++++++++++---------- rtemsbsd/include/rtems/bsd/local/opt_capsicum.h | 0 rtemsbsd/include/rtems/bsd/local/opt_ofed.h | 0 rtemsbsd/include/rtems/bsd/local/opt_pcbgroup.h | 0 rtemsbsd/include/rtems/bsd/local/pcib_if.h | 13 + rtemsbsd/include/rtems/bsd/local/usbdevs.h | 31 +- rtemsbsd/include/rtems/bsd/local/usbdevs_data.h | 150 ++++-- rtemsbsd/include/rtems/bsd/sys/_types.h | 10 + rtemsbsd/include/rtems/bsd/sys/param.h | 6 + rtemsbsd/include/sys/_stdint.h | 1 + rtemsbsd/include/sys/cpuset.h | 1 - rtemsbsd/include/sys/rangelock.h | 1 + rtemsbsd/include/sys/vnode.h | 1 - rtemsbsd/local/bus_if.c | 10 +- rtemsbsd/local/pcib_if.c | 8 + rtemsbsd/rtems/rtems-bsd-sysctl.c | 4 +- rtemsbsd/rtems/rtems-bsd-sysctlbyname.c | 2 +- 23 files changed, 578 insertions(+), 337 deletions(-) create mode 100644 rtemsbsd/include/cam/cam_xpt_internal.h create mode 100644 rtemsbsd/include/cam/cam_xpt_periph.h create mode 100644 rtemsbsd/include/cam/scsi/smp_all.h create mode 100644 rtemsbsd/include/machine/_align.h create mode 100644 rtemsbsd/include/rtems/bsd/local/opt_capsicum.h create mode 100644 rtemsbsd/include/rtems/bsd/local/opt_ofed.h create mode 100644 rtemsbsd/include/rtems/bsd/local/opt_pcbgroup.h create mode 100644 rtemsbsd/include/sys/_stdint.h delete mode 100644 rtemsbsd/include/sys/cpuset.h create mode 100644 rtemsbsd/include/sys/rangelock.h delete mode 100644 rtemsbsd/include/sys/vnode.h (limited to 'rtemsbsd') diff --git a/rtemsbsd/include/cam/cam_xpt_internal.h b/rtemsbsd/include/cam/cam_xpt_internal.h new file mode 100644 index 00000000..936ffd88 --- /dev/null +++ b/rtemsbsd/include/cam/cam_xpt_internal.h @@ -0,0 +1 @@ +/* EMPTY */ diff --git a/rtemsbsd/include/cam/cam_xpt_periph.h b/rtemsbsd/include/cam/cam_xpt_periph.h new file mode 100644 index 00000000..936ffd88 --- /dev/null +++ b/rtemsbsd/include/cam/cam_xpt_periph.h @@ -0,0 +1 @@ +/* EMPTY */ diff --git a/rtemsbsd/include/cam/scsi/smp_all.h b/rtemsbsd/include/cam/scsi/smp_all.h new file mode 100644 index 00000000..936ffd88 --- /dev/null +++ b/rtemsbsd/include/cam/scsi/smp_all.h @@ -0,0 +1 @@ +/* EMPTY */ diff --git a/rtemsbsd/include/machine/_align.h b/rtemsbsd/include/machine/_align.h new file mode 100644 index 00000000..298e5733 --- /dev/null +++ b/rtemsbsd/include/machine/_align.h @@ -0,0 +1 @@ +#include diff --git a/rtemsbsd/include/machine/rtems-bsd-syscall-api.h b/rtemsbsd/include/machine/rtems-bsd-syscall-api.h index 0358df6b..18b7016b 100644 --- a/rtemsbsd/include/machine/rtems-bsd-syscall-api.h +++ b/rtemsbsd/include/machine/rtems-bsd-syscall-api.h @@ -90,15 +90,17 @@ ssize_t sendto(int, const void *, size_t, int, const struct sockaddr *, socklen_ ssize_t sendmsg(int, const struct msghdr *, int); +int setfib(int); + int setsockopt(int, int, int, const void *, socklen_t); int shutdown(int, int); int socket(int, int, int); -int sysctl(int *, u_int, void *, size_t *, void *, size_t); +int sysctl(const int *, u_int, void *, size_t *, const void *, size_t); -int sysctlbyname(const char *, void *, size_t *, void *, size_t); +int sysctlbyname(const char *, void *, size_t *, const void *, size_t); int sysctlnametomib(const char *, int *, size_t *); diff --git a/rtemsbsd/include/rtems/bsd/local/bus_if.h b/rtemsbsd/include/rtems/bsd/local/bus_if.h index a0204db3..c95c7015 100644 --- a/rtemsbsd/include/rtems/bsd/local/bus_if.h +++ b/rtemsbsd/include/rtems/bsd/local/bus_if.h @@ -139,6 +139,27 @@ static __inline int BUS_WRITE_IVAR(device_t _dev, device_t _child, int _indx, return ((bus_write_ivar_t *) _m)(_dev, _child, _indx, _value); } +/** @brief Unique descriptor for the BUS_CHILD_DELETED() method */ +extern struct kobjop_desc bus_child_deleted_desc; +/** @brief A function implementing the BUS_CHILD_DELETED() method */ +typedef void bus_child_deleted_t(device_t _dev, device_t _child); +/** + * @brief Notify a bus that a child was deleted + * + * Called at the beginning of device_delete_child() to allow the parent + * to teardown any bus-specific state for the child. + * + * @param _dev the device whose child is being deleted + * @param _child the child device which is being deleted + */ + +static __inline void BUS_CHILD_DELETED(device_t _dev, device_t _child) +{ + kobjop_t _m; + KOBJOPLOOKUP(((kobj_t)_dev)->ops,bus_child_deleted); + ((bus_child_deleted_t *) _m)(_dev, _child); +} + /** @brief Unique descriptor for the BUS_CHILD_DETACHED() method */ extern struct kobjop_desc bus_child_detached_desc; /** @brief A function implementing the BUS_CHILD_DETACHED() method */ diff --git a/rtemsbsd/include/rtems/bsd/local/miidevs.h b/rtemsbsd/include/rtems/bsd/local/miidevs.h index f0f42d41..66cb2ac8 100644 --- a/rtemsbsd/include/rtems/bsd/local/miidevs.h +++ b/rtemsbsd/include/rtems/bsd/local/miidevs.h @@ -6,7 +6,7 @@ * generated from: * FreeBSD */ -/*$NetBSD: miidevs,v 1.6 1999/05/14 11:37:30 drochner Exp $*/ +/*$NetBSD: miidevs,v 1.105 2011/11/25 23:28:14 jakllsch Exp $*/ /*- * Copyright (c) 1998, 1999 The NetBSD Foundation, Inc. @@ -42,69 +42,77 @@ * List of known MII OUIs. * For a complete list see http://standards.ieee.org/regauth/oui/ * - * XXX Vendors do obviously not agree how OUIs (18 bit) are mapped - * to the 16 bits available in the id registers. The MII_OUI() macro - * in "mii.h" reflects the most obvious way. If a vendor uses a - * different mapping, an "xx" prefixed OUI is defined here which is - * mangled accordingly to compensate. + * XXX Vendors do obviously not agree how OUIs (24 bit) are mapped + * to the 22 bits available in the id registers. + * IEEE 802.3u-1995, subclause 22.2.4.3.1, figure 22-12, depicts the right + * mapping; the bit positions are defined in IEEE 802-1990, figure 5.2. + * (There is a formal 802.3 interpretation, number 1-07/98 of July 09 1998, + * about this.) + * The MII_OUI() macro in "mii.h" reflects this. + * If a vendor uses a different mapping, an "xx" prefixed OUI is defined here + * which is mangled accordingly to compensate. */ -#define MII_OUI_AGERE 0x00a0bc /* Agere Systems */ +#define MII_OUI_AGERE 0x00053d /* Agere Systems */ #define MII_OUI_ALTIMA 0x0010a9 /* Altima Communications */ #define MII_OUI_AMD 0x00001a /* Advanced Micro Devices */ -#define MII_OUI_ASIX 0x00602e /* Asix Semiconductor */ -#define MII_OUI_ATHEROS 0x001374 /* Atheros Communications */ #define MII_OUI_BROADCOM 0x001018 /* Broadcom Corporation */ #define MII_OUI_BROADCOM2 0x000af7 /* Broadcom Corporation */ +#define MII_OUI_BROADCOM3 0x001be9 /* Broadcom Corporation */ #define MII_OUI_CICADA 0x0003F1 /* Cicada Semiconductor */ #define MII_OUI_DAVICOM 0x00606e /* Davicom Semiconductor */ +#define MII_OUI_ENABLESEMI 0x0010dd /* Enable Semiconductor */ #define MII_OUI_ICPLUS 0x0090c3 /* IC Plus Corp. */ #define MII_OUI_ICS 0x00a0be /* Integrated Circuit Systems */ -#define MII_OUI_INTEL 0x00aa00 /* Intel */ -#define MII_OUI_JATO 0x00e083 /* Jato Technologies */ -#define MII_OUI_JMICRON 0x001b8c /* JMicron Technologies */ +#define MII_OUI_INTEL 0x00aa00 /* Intel Corporation */ +#define MII_OUI_JMICRON 0x00d831 /* JMicron Technologies */ #define MII_OUI_LEVEL1 0x00207b /* Level 1 */ +#define MII_OUI_MARVELL 0x005043 /* Marvell Semiconductor */ +#define MII_OUI_MYSON 0x00c0b4 /* Myson Technology */ #define MII_OUI_NATSEMI 0x080017 /* National Semiconductor */ +#define MII_OUI_PMCSIERRA 0x00e004 /* PMC-Sierra */ #define MII_OUI_QUALSEMI 0x006051 /* Quality Semiconductor */ -#define MII_OUI_RDC 0x000bb4 /* RDC Semiconductor */ -#define MII_OUI_REALTEK 0x000020 /* RealTek Semicondctor */ -#define MII_OUI_SEEQ 0x00a07d /* Seeq */ +#define MII_OUI_RDC 0x00d02d /* RDC Semiconductor */ +#define MII_OUI_REALTEK 0x00e04c /* RealTek Semicondctor */ +#define MII_OUI_SEEQ 0x00a07d /* Seeq Technology */ #define MII_OUI_SIS 0x00e006 /* Silicon Integrated Systems */ -#define MII_OUI_SMSC 0x0005be /* SMSC */ -#define MII_OUI_TDK 0x00c039 /* TDK */ #define MII_OUI_TI 0x080028 /* Texas Instruments */ -#define MII_OUI_VITESSE 0x0001c1 /* Vitesse Semiconductor */ +#define MII_OUI_TSC 0x00c039 /* TDK Semiconductor */ #define MII_OUI_XAQTI 0x00e0ae /* XaQti Corp. */ -#define MII_OUI_MARVELL 0x005043 /* Marvell Semiconductor */ -#define MII_OUI_xxMARVELL 0x000ac2 /* Marvell Semiconductor */ -/* in the 79c873, AMD uses another OUI (which matches Davicom!) */ -#define MII_OUI_xxAMD 0x00606e /* Advanced Micro Devices */ +/* Some Intel 82553's use an alternative OUI. */ +#define MII_OUI_xxINTEL 0x001f00 /* Intel Corporation */ -/* Intel 82553 A/B steppings */ -#define MII_OUI_xxINTEL 0x00f800 /* Intel */ +/* Some VIA 6122's use an alternative OUI. */ +#define MII_OUI_xxCICADA 0x00c08f /* Cicada Semiconductor */ -/* some vendors have the bits swapped within bytes - (ie, ordered as on the wire) */ -#define MII_OUI_xxALTIMA 0x000895 /* Altima Communications */ +/* bad bitorder (bits "g" and "h" (= MSBs byte 1) lost) */ +#define MII_OUI_yyAMD 0x000058 /* Advanced Micro Devices */ +#define MII_OUI_xxATHEROS 0x00c82e /* Atheros Communications */ #define MII_OUI_xxBROADCOM 0x000818 /* Broadcom Corporation */ #define MII_OUI_xxBROADCOM_ALT1 0x0050ef /* Broadcom Corporation */ -#define MII_OUI_xxBROADCOM_ALT2 0x00d897 /* Broadcom Corporation */ -#define MII_OUI_xxICS 0x00057d /* Integrated Circuit Systems */ -#define MII_OUI_xxSEEQ 0x0005be /* Seeq */ -#define MII_OUI_xxSIS 0x000760 /* Silicon Integrated Systems */ -#define MII_OUI_xxTI 0x100014 /* Texas Instruments */ -#define MII_OUI_xxXAQTI 0x350700 /* XaQti Corp. */ +#define MII_OUI_xxDAVICOM 0x000676 /* Davicom Semiconductor */ +#define MII_OUI_yyINTEL 0x005500 /* Intel Corporation */ +#define MII_OUI_xxJATO 0x0007c1 /* Jato Technologies */ +#define MII_OUI_xxMARVELL 0x000ac2 /* Marvell Semiconductor */ +#define MII_OUI_xxMYSON 0x00032d /* Myson Technology */ +#define MII_OUI_xxNATSEMI 0x1000e8 /* National Semiconductor */ +#define MII_OUI_xxQUALSEMI 0x00068a /* Quality Semiconductor */ +#define MII_OUI_xxTSC 0x00039c /* TDK Semiconductor */ +#define MII_OUI_xxVITESSE 0x008083 /* Vitesse Semiconductor */ -/* Level 1 is completely different - from right to left. - (Two bits get lost in the third OUI byte.) */ -#define MII_OUI_xxLEVEL1 0x1e0400 /* Level 1 */ +/* bad byteorder (bits "q" and "r" (= LSBs byte 3) lost) */ +#define MII_OUI_xxLEVEL1 0x782000 /* Level 1 */ +#define MII_OUI_xxXAQTI 0xace000 /* XaQti Corp. */ /* Don't know what's going on here. */ -#define MII_OUI_xxDAVICOM 0x006040 /* Davicom Semiconductor */ - -/* This is the OUI of the gigE PHY in the RealTek 8169S/8110S/8211B chips */ -#define MII_OUI_xxREALTEK 0x000732 /* */ +#define MII_OUI_xxASIX 0x000674 /* Asix Semiconductor */ +#define MII_OUI_yyDAVICOM 0x000602 /* Davicom Semiconductor */ +#define MII_OUI_xxICPLUS 0x0009c3 /* IC Plus Corp. */ +#define MII_OUI_xxPMCSIERRA 0x0009c0 /* PMC-Sierra */ +#define MII_OUI_xxPMCSIERRA2 0x009057 /* PMC-Sierra */ +#define MII_OUI_xxREALTEK 0x000732 /* RealTek Semicondctor */ +#define MII_OUI_yyREALTEK 0x000004 /* RealTek Semicondctor */ /* * List of known models. Grouped by oui. @@ -117,164 +125,208 @@ #define MII_STR_AGERE_ET1011C "ET1011C 10/100/1000baseT PHY" /* Altima Communications PHYs */ -#define MII_MODEL_xxALTIMA_AC101 0x0021 -#define MII_STR_xxALTIMA_AC101 "AC101 10/100 media interface" -#define MII_MODEL_xxALTIMA_AC101L 0x0012 -#define MII_STR_xxALTIMA_AC101L "AC101L 10/100 media interface" -#define MII_MODEL_xxALTIMA_ACXXX 0x0001 -#define MII_STR_xxALTIMA_ACXXX "ACXXX 10/100 media interface" +#define MII_MODEL_ALTIMA_ACXXX 0x0001 +#define MII_STR_ALTIMA_ACXXX "ACXXX 10/100 media interface" +#define MII_MODEL_ALTIMA_AC101L 0x0012 +#define MII_STR_ALTIMA_AC101L "AC101L 10/100 media interface" +#define MII_MODEL_ALTIMA_AC101 0x0021 +#define MII_STR_ALTIMA_AC101 "AC101 10/100 media interface" +/* AMD Am79C87[45] have ALTIMA OUI */ +#define MII_MODEL_ALTIMA_Am79C875 0x0014 +#define MII_STR_ALTIMA_Am79C875 "Am79C875 10/100 media interface" +#define MII_MODEL_ALTIMA_Am79C874 0x0021 +#define MII_STR_ALTIMA_Am79C874 "Am79C874 10/100 media interface" /* Advanced Micro Devices PHYs */ -#define MII_MODEL_AMD_79c973phy 0x0036 -#define MII_STR_AMD_79c973phy "Am79c973 internal PHY" -#define MII_MODEL_AMD_79c978 0x0039 -#define MII_STR_AMD_79c978 "Am79c978 HomePNA PHY" -#define MII_MODEL_xxAMD_79C873 0x0000 -#define MII_STR_xxAMD_79C873 "Am79C873/DM9101 10/100 media interface" - -/* Asix semiconductor PHYs. */ -#define MII_MODEL_ASIX_AX88X9X 0x0031 -#define MII_STR_ASIX_AX88X9X "Ax88x9x internal PHY" - -/* Atheros Communications/Attansic PHYs. */ -#define MII_MODEL_ATHEROS_F1 0x0001 -#define MII_STR_ATHEROS_F1 "Atheros F1 10/100/1000 PHY" -#define MII_MODEL_ATHEROS_F2 0x0002 -#define MII_STR_ATHEROS_F2 "Atheros F2 10/100 PHY" -#define MII_MODEL_ATHEROS_F1_7 0x0007 -#define MII_STR_ATHEROS_F1_7 "Atheros F1 10/100/1000 PHY" - -/* Broadcom Corp. PHYs. */ -#define MII_MODEL_BROADCOM_3C905B 0x0012 -#define MII_STR_BROADCOM_3C905B "3c905B 10/100 internal PHY" -#define MII_MODEL_BROADCOM_3C905C 0x0017 -#define MII_STR_BROADCOM_3C905C "3c905C 10/100 internal PHY" -#define MII_MODEL_BROADCOM_BCM5201 0x0021 -#define MII_STR_BROADCOM_BCM5201 "BCM5201 10/100baseTX PHY" -#define MII_MODEL_BROADCOM_BCM5214 0x0028 -#define MII_STR_BROADCOM_BCM5214 "BCM5214 Quad 10/100 PHY" -#define MII_MODEL_BROADCOM_BCM5221 0x001e -#define MII_STR_BROADCOM_BCM5221 "BCM5221 10/100baseTX PHY" -#define MII_MODEL_BROADCOM_BCM5222 0x0032 -#define MII_STR_BROADCOM_BCM5222 "BCM5222 Dual 10/100 PHY" -#define MII_MODEL_BROADCOM_BCM4401 0x0036 -#define MII_STR_BROADCOM_BCM4401 "BCM4401 10/100baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5400 0x0004 -#define MII_STR_xxBROADCOM_BCM5400 "Broadcom 1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5401 0x0005 -#define MII_STR_xxBROADCOM_BCM5401 "BCM5401 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5411 0x0007 -#define MII_STR_xxBROADCOM_BCM5411 "BCM5411 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5754 0x000e -#define MII_STR_xxBROADCOM_BCM5754 "BCM5754 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5752 0x0010 -#define MII_STR_xxBROADCOM_BCM5752 "BCM5752 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5701 0x0011 -#define MII_STR_xxBROADCOM_BCM5701 "BCM5701 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5706 0x0015 -#define MII_STR_xxBROADCOM_BCM5706 "BCM5706 10/100/1000baseTX/SX PHY" -#define MII_MODEL_xxBROADCOM_BCM5703 0x0016 -#define MII_STR_xxBROADCOM_BCM5703 "BCM5703 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5704 0x0019 -#define MII_STR_xxBROADCOM_BCM5704 "BCM5704 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5705 0x001a -#define MII_STR_xxBROADCOM_BCM5705 "BCM5705 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5750 0x0018 -#define MII_STR_xxBROADCOM_BCM5750 "BCM5750 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM54K2 0x002e -#define MII_STR_xxBROADCOM_BCM54K2 "BCM54K2 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5714 0x0034 -#define MII_STR_xxBROADCOM_BCM5714 "BCM5714 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5780 0x0035 -#define MII_STR_xxBROADCOM_BCM5780 "BCM5780 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_BCM5708C 0x0036 -#define MII_STR_xxBROADCOM_BCM5708C "BCM5708C 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5755 0x000c -#define MII_STR_xxBROADCOM_ALT1_BCM5755 "BCM5755 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5787 0x000e -#define MII_STR_xxBROADCOM_ALT1_BCM5787 "BCM5787 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5708S 0x0015 -#define MII_STR_xxBROADCOM_ALT1_BCM5708S "BCM5708S 1000/2500BaseSX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5709CAX 0x002c -#define MII_STR_xxBROADCOM_ALT1_BCM5709CAX "BCM5709C(AX) 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5722 0x002d -#define MII_STR_xxBROADCOM_ALT1_BCM5722 "BCM5722 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5784 0x003a -#define MII_STR_xxBROADCOM_ALT1_BCM5784 "BCM5784 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5709C 0x003c -#define MII_STR_xxBROADCOM_ALT1_BCM5709C "BCM5709C 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5761 0x003d -#define MII_STR_xxBROADCOM_ALT1_BCM5761 "BCM5761 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT1_BCM5709S 0x003f -#define MII_STR_xxBROADCOM_ALT1_BCM5709S "BCM5709S/5720S 1000/2500baseSX PHY" -#define MII_MODEL_xxBROADCOM_ALT2_BCM57780 0x0019 -#define MII_STR_xxBROADCOM_ALT2_BCM57780 "BCM57780 1000BASE-T media interface" -#define MII_MODEL_xxBROADCOM_ALT2_BCM5717C 0x0020 -#define MII_STR_xxBROADCOM_ALT2_BCM5717C "BCM5717C 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT2_BCM5719C 0x0022 -#define MII_STR_xxBROADCOM_ALT2_BCM5719C "BCM5719C 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT2_BCM57765 0x0024 -#define MII_STR_xxBROADCOM_ALT2_BCM57765 "BCM57765 10/100/1000baseTX PHY" -#define MII_MODEL_xxBROADCOM_ALT2_BCM5720C 0x0036 -#define MII_STR_xxBROADCOM_ALT2_BCM5720C "BCM5720C 10/100/1000baseTX PHY" +/* see Davicom DM9101 for Am79C873 */ +#define MII_MODEL_yyAMD_79C972_10T 0x0001 +#define MII_STR_yyAMD_79C972_10T "Am79C972 internal 10BASE-T interface" +#define MII_MODEL_yyAMD_79c973phy 0x0036 +#define MII_STR_yyAMD_79c973phy "Am79C973 internal 10/100 media interface" +#define MII_MODEL_yyAMD_79c901 0x0037 +#define MII_STR_yyAMD_79c901 "Am79C901 10BASE-T interface" +#define MII_MODEL_yyAMD_79c901home 0x0039 +#define MII_STR_yyAMD_79c901home "Am79C901 HomePNA 1.0 interface" + +/* Atheros Communications/Attansic PHYs */ +#define MII_MODEL_xxATHEROS_F1 0x0001 +#define MII_STR_xxATHEROS_F1 "Atheros F1 10/100/1000 PHY" +#define MII_MODEL_xxATHEROS_F2 0x0002 +#define MII_STR_xxATHEROS_F2 "Atheros F2 10/100 PHY" +#define MII_MODEL_xxATHEROS_F1_7 0x0007 +#define MII_STR_xxATHEROS_F1_7 "Atheros F1 10/100/1000 PHY" + +/* Asix semiconductor PHYs */ +#define MII_MODEL_xxASIX_AX88X9X 0x0031 +#define MII_STR_xxASIX_AX88X9X "Ax88x9x internal PHY" + +/* Broadcom Corp. PHYs */ +#define MII_MODEL_xxBROADCOM_3C905B 0x0012 +#define MII_STR_xxBROADCOM_3C905B "Broadcom 3c905B internal PHY" +#define MII_MODEL_xxBROADCOM_3C905C 0x0017 +#define MII_STR_xxBROADCOM_3C905C "Broadcom 3c905C internal PHY" +#define MII_MODEL_xxBROADCOM_BCM5201 0x0021 +#define MII_STR_xxBROADCOM_BCM5201 "BCM5201 10/100 media interface" +#define MII_MODEL_xxBROADCOM_BCM5214 0x0028 +#define MII_STR_xxBROADCOM_BCM5214 "BCM5214 Quad 10/100 media interface" +#define MII_MODEL_xxBROADCOM_BCM5221 0x001e +#define MII_STR_xxBROADCOM_BCM5221 "BCM5221 10/100 media interface" +#define MII_MODEL_xxBROADCOM_BCM5222 0x0032 +#define MII_STR_xxBROADCOM_BCM5222 "BCM5222 Dual 10/100 media interface" +#define MII_MODEL_xxBROADCOM_BCM4401 0x0036 +#define MII_STR_xxBROADCOM_BCM4401 "BCM4401 10/100 media interface" +#define MII_MODEL_xxBROADCOM_BCM5365 0x0037 +#define MII_STR_xxBROADCOM_BCM5365 "BCM5365 10/100 5-port PHY switch" +#define MII_MODEL_BROADCOM_BCM5400 0x0004 +#define MII_STR_BROADCOM_BCM5400 "BCM5400 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5401 0x0005 +#define MII_STR_BROADCOM_BCM5401 "BCM5401 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5411 0x0007 +#define MII_STR_BROADCOM_BCM5411 "BCM5411 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5464 0x000b +#define MII_STR_BROADCOM_BCM5464 "BCM5464 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5461 0x000c +#define MII_STR_BROADCOM_BCM5461 "BCM5461 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5462 0x000d +#define MII_STR_BROADCOM_BCM5462 "BCM5462 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5421 0x000e +#define MII_STR_BROADCOM_BCM5421 "BCM5421 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5752 0x0010 +#define MII_STR_BROADCOM_BCM5752 "BCM5752 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5701 0x0011 +#define MII_STR_BROADCOM_BCM5701 "BCM5701 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5706 0x0015 +#define MII_STR_BROADCOM_BCM5706 "BCM5706 1000BASE-T/SX media interface" +#define MII_MODEL_BROADCOM_BCM5703 0x0016 +#define MII_STR_BROADCOM_BCM5703 "BCM5703 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5750 0x0018 +#define MII_STR_BROADCOM_BCM5750 "BCM5750 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5704 0x0019 +#define MII_STR_BROADCOM_BCM5704 "BCM5704 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5705 0x001a +#define MII_STR_BROADCOM_BCM5705 "BCM5705 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM54K2 0x002e +#define MII_STR_BROADCOM_BCM54K2 "BCM54K2 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5714 0x0034 +#define MII_STR_BROADCOM_BCM5714 "BCM5714 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5780 0x0035 +#define MII_STR_BROADCOM_BCM5780 "BCM5780 1000BASE-T media interface" +#define MII_MODEL_BROADCOM_BCM5708C 0x0036 +#define MII_STR_BROADCOM_BCM5708C "BCM5708C 1000BASE-T media interface" +#define MII_MODEL_BROADCOM2_BCM5325 0x0003 +#define MII_STR_BROADCOM2_BCM5325 "BCM5325 10/100 5-port PHY switch" #define MII_MODEL_BROADCOM2_BCM5906 0x0004 -#define MII_STR_BROADCOM2_BCM5906 "BCM5906 10/100baseTX PHY" +#define MII_STR_BROADCOM2_BCM5906 "BCM5906 10/100baseTX media interface" +#define MII_MODEL_BROADCOM2_BCM5481 0x000a +#define MII_STR_BROADCOM2_BCM5481 "BCM5481 1000BASE-T media interface" +#define MII_MODEL_BROADCOM2_BCM5482 0x000b +#define MII_STR_BROADCOM2_BCM5482 "BCM5482 1000BASE-T media interface" +#define MII_MODEL_BROADCOM2_BCM5755 0x000c +#define MII_STR_BROADCOM2_BCM5755 "BCM5755 1000BASE-T media interface" +#define MII_MODEL_BROADCOM2_BCM5754 0x000e +#define MII_STR_BROADCOM2_BCM5754 "BCM5754/5787 1000BASE-T media interface" +#define MII_MODEL_BROADCOM2_BCM5708S 0x0015 +#define MII_STR_BROADCOM2_BCM5708S "BCM5708S 1000/2500baseSX PHY" +#define MII_MODEL_BROADCOM2_BCM5785 0x0016 +#define MII_STR_BROADCOM2_BCM5785 "BCM5785 1000BASE-T media interface" +#define MII_MODEL_BROADCOM2_BCM5709CAX 0x002c +#define MII_STR_BROADCOM2_BCM5709CAX "BCM5709CAX 10/100/1000baseT PHY" +#define MII_MODEL_BROADCOM2_BCM5722 0x002d +#define MII_STR_BROADCOM2_BCM5722 "BCM5722 1000BASE-T media interface" +#define MII_MODEL_BROADCOM2_BCM5784 0x003a +#define MII_STR_BROADCOM2_BCM5784 "BCM5784 10/100/1000baseT PHY" +#define MII_MODEL_BROADCOM2_BCM5709C 0x003c +#define MII_STR_BROADCOM2_BCM5709C "BCM5709 10/100/1000baseT PHY" +#define MII_MODEL_BROADCOM2_BCM5761 0x003d +#define MII_STR_BROADCOM2_BCM5761 "BCM5761 10/100/1000baseT PHY" +#define MII_MODEL_BROADCOM2_BCM5709S 0x003f +#define MII_STR_BROADCOM2_BCM5709S "BCM5709S/5720S 1000/2500baseSX PHY" +#define MII_MODEL_BROADCOM3_BCM57780 0x0019 +#define MII_STR_BROADCOM3_BCM57780 "BCM57780 1000BASE-T media interface" +#define MII_MODEL_BROADCOM3_BCM5717C 0x0020 +#define MII_STR_BROADCOM3_BCM5717C "BCM5717C 1000BASE-T media interface" +#define MII_MODEL_BROADCOM3_BCM5719C 0x0022 +#define MII_STR_BROADCOM3_BCM5719C "BCM5719C 1000BASE-T media interface" +#define MII_MODEL_BROADCOM3_BCM57765 0x0024 +#define MII_STR_BROADCOM3_BCM57765 "BCM57765 1000BASE-T media interface" +#define MII_MODEL_BROADCOM3_BCM5720C 0x0036 +#define MII_STR_BROADCOM3_BCM5720C "BCM5720C 1000BASE-T media interface" +#define MII_MODEL_xxBROADCOM_ALT1_BCM5906 0x0004 +#define MII_STR_xxBROADCOM_ALT1_BCM5906 "BCM5906 10/100baseTX media interface" /* Cicada Semiconductor PHYs (now owned by Vitesse?) */ -#define MII_MODEL_CICADA_CS8201 0x0001 -#define MII_STR_CICADA_CS8201 "Cicada CS8201 10/100/1000TX PHY" -#define MII_MODEL_CICADA_CS8204 0x0004 -#define MII_STR_CICADA_CS8204 "Cicada CS8204 10/100/1000TX PHY" -#define MII_MODEL_CICADA_VSC8211 0x000b -#define MII_STR_CICADA_VSC8211 "Cicada VSC8211 10/100/1000TX PHY" -#define MII_MODEL_CICADA_CS8201A 0x0020 -#define MII_STR_CICADA_CS8201A "Cicada CS8201 10/100/1000TX PHY" -#define MII_MODEL_CICADA_CS8201B 0x0021 -#define MII_STR_CICADA_CS8201B "Cicada CS8201 10/100/1000TX PHY" -#define MII_MODEL_CICADA_CS8244 0x002c -#define MII_STR_CICADA_CS8244 "Cicada CS8244 10/100/1000TX PHY" -#define MII_MODEL_VITESSE_VSC8601 0x0002 -#define MII_STR_VITESSE_VSC8601 "Vitesse VSC8601 10/100/1000TX PHY" +#define MII_MODEL_xxCICADA_CS8201 0x0001 +#define MII_STR_xxCICADA_CS8201 "Cicada CS8201 10/100/1000TX PHY" +#define MII_MODEL_xxCICADA_CS8204 0x0004 +#define MII_STR_xxCICADA_CS8204 "Cicada CS8204 10/100/1000TX PHY" +#define MII_MODEL_xxCICADA_VSC8211 0x000b +#define MII_STR_xxCICADA_VSC8211 "Cicada VSC8211 10/100/1000TX PHY" +#define MII_MODEL_xxCICADA_CS8201A 0x0020 +#define MII_STR_xxCICADA_CS8201A "Cicada CS8201 10/100/1000TX PHY" +#define MII_MODEL_xxCICADA_CS8201B 0x0021 +#define MII_STR_xxCICADA_CS8201B "Cicada CS8201 10/100/1000TX PHY" +#define MII_MODEL_xxCICADA_CS8244 0x002c +#define MII_STR_xxCICADA_CS8244 "Cicada CS8244 10/100/1000TX PHY" +#define MII_MODEL_xxVITESSE_VSC8601 0x0002 +#define MII_STR_xxVITESSE_VSC8601 "Vitesse VSC8601 10/100/1000TX PHY" /* Davicom Semiconductor PHYs */ -#define MII_MODEL_DAVICOM_DM9102 0x0004 -#define MII_STR_DAVICOM_DM9102 "DM9102 10/100 media interface" +/* AMD Am79C873 seems to be a relabeled DM9101 */ #define MII_MODEL_xxDAVICOM_DM9101 0x0000 -#define MII_STR_xxDAVICOM_DM9101 "DM9101 10/100 media interface" - -/* Integrated Circuit Systems PHYs */ -#define MII_MODEL_xxICS_1889 0x0001 -#define MII_STR_xxICS_1889 "ICS1889 10/100 media interface" -#define MII_MODEL_xxICS_1890 0x0002 -#define MII_STR_xxICS_1890 "ICS1890 10/100 media interface" -#define MII_MODEL_xxICS_1892 0x0003 -#define MII_STR_xxICS_1892 "ICS1892 10/100 media interface" -#define MII_MODEL_xxICS_1893 0x0004 -#define MII_STR_xxICS_1893 "ICS1893 10/100 media interface" +#define MII_STR_xxDAVICOM_DM9101 "DM9101 (AMD Am79C873) 10/100 media interface" +#define MII_MODEL_xxDAVICOM_DM9102 0x0004 +#define MII_STR_xxDAVICOM_DM9102 "DM9102 10/100 media interface" +#define MII_MODEL_yyDAVICOM_DM9101 0x0000 +#define MII_STR_yyDAVICOM_DM9101 "DM9101 10/100 media interface" /* IC Plus Corp. PHYs */ -#define MII_MODEL_ICPLUS_IP101 0x0005 -#define MII_STR_ICPLUS_IP101 "IC Plus 10/100 PHY" -#define MII_MODEL_ICPLUS_IP1000A 0x0008 -#define MII_STR_ICPLUS_IP1000A "IC Plus 10/100/1000 media interface" -#define MII_MODEL_ICPLUS_IP1001 0x0019 -#define MII_STR_ICPLUS_IP1001 "IC Plus IP1001 10/100/1000 media interface" - -/* Intel PHYs */ -#define MII_MODEL_xxINTEL_I82553AB 0x0000 -#define MII_STR_xxINTEL_I82553AB "i83553 10/100 media interface" -#define MII_MODEL_INTEL_I82555 0x0015 -#define MII_STR_INTEL_I82555 "i82555 10/100 media interface" -#define MII_MODEL_INTEL_I82562EM 0x0032 -#define MII_STR_INTEL_I82562EM "i82562EM 10/100 media interface" -#define MII_MODEL_INTEL_I82562ET 0x0033 -#define MII_STR_INTEL_I82562ET "i82562ET 10/100 media interface" -#define MII_MODEL_INTEL_I82553C 0x0035 -#define MII_STR_INTEL_I82553C "i82553 10/100 media interface" +#define MII_MODEL_xxICPLUS_IP101 0x0005 +#define MII_STR_xxICPLUS_IP101 "IP101 10/100 PHY" +#define MII_MODEL_xxICPLUS_IP1000A 0x0008 +#define MII_STR_xxICPLUS_IP1000A "IP100A 10/100/1000 media interface" +#define MII_MODEL_xxICPLUS_IP1001 0x0019 +#define MII_STR_xxICPLUS_IP1001 "IP1001 10/100/1000 media interface" + +/* Integrated Circuit Systems PHYs */ +#define MII_MODEL_ICS_1889 0x0001 +#define MII_STR_ICS_1889 "ICS1889 10/100 media interface" +#define MII_MODEL_ICS_1890 0x0002 +#define MII_STR_ICS_1890 "ICS1890 10/100 media interface" +#define MII_MODEL_ICS_1892 0x0003 +#define MII_STR_ICS_1892 "ICS1892 10/100 media interface" +#define MII_MODEL_ICS_1893 0x0004 +#define MII_STR_ICS_1893 "ICS1893 10/100 media interface" + +/* Intel Corporation PHYs */ +#define MII_MODEL_xxINTEL_I82553 0x0000 +#define MII_STR_xxINTEL_I82553 "i82553 10/100 media interface" +#define MII_MODEL_yyINTEL_I82555 0x0015 +#define MII_STR_yyINTEL_I82555 "i82555 10/100 media interface" +#define MII_MODEL_yyINTEL_I82562EH 0x0017 +#define MII_STR_yyINTEL_I82562EH "i82562EH HomePNA interface" +#define MII_MODEL_yyINTEL_I82562G 0x0031 +#define MII_STR_yyINTEL_I82562G "i82562G 10/100 media interface" +#define MII_MODEL_yyINTEL_I82562EM 0x0032 +#define MII_STR_yyINTEL_I82562EM "i82562EM 10/100 media interface" +#define MII_MODEL_yyINTEL_I82562ET 0x0033 +#define MII_STR_yyINTEL_I82562ET "i82562ET 10/100 media interface" +#define MII_MODEL_yyINTEL_I82553 0x0035 +#define MII_STR_yyINTEL_I82553 "i82553 10/100 media interface" +#define MII_MODEL_yyINTEL_I82566 0x0039 +#define MII_STR_yyINTEL_I82566 "i82566 10/100/1000 media interface" +#define MII_MODEL_INTEL_I82577 0x0005 +#define MII_STR_INTEL_I82577 "i82577 10/100/1000 media interface" +#define MII_MODEL_INTEL_I82579 0x0009 +#define MII_STR_INTEL_I82579 "i82579 10/100/1000 media interface" +#define MII_MODEL_xxMARVELL_I82563 0x000a +#define MII_STR_xxMARVELL_I82563 "i82563 10/100/1000 media interface" + +#define MII_MODEL_yyINTEL_IGP01E1000 0x0038 +#define MII_STR_yyINTEL_IGP01E1000 "Intel IGP01E1000 Gigabit PHY" /* Jato Technologies PHYs */ -#define MII_MODEL_JATO_BASEX 0x0000 -#define MII_STR_JATO_BASEX "Jato 1000baseX media interface" +#define MII_MODEL_xxJATO_BASEX 0x0000 +#define MII_STR_xxJATO_BASEX "Jato 1000baseX media interface" /* JMicron Technologies PHYs */ #define MII_MODEL_JMICRON_JMP211 0x0021 @@ -285,109 +337,147 @@ /* Level 1 PHYs */ #define MII_MODEL_xxLEVEL1_LXT970 0x0000 #define MII_STR_xxLEVEL1_LXT970 "LXT970 10/100 media interface" +#define MII_MODEL_LEVEL1_LXT971 0x000e +#define MII_STR_LEVEL1_LXT971 "LXT971/2 10/100 media interface" +#define MII_MODEL_LEVEL1_LXT973 0x0021 +#define MII_STR_LEVEL1_LXT973 "LXT973 10/100 Dual PHY" +#define MII_MODEL_LEVEL1_LXT974 0x0004 +#define MII_STR_LEVEL1_LXT974 "LXT974 10/100 Quad PHY" +#define MII_MODEL_LEVEL1_LXT975 0x0005 +#define MII_STR_LEVEL1_LXT975 "LXT975 10/100 Quad PHY" +#define MII_MODEL_LEVEL1_LXT1000_OLD 0x0003 +#define MII_STR_LEVEL1_LXT1000_OLD "LXT1000 1000BASE-T media interface" +#define MII_MODEL_LEVEL1_LXT1000 0x000c +#define MII_STR_LEVEL1_LXT1000 "LXT1000 1000BASE-T media interface" + +/* Marvell Semiconductor PHYs */ +#define MII_MODEL_xxMARVELL_E1000 0x0000 +#define MII_STR_xxMARVELL_E1000 "Marvell 88E1000 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1011 0x0002 +#define MII_STR_xxMARVELL_E1011 "Marvell 88E1011 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1000_3 0x0003 +#define MII_STR_xxMARVELL_E1000_3 "Marvell 88E1000 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1000S 0x0004 +#define MII_STR_xxMARVELL_E1000S "Marvell 88E1000S Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1000_5 0x0005 +#define MII_STR_xxMARVELL_E1000_5 "Marvell 88E1000 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1101 0x0006 +#define MII_STR_xxMARVELL_E1101 "Marvell 88E1101 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E3082 0x0008 +#define MII_STR_xxMARVELL_E3082 "Marvell 88E3082 10/100 Fast Ethernet PHY" +#define MII_MODEL_xxMARVELL_E1112 0x0009 +#define MII_STR_xxMARVELL_E1112 "Marvell 88E1112 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1149 0x000b +#define MII_STR_xxMARVELL_E1149 "Marvell 88E1149 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1111 0x000c +#define MII_STR_xxMARVELL_E1111 "Marvell 88E1111 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1145 0x000d +#define MII_STR_xxMARVELL_E1145 "Marvell 88E1145 Quad Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1116 0x0021 +#define MII_STR_xxMARVELL_E1116 "Marvell 88E1116 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1116R 0x0024 +#define MII_STR_xxMARVELL_E1116R "Marvell 88E1116R Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1118 0x0022 +#define MII_STR_xxMARVELL_E1118 "Marvell 88E1118 Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1149R 0x0025 +#define MII_STR_xxMARVELL_E1149R "Marvell 88E1149R Quad Gigabit PHY" +#define MII_MODEL_xxMARVELL_E3016 0x0026 +#define MII_STR_xxMARVELL_E3016 "Marvell 88E3016 10/100 Fast Ethernet PHY" +#define MII_MODEL_xxMARVELL_PHYG65G 0x0027 +#define MII_STR_xxMARVELL_PHYG65G "Marvell PHYG65G Gigabit PHY" +#define MII_MODEL_xxMARVELL_E1116R_29 0x0029 +#define MII_STR_xxMARVELL_E1116R_29 "Marvell 88E1116R Gigabit PHY" +#define MII_MODEL_MARVELL_E1000 0x0005 +#define MII_STR_MARVELL_E1000 "Marvell 88E1000 Gigabit PHY" +#define MII_MODEL_MARVELL_E1011 0x0002 +#define MII_STR_MARVELL_E1011 "Marvell 88E1011 Gigabit PHY" +#define MII_MODEL_MARVELL_E1000_3 0x0003 +#define MII_STR_MARVELL_E1000_3 "Marvell 88E1000 Gigabit PHY" +#define MII_MODEL_MARVELL_E1000_5 0x0005 +#define MII_STR_MARVELL_E1000_5 "Marvell 88E1000 Gigabit PHY" +#define MII_MODEL_MARVELL_E1111 0x000c +#define MII_STR_MARVELL_E1111 "Marvell 88E1111 Gigabit PHY" + +/* Myson Technology PHYs */ +#define MII_MODEL_xxMYSON_MTD972 0x0000 +#define MII_STR_xxMYSON_MTD972 "MTD972 10/100 media interface" +#define MII_MODEL_MYSON_MTD803 0x0000 +#define MII_STR_MYSON_MTD803 "MTD803 3-in-1 media interface" /* National Semiconductor PHYs */ -#define MII_MODEL_NATSEMI_DP83840 0x0000 -#define MII_STR_NATSEMI_DP83840 "DP83840 10/100 media interface" -#define MII_MODEL_NATSEMI_DP83843 0x0001 -#define MII_STR_NATSEMI_DP83843 "DP83843 10/100 media interface" -#define MII_MODEL_NATSEMI_DP83815 0x0002 -#define MII_STR_NATSEMI_DP83815 "DP83815 10/100 media interface" -#define MII_MODEL_NATSEMI_DP83847 0x0003 -#define MII_STR_NATSEMI_DP83847 "DP83847 10/100 media interface" -#define MII_MODEL_NATSEMI_DP83891 0x0005 -#define MII_STR_NATSEMI_DP83891 "DP83891 10/100/1000 media interface" -#define MII_MODEL_NATSEMI_DP83861 0x0006 -#define MII_STR_NATSEMI_DP83861 "DP83861 10/100/1000 media interface" -#define MII_MODEL_NATSEMI_DP83865 0x0007 -#define MII_STR_NATSEMI_DP83865 "DP83865 10/100/1000 media interface" -#define MII_MODEL_NATSEMI_DP83849 0x000a -#define MII_STR_NATSEMI_DP83849 "DP83849 10/100 media interface" +#define MII_MODEL_xxNATSEMI_DP83840 0x0000 +#define MII_STR_xxNATSEMI_DP83840 "DP83840 10/100 media interface" +#define MII_MODEL_xxNATSEMI_DP83843 0x0001 +#define MII_STR_xxNATSEMI_DP83843 "DP83843 10/100 media interface" +#define MII_MODEL_xxNATSEMI_DP83815 0x0002 +#define MII_STR_xxNATSEMI_DP83815 "DP83815 10/100 media interface" +#define MII_MODEL_xxNATSEMI_DP83847 0x0003 +#define MII_STR_xxNATSEMI_DP83847 "DP83847 10/100 media interface" +#define MII_MODEL_xxNATSEMI_DP83891 0x0005 +#define MII_STR_xxNATSEMI_DP83891 "DP83891 1000BASE-T media interface" +#define MII_MODEL_xxNATSEMI_DP83861 0x0006 +#define MII_STR_xxNATSEMI_DP83861 "DP83861 1000BASE-T media interface" +#define MII_MODEL_xxNATSEMI_DP83865 0x0007 +#define MII_STR_xxNATSEMI_DP83865 "DP83865 1000BASE-T media interface" +#define MII_MODEL_xxNATSEMI_DP83849 0x000a +#define MII_STR_xxNATSEMI_DP83849 "DP83849 10/100 media interface" + +/* PMC Sierra PHYs */ +#define MII_MODEL_xxPMCSIERRA_PM8351 0x0000 +#define MII_STR_xxPMCSIERRA_PM8351 "PM8351 OctalPHY Gigabit interface" +#define MII_MODEL_xxPMCSIERRA2_PM8352 0x0002 +#define MII_STR_xxPMCSIERRA2_PM8352 "PM8352 OctalPHY Gigabit interface" +#define MII_MODEL_xxPMCSIERRA2_PM8353 0x0003 +#define MII_STR_xxPMCSIERRA2_PM8353 "PM8353 QuadPHY Gigabit interface" +#define MII_MODEL_PMCSIERRA_PM8354 0x0004 +#define MII_STR_PMCSIERRA_PM8354 "PM8354 QuadPHY Gigabit interface" /* Quality Semiconductor PHYs */ -#define MII_MODEL_QUALSEMI_QS6612 0x0000 -#define MII_STR_QUALSEMI_QS6612 "QS6612 10/100 media interface" +#define MII_MODEL_xxQUALSEMI_QS6612 0x0000 +#define MII_STR_xxQUALSEMI_QS6612 "QS6612 10/100 media interface" /* RDC Semiconductor PHYs */ #define MII_MODEL_RDC_R6040 0x0003 #define MII_STR_RDC_R6040 "R6040 10/100 media interface" -/* RealTek Semiconductor PHYs */ -#define MII_MODEL_REALTEK_RTL8201L 0x0020 -#define MII_STR_REALTEK_RTL8201L "RTL8201L 10/100 media interface" -#define MII_MODEL_xxREALTEK_RTL8305SC 0x0005 -#define MII_STR_xxREALTEK_RTL8305SC "RTL8305SC 10/100 802.1q switch" +/* RealTek Semicondctor PHYs */ +#define MII_MODEL_yyREALTEK_RTL8201L 0x0020 +#define MII_STR_yyREALTEK_RTL8201L "RTL8201L 10/100 media interface" #define MII_MODEL_xxREALTEK_RTL8169S 0x0011 -#define MII_STR_xxREALTEK_RTL8169S "RTL8169S/8110S/8211B media interface" - -/* Seeq PHYs */ -#define MII_MODEL_xxSEEQ_80220 0x0003 -#define MII_STR_xxSEEQ_80220 "Seeq 80220 10/100 media interface" -#define MII_MODEL_xxSEEQ_84220 0x0004 -#define MII_STR_xxSEEQ_84220 "Seeq 84220 10/100 media interface" +#define MII_STR_xxREALTEK_RTL8169S "RTL8169S/8110S/8211 1000BASE-T media interface" +#define MII_MODEL_REALTEK_RTL8305SC 0x0005 +#define MII_STR_REALTEK_RTL8305SC "RTL8305SC 10/100 802.1q switch" +#define MII_MODEL_REALTEK_RTL8201E 0x0008 +#define MII_STR_REALTEK_RTL8201E "RTL8201E 10/100 media interface" +#define MII_MODEL_REALTEK_RTL8169S 0x0011 +#define MII_STR_REALTEK_RTL8169S "RTL8169S/8110S/8211 1000BASE-T media interface" + +/* Seeq Seeq PHYs */ +#define MII_MODEL_SEEQ_80220 0x0003 +#define MII_STR_SEEQ_80220 "Seeq 80220 10/100 media interface" +#define MII_MODEL_SEEQ_84220 0x0004 +#define MII_STR_SEEQ_84220 "Seeq 84220 10/100 media interface" +#define MII_MODEL_SEEQ_80225 0x0008 +#define MII_STR_SEEQ_80225 "Seeq 80225 10/100 media interface" /* Silicon Integrated Systems PHYs */ -#define MII_MODEL_xxSIS_900 0x0000 -#define MII_STR_xxSIS_900 "SiS 900 10/100 media interface" - -/* SMSC PHYs */ -#define MII_MODEL_SMSC_LAN83C183 0x0004 -#define MII_STR_SMSC_LAN83C183 "SMSC LAN83C183 10/100 media interface" - -/* TDK */ -#define MII_MODEL_TDK_78Q2120 0x0014 -#define MII_STR_TDK_78Q2120 "TDK 78Q2120 media interface" +#define MII_MODEL_SIS_900 0x0000 +#define MII_STR_SIS_900 "SiS 900 10/100 media interface" /* Texas Instruments PHYs */ -#define MII_MODEL_xxTI_TLAN10T 0x0001 -#define MII_STR_xxTI_TLAN10T "ThunderLAN 10baseT media interface" -#define MII_MODEL_xxTI_100VGPMI 0x0002 -#define MII_STR_xxTI_100VGPMI "ThunderLAN 100VG-AnyLan media interface" - -/* XaQti Corp. PHYs. */ -#define MII_MODEL_XAQTI_XMACII 0x0000 -#define MII_STR_XAQTI_XMACII "XaQti Corp. XMAC II gigabit interface" - -/* Marvell Semiconductor PHYs */ -#define MII_MODEL_MARVELL_E1000 0x0000 -#define MII_STR_MARVELL_E1000 "Marvell 88E1000 Gigabit PHY" -#define MII_MODEL_MARVELL_E1011 0x0002 -#define MII_STR_MARVELL_E1011 "Marvell 88E1011 Gigabit PHY" -#define MII_MODEL_MARVELL_E1000_3 0x0003 -#define MII_STR_MARVELL_E1000_3 "Marvell 88E1000 Gigabit PHY" -#define MII_MODEL_MARVELL_E1000S 0x0004 -#define MII_STR_MARVELL_E1000S "Marvell 88E1000S Gigabit PHY" -#define MII_MODEL_MARVELL_E1000_5 0x0005 -#define MII_STR_MARVELL_E1000_5 "Marvell 88E1000 Gigabit PHY" -#define MII_MODEL_MARVELL_E1101 0x0006 -#define MII_STR_MARVELL_E1101 "Marvell 88E1101 Gigabit PHY" -#define MII_MODEL_MARVELL_E3082 0x0008 -#define MII_STR_MARVELL_E3082 "Marvell 88E3082 10/100 Fast Ethernet PHY" -#define MII_MODEL_MARVELL_E1112 0x0009 -#define MII_STR_MARVELL_E1112 "Marvell 88E1112 Gigabit PHY" -#define MII_MODEL_MARVELL_E1149 0x000b -#define MII_STR_MARVELL_E1149 "Marvell 88E1149 Gigabit PHY" -#define MII_MODEL_MARVELL_E1111 0x000c -#define MII_STR_MARVELL_E1111 "Marvell 88E1111 Gigabit PHY" -#define MII_MODEL_MARVELL_E1116 0x0021 -#define MII_STR_MARVELL_E1116 "Marvell 88E1116 Gigabit PHY" -#define MII_MODEL_MARVELL_E1116R 0x0024 -#define MII_STR_MARVELL_E1116R "Marvell 88E1116R Gigabit PHY" -#define MII_MODEL_MARVELL_E1118 0x0022 -#define MII_STR_MARVELL_E1118 "Marvell 88E1118 Gigabit PHY" -#define MII_MODEL_MARVELL_E1149R 0x0025 -#define MII_STR_MARVELL_E1149R "Marvell 88E1149R Quad Gigabit PHY" -#define MII_MODEL_MARVELL_E3016 0x0026 -#define MII_STR_MARVELL_E3016 "Marvell 88E3016 10/100 Fast Ethernet PHY" -#define MII_MODEL_MARVELL_PHYG65G 0x0027 -#define MII_STR_MARVELL_PHYG65G "Marvell PHYG65G Gigabit PHY" -#define MII_MODEL_xxMARVELL_E1000 0x0005 -#define MII_STR_xxMARVELL_E1000 "Marvell 88E1000 Gigabit PHY" -#define MII_MODEL_xxMARVELL_E1011 0x0002 -#define MII_STR_xxMARVELL_E1011 "Marvell 88E1011 Gigabit PHY" -#define MII_MODEL_xxMARVELL_E1000_3 0x0003 -#define MII_STR_xxMARVELL_E1000_3 "Marvell 88E1000 Gigabit PHY" -#define MII_MODEL_xxMARVELL_E1000_5 0x0005 -#define MII_STR_xxMARVELL_E1000_5 "Marvell 88E1000 Gigabit PHY" -#define MII_MODEL_xxMARVELL_E1111 0x000c -#define MII_STR_xxMARVELL_E1111 "Marvell 88E1111 Gigabit PHY" +#define MII_MODEL_TI_TLAN10T 0x0001 +#define MII_STR_TI_TLAN10T "ThunderLAN 10BASE-T media interface" +#define MII_MODEL_TI_100VGPMI 0x0002 +#define MII_STR_TI_100VGPMI "ThunderLAN 100VG-AnyLan media interface" +#define MII_MODEL_TI_TNETE2101 0x0003 +#define MII_STR_TI_TNETE2101 "TNETE2101 media interface" + +/* TDK Semiconductor PHYs */ +#define MII_MODEL_xxTSC_78Q2120 0x0014 +#define MII_STR_xxTSC_78Q2120 "78Q2120 10/100 media interface" +#define MII_MODEL_xxTSC_78Q2121 0x0015 +#define MII_STR_xxTSC_78Q2121 "78Q2121 100BASE-TX media interface" + +/* XaQti Corp. PHYs */ +#define MII_MODEL_xxXAQTI_XMACII 0x0000 +#define MII_STR_xxXAQTI_XMACII "XaQti Corp. XMAC II gigabit interface" diff --git a/rtemsbsd/include/rtems/bsd/local/opt_capsicum.h b/rtemsbsd/include/rtems/bsd/local/opt_capsicum.h new file mode 100644 index 00000000..e69de29b diff --git a/rtemsbsd/include/rtems/bsd/local/opt_ofed.h b/rtemsbsd/include/rtems/bsd/local/opt_ofed.h new file mode 100644 index 00000000..e69de29b diff --git a/rtemsbsd/include/rtems/bsd/local/opt_pcbgroup.h b/rtemsbsd/include/rtems/bsd/local/opt_pcbgroup.h new file mode 100644 index 00000000..e69de29b diff --git a/rtemsbsd/include/rtems/bsd/local/pcib_if.h b/rtemsbsd/include/rtems/bsd/local/pcib_if.h index 22c387e9..d8f20c78 100644 --- a/rtemsbsd/include/rtems/bsd/local/pcib_if.h +++ b/rtemsbsd/include/rtems/bsd/local/pcib_if.h @@ -134,4 +134,17 @@ static __inline int PCIB_MAP_MSI(device_t pcib, device_t dev, int irq, return ((pcib_map_msi_t *) _m)(pcib, dev, irq, addr, data); } +/** @brief Unique descriptor for the PCIB_POWER_FOR_SLEEP() method */ +extern struct kobjop_desc pcib_power_for_sleep_desc; +/** @brief A function implementing the PCIB_POWER_FOR_SLEEP() method */ +typedef int pcib_power_for_sleep_t(device_t pcib, device_t dev, int *pstate); + +static __inline int PCIB_POWER_FOR_SLEEP(device_t pcib, device_t dev, + int *pstate) +{ + kobjop_t _m; + KOBJOPLOOKUP(((kobj_t)pcib)->ops,pcib_power_for_sleep); + return ((pcib_power_for_sleep_t *) _m)(pcib, dev, pstate); +} + #endif /* _pcib_if_h_ */ diff --git a/rtemsbsd/include/rtems/bsd/local/usbdevs.h b/rtemsbsd/include/rtems/bsd/local/usbdevs.h index 63f285c3..0a3d105c 100644 --- a/rtemsbsd/include/rtems/bsd/local/usbdevs.h +++ b/rtemsbsd/include/rtems/bsd/local/usbdevs.h @@ -330,6 +330,7 @@ #define USB_VENDOR_AVISION 0x0638 /* Avision */ #define USB_VENDOR_TEAC 0x0644 /* TEAC */ #define USB_VENDOR_ACTON 0x0647 /* Acton Research Corp. */ +#define USB_VENDOR_OPTO 0x065a /* Optoelectronics Co., Ltd */ #define USB_VENDOR_SGI 0x065e /* Silicon Graphics */ #define USB_VENDOR_SANWASUPPLY 0x0663 /* Sanwa Supply */ #define USB_VENDOR_MEGATEC 0x0665 /* Megatec */ @@ -684,6 +685,7 @@ #define USB_VENDOR_SWEEX2 0x177f /* Sweex */ #define USB_VENDOR_METAGEEK 0x1781 /* MetaGeek */ #define USB_VENDOR_KAMSTRUP 0x17a8 /* Kamstrup A/S */ +#define USB_VENDOR_LENOVO 0x17ef /* Lenovo */ #define USB_VENDOR_WAVESENSE 0x17f4 /* WaveSense */ #define USB_VENDOR_VAISALA 0x1843 /* Vaisala */ #define USB_VENDOR_AMIT 0x18c5 /* AMIT */ @@ -728,7 +730,6 @@ #define USB_VENDOR_VIALABS 0x2109 /* VIA Labs */ #define USB_VENDOR_ERICSSON 0x2282 /* Ericsson */ #define USB_VENDOR_MOTOROLA2 0x22b8 /* Motorola */ -#define USB_VENDOR_WETELECOM 0x22de /* WeTelecom */ #define USB_VENDOR_TRIPPLITE 0x2478 /* Tripp-Lite */ #define USB_VENDOR_HIROSE 0x2631 /* Hirose Electric */ #define USB_VENDOR_NHJ 0x2770 /* NHJ */ @@ -1088,6 +1089,7 @@ #define USB_PRODUCT_APPLE_IPHONE_3G 0x1292 /* iPhone 3G */ #define USB_PRODUCT_APPLE_IPHONE_3GS 0x1294 /* iPhone 3GS */ #define USB_PRODUCT_APPLE_IPHONE_4 0x1297 /* iPhone 4 */ +#define USB_PRODUCT_APPLE_IPHONE_4S 0x12a0 /* iPhone 4S */ #define USB_PRODUCT_APPLE_IPHONE_5 0x12a8 /* iPhone 5 */ #define USB_PRODUCT_APPLE_IPAD 0x129a /* iPad */ #define USB_PRODUCT_APPLE_ETHERNET 0x1402 /* Ethernet A1277 */ @@ -1493,7 +1495,6 @@ /* D-Link products */ /*product DLINK DSBS25 0x0100 DSB-S25 serial*/ #define USB_PRODUCT_DLINK_DUBE100 0x1a00 /* 10/100 Ethernet */ -#define USB_PRODUCT_DLINK_DUBE100C1 0x1a02 /* DUB-E100 rev C1 */ #define USB_PRODUCT_DLINK_DSB650TX4 0x200c /* 10/100 Ethernet */ #define USB_PRODUCT_DLINK_DWL120E 0x3200 /* DWL-120 rev E */ #define USB_PRODUCT_DLINK_DWL122 0x3700 /* DWL-122 */ @@ -1517,6 +1518,8 @@ #define USB_PRODUCT_DLINK_DSB650TX2 0x4102 /* 10/100 Ethernet */ #define USB_PRODUCT_DLINK_DSB650 0xabc1 /* 10/100 Ethernet */ #define USB_PRODUCT_DLINK_DUBH7 0xf103 /* DUB-H7 USB 2.0 7-Port Hub */ +#define USB_PRODUCT_DLINK_DWR510_CD 0xa805 /* DWR-510 CD-ROM Mode */ +#define USB_PRODUCT_DLINK_DWR510 0x7e12 /* DWR-510 */ #define USB_PRODUCT_DLINK2_DWA120 0x3a0c /* DWA-120 */ #define USB_PRODUCT_DLINK2_DWA120_NF 0x3a0d /* DWA-120 (no firmware) */ #define USB_PRODUCT_DLINK2_DWLG122C1 0x3c03 /* DWL-G122 c1 */ @@ -1556,7 +1559,6 @@ #define USB_PRODUCT_EDIMAX_RT2870_1 0x7711 /* RT2870 */ #define USB_PRODUCT_EDIMAX_EW7717 0x7717 /* EW-7717 */ #define USB_PRODUCT_EDIMAX_EW7718 0x7718 /* EW-7718 */ -#define USB_PRODUCT_EDIMAX_EW7811UN 0x7811 /* EW-7811Un */ /* eGalax Products */ #define USB_PRODUCT_EGALAX_TPANEL 0x0001 /* Touch Panel */ @@ -1723,6 +1725,7 @@ #define USB_PRODUCT_FTDI_SERIAL_2232D 0x9e90 /* FT2232D Dual port Serial */ #define USB_PRODUCT_FTDI_SERIAL_4232H 0x6011 /* FT4232H Quad port Serial */ #define USB_PRODUCT_FTDI_BEAGLEBONE 0xa6d0 /* BeagleBone */ +#define USB_PRODUCT_FTDI_KTLINK 0xbbe2 /* KT-LINK Embedded Hackers Multitool */ #define USB_PRODUCT_FTDI_TURTELIZER2 0xbdc8 /* egnite Turtelizer 2 JTAG/RS232 Adapter */ /* Gude Analog- und Digitalsysteme products also uses FTDI's id: */ #define USB_PRODUCT_FTDI_TACTRIX_OPENPORT_13M 0xcc48 /* OpenPort 1.3 Mitsubishi */ @@ -2425,6 +2428,9 @@ /* Leadtek products */ #define USB_PRODUCT_LEADTEK_9531 0x2101 /* 9531 GPS */ +/* Lenovo products */ +#define USB_PRODUCT_LENOVO_ETHERNET 0x7203 /* USB 2.0 Ethernet */ + /* Lexar products */ #define USB_PRODUCT_LEXAR_JUMPSHOT 0x0001 /* jumpSHOT CompactFlash Reader */ #define USB_PRODUCT_LEXAR_CF_READER 0xb002 /* USB CF Reader */ @@ -2469,7 +2475,6 @@ #define USB_PRODUCT_LOGITECH_PAGESCAN 0x040f /* PageScan */ #define USB_PRODUCT_LOGITECH_QUICKCAMWEB 0x0801 /* QuickCam Web */ #define USB_PRODUCT_LOGITECH_QUICKCAMPRO 0x0810 /* QuickCam Pro */ -#define USB_PRODUCT_LOGITECH_WEBCAMC100 0X0817 /* Webcam C100 */ #define USB_PRODUCT_LOGITECH_QUICKCAMEXP 0x0840 /* QuickCam Express */ #define USB_PRODUCT_LOGITECH_QUICKCAM 0x0850 /* QuickCam */ #define USB_PRODUCT_LOGITECH_QUICKCAMPRO3 0x0990 /* QuickCam Pro 9000 */ @@ -2498,6 +2503,7 @@ #define USB_PRODUCT_LOGITEC_RT2870_3 0x0164 /* RT2870 */ #define USB_PRODUCT_LOGITEC_LANW300NU2 0x0166 /* LAN-W300N/U2 */ #define USB_PRODUCT_LOGITEC_LANW150NU2 0x0168 /* LAN-W150N/U2 */ +#define USB_PRODUCT_LOGITEC_LANW300NU2S 0x0169 /* LAN-W300N/U2S */ /* Longcheer Holdings, Ltd. products */ #define USB_PRODUCT_LONGCHEER_WM66 0x6061 /* Longcheer WM66 HSDPA */ @@ -2947,6 +2953,7 @@ #define USB_PRODUCT_MOTOROLA2_E398 0x4810 /* E398 Mobile Phone */ #define USB_PRODUCT_MOTOROLA2_USBLAN 0x600c /* USBLAN */ #define USB_PRODUCT_MOTOROLA2_USBLAN2 0x6027 /* USBLAN */ +#define USB_PRODUCT_MOTOROLA2_MB886 0x710f /* MB886 Mobile Phone (Atria HD) */ #define USB_PRODUCT_MOTOROLA4_RT2770 0x9031 /* RT2770 */ #define USB_PRODUCT_MOTOROLA4_RT3070 0x9032 /* RT3070 */ @@ -3066,6 +3073,7 @@ #define USB_PRODUCT_NOVATEL_MC950D 0x4400 /* Novatel MC950D HSUPA */ #define USB_PRODUCT_NOVATEL_ZEROCD 0x5010 /* Novatel ZeroCD */ #define USB_PRODUCT_NOVATEL_ZEROCD2 0x5030 /* Novatel ZeroCD */ +#define USB_PRODUCT_NOVATEL_MIFI2200 0x5041 /* Novatel MiFi 2200 CDMA */ #define USB_PRODUCT_NOVATEL_U727_2 0x5100 /* Merlin U727 CDMA */ #define USB_PRODUCT_NOVATEL_U760 0x6000 /* Novatel U760 */ #define USB_PRODUCT_NOVATEL_MC760 0x6002 /* Novatel MC760 */ @@ -3148,6 +3156,13 @@ #define USB_PRODUCT_OPTION_ICON505 0xd055 /* Globetrotter iCON 505 */ #define USB_PRODUCT_OPTION_ICON452 0x7901 /* Globetrotter iCON 452 */ +/* Optoelectronics Co., Ltd */ +#define USB_PRODUCT_OPTO_BARCODE 0x0001 /* Barcode Reader */ +#define USB_PRODUCT_OPTO_OPTICONCODE 0x0009 /* Opticon Code Reader */ +#define USB_PRODUCT_OPTO_BARCODE_1 0xa002 /* Barcode Reader */ +#define USB_PRODUCT_OPTO_CRD7734 0xc000 /* USB Cradle CRD-7734-RU */ +#define USB_PRODUCT_OPTO_CRD7734_1 0xc001 /* USB Cradle CRD-7734-RU */ + /* OvisLink product */ #define USB_PRODUCT_OVISLINK_RT3072 0x3072 /* RT3072 */ @@ -3263,6 +3278,7 @@ #define USB_PRODUCT_PLANEX2_GWUS54HP 0xab01 /* GW-US54HP */ #define USB_PRODUCT_PLANEX2_GWUS300MINIS 0xab24 /* GW-US300MiniS */ #define USB_PRODUCT_PLANEX2_RT3070 0xab25 /* RT3070 */ +#define USB_PRODUCT_PLANEX2_MZKUE150N 0xab2f /* MZK-UE150N */ #define USB_PRODUCT_PLANEX2_GWUS54MINI2 0xab50 /* GW-US54Mini2 */ #define USB_PRODUCT_PLANEX2_GWUS54SG 0xc002 /* GW-US54SG */ #define USB_PRODUCT_PLANEX2_GWUS54GZL 0xc007 /* GW-US54GZL */ @@ -3354,6 +3370,8 @@ /* Qualcomm products */ #define USB_PRODUCT_QUALCOMM_CDMA_MSM 0x6000 /* CDMA Technologies MSM phone */ +#define USB_PRODUCT_QUALCOMM_NTT_L02C_MODEM 0x618f /* NTT DOCOMO L-02C */ +#define USB_PRODUCT_QUALCOMM_NTT_L02C_STORAGE 0x61dd /* NTT DOCOMO L-02C */ #define USB_PRODUCT_QUALCOMM2_MF330 0x6613 /* MF330 */ #define USB_PRODUCT_QUALCOMM2_RWT_FCT 0x3100 /* RWT FCT-CDMA 2000 1xRTT modem */ #define USB_PRODUCT_QUALCOMM2_CDMA_MSM 0x3196 /* CDMA Technologies MSM modem */ @@ -3890,7 +3908,6 @@ #define USB_PRODUCT_SMC2_2020HUB 0x2020 /* USB Hub */ #define USB_PRODUCT_SMC2_2514HUB 0x2514 /* USB Hub */ #define USB_PRODUCT_SMC3_2662WUSB 0xa002 /* 2662W-AR Wireless */ -#define USB_PRODUCT_SMC2_LAN9514_ETH 0xec00 /* USB/Ethernet */ /* SOHOware products */ #define USB_PRODUCT_SOHOWARE_NUB100 0x9100 /* 10/100 USB Ethernet */ @@ -3991,7 +4008,6 @@ /* Super Top products */ #define USB_PRODUCT_SUPERTOP_IDE 0x6600 /* USB-IDE */ -#define USB_PRODUCT_SUPERTOP_FLASHDRIVE 0x121c /* extrememory Snippy */ /* Syntech products */ #define USB_PRODUCT_SYNTECH_CPT8001C 0x0001 /* CPT-8001C Barcode scanner */ @@ -4205,9 +4221,6 @@ #define USB_PRODUCT_WESTERN_MYBOOK 0x0901 /* MyBook External HDD */ #define USB_PRODUCT_WESTERN_MYPASSWORD 0x0704 /* MyPassword External HDD */ -/* WeTelecom products */ -#define USB_PRODUCT_WETELECOM_WM_D200 0x6801 /* WM-D200 */ - /* WIENER Plein & Baus GmbH products */ #define USB_PRODUCT_WIENERPLEINBAUS_PL512 0x0010 /* PL512 PSU */ #define USB_PRODUCT_WIENERPLEINBAUS_RCM 0x0011 /* RCM Remote Control */ diff --git a/rtemsbsd/include/rtems/bsd/local/usbdevs_data.h b/rtemsbsd/include/rtems/bsd/local/usbdevs_data.h index 4a0c6b94..9ac09b57 100644 --- a/rtemsbsd/include/rtems/bsd/local/usbdevs_data.h +++ b/rtemsbsd/include/rtems/bsd/local/usbdevs_data.h @@ -1305,6 +1305,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Apple Computer", "iPhone 4", }, + { + USB_VENDOR_APPLE, USB_PRODUCT_APPLE_IPHONE_4S, + 0, + "Apple Computer", + "iPhone 4S", + }, { USB_VENDOR_APPLE, USB_PRODUCT_APPLE_IPHONE_5, 0, @@ -3009,12 +3015,6 @@ const struct usb_knowndev usb_knowndevs[] = { "D-Link", "10/100 Ethernet", }, - { - USB_VENDOR_DLINK, USB_PRODUCT_DLINK_DUBE100C1, - 0, - "D-Link", - "DUB-E100 rev C1", - }, { USB_VENDOR_DLINK, USB_PRODUCT_DLINK_DSB650TX4, 0, @@ -3153,6 +3153,18 @@ const struct usb_knowndev usb_knowndevs[] = { "D-Link", "DUB-H7 USB 2.0 7-Port Hub", }, + { + USB_VENDOR_DLINK, USB_PRODUCT_DLINK_DWR510_CD, + 0, + "D-Link", + "DWR-510 CD-ROM Mode", + }, + { + USB_VENDOR_DLINK, USB_PRODUCT_DLINK_DWR510, + 0, + "D-Link", + "DWR-510", + }, { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA120, 0, @@ -3327,12 +3339,6 @@ const struct usb_knowndev usb_knowndevs[] = { "Edimax", "EW-7718", }, - { - USB_VENDOR_EDIMAX, USB_PRODUCT_EDIMAX_EW7811UN, - 0, - "Edimax", - "EW-7811Un", - }, { USB_VENDOR_EGALAX, USB_PRODUCT_EGALAX_TPANEL, 0, @@ -3993,6 +3999,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Future Technology Devices", "BeagleBone", }, + { + USB_VENDOR_FTDI, USB_PRODUCT_FTDI_KTLINK, + 0, + "Future Technology Devices", + "KT-LINK Embedded Hackers Multitool", + }, { USB_VENDOR_FTDI, USB_PRODUCT_FTDI_TURTELIZER2, 0, @@ -7341,6 +7353,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Leadtek", "9531 GPS", }, + { + USB_VENDOR_LENOVO, USB_PRODUCT_LENOVO_ETHERNET, + 0, + "Lenovo", + "USB 2.0 Ethernet", + }, { USB_VENDOR_LEXAR, USB_PRODUCT_LEXAR_JUMPSHOT, 0, @@ -7527,12 +7545,6 @@ const struct usb_knowndev usb_knowndevs[] = { "Logitech", "QuickCam Pro", }, - { - USB_VENDOR_LOGITECH, USB_PRODUCT_LOGITECH_WEBCAMC100, - 0, - "Logitech", - "Webcam C100", - }, { USB_VENDOR_LOGITECH, USB_PRODUCT_LOGITECH_QUICKCAMEXP, 0, @@ -7689,6 +7701,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Logitec", "LAN-W150N/U2", }, + { + USB_VENDOR_LOGITEC, USB_PRODUCT_LOGITEC_LANW300NU2S, + 0, + "Logitec", + "LAN-W300N/U2S", + }, { USB_VENDOR_LONGCHEER, USB_PRODUCT_LONGCHEER_WM66, 0, @@ -10005,6 +10023,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Motorola", "USBLAN", }, + { + USB_VENDOR_MOTOROLA2, USB_PRODUCT_MOTOROLA2_MB886, + 0, + "Motorola", + "MB886 Mobile Phone (Atria HD)", + }, { USB_VENDOR_MOTOROLA4, USB_PRODUCT_MOTOROLA4_RT2770, 0, @@ -10503,6 +10527,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Novatel Wireless", "Novatel ZeroCD", }, + { + USB_VENDOR_NOVATEL, USB_PRODUCT_NOVATEL_MIFI2200, + 0, + "Novatel Wireless", + "Novatel MiFi 2200 CDMA", + }, { USB_VENDOR_NOVATEL, USB_PRODUCT_NOVATEL_U727_2, 0, @@ -10905,6 +10935,36 @@ const struct usb_knowndev usb_knowndevs[] = { "Option N.V.", "Globetrotter iCON 452", }, + { + USB_VENDOR_OPTO, USB_PRODUCT_OPTO_BARCODE, + 0, + "Optoelectronics Co., Ltd", + "Barcode Reader", + }, + { + USB_VENDOR_OPTO, USB_PRODUCT_OPTO_OPTICONCODE, + 0, + "Optoelectronics Co., Ltd", + "Opticon Code Reader", + }, + { + USB_VENDOR_OPTO, USB_PRODUCT_OPTO_BARCODE_1, + 0, + "Optoelectronics Co., Ltd", + "Barcode Reader", + }, + { + USB_VENDOR_OPTO, USB_PRODUCT_OPTO_CRD7734, + 0, + "Optoelectronics Co., Ltd", + "USB Cradle CRD-7734-RU", + }, + { + USB_VENDOR_OPTO, USB_PRODUCT_OPTO_CRD7734_1, + 0, + "Optoelectronics Co., Ltd", + "USB Cradle CRD-7734-RU", + }, { USB_VENDOR_OVISLINK, USB_PRODUCT_OVISLINK_RT3072, 0, @@ -11409,6 +11469,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Planex Communications", "RT3070", }, + { + USB_VENDOR_PLANEX2, USB_PRODUCT_PLANEX2_MZKUE150N, + 0, + "Planex Communications", + "MZK-UE150N", + }, { USB_VENDOR_PLANEX2, USB_PRODUCT_PLANEX2_GWUS54MINI2, 0, @@ -11799,6 +11865,18 @@ const struct usb_knowndev usb_knowndevs[] = { "Qualcomm", "CDMA Technologies MSM phone", }, + { + USB_VENDOR_QUALCOMM, USB_PRODUCT_QUALCOMM_NTT_L02C_MODEM, + 0, + "Qualcomm", + "NTT DOCOMO L-02C", + }, + { + USB_VENDOR_QUALCOMM, USB_PRODUCT_QUALCOMM_NTT_L02C_STORAGE, + 0, + "Qualcomm", + "NTT DOCOMO L-02C", + }, { USB_VENDOR_QUALCOMM2, USB_PRODUCT_QUALCOMM2_MF330, 0, @@ -14487,12 +14565,6 @@ const struct usb_knowndev usb_knowndevs[] = { "Standard Microsystems", "2662W-AR Wireless", }, - { - USB_VENDOR_SMC2, USB_PRODUCT_SMC2_LAN9514_ETH, - 0, - "Standard Microsystems", - "USB/Ethernet", - }, { USB_VENDOR_SOHOWARE, USB_PRODUCT_SOHOWARE_NUB100, 0, @@ -14895,12 +14967,6 @@ const struct usb_knowndev usb_knowndevs[] = { "Super Top", "USB-IDE", }, - { - USB_VENDOR_SUPERTOP, USB_PRODUCT_SUPERTOP_FLASHDRIVE, - 0, - "Super Top", - "extrememory Snippy", - }, { USB_VENDOR_SYNTECH, USB_PRODUCT_SYNTECH_CPT8001C, 0, @@ -15573,12 +15639,6 @@ const struct usb_knowndev usb_knowndevs[] = { "Western Digital", "MyPassword External HDD", }, - { - USB_VENDOR_WETELECOM, USB_PRODUCT_WETELECOM_WM_D200, - 0, - "WeTelecom", - "WM-D200", - }, { USB_VENDOR_WIENERPLEINBAUS, USB_PRODUCT_WIENERPLEINBAUS_PL512, 0, @@ -17541,6 +17601,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Acton Research Corp.", NULL, }, + { + USB_VENDOR_OPTO, 0, + USB_KNOWNDEV_NOPROD, + "Optoelectronics Co., Ltd", + NULL, + }, { USB_VENDOR_SGI, 0, USB_KNOWNDEV_NOPROD, @@ -19665,6 +19731,12 @@ const struct usb_knowndev usb_knowndevs[] = { "Kamstrup A/S", NULL, }, + { + USB_VENDOR_LENOVO, 0, + USB_KNOWNDEV_NOPROD, + "Lenovo", + NULL, + }, { USB_VENDOR_WAVESENSE, 0, USB_KNOWNDEV_NOPROD, @@ -19929,12 +20001,6 @@ const struct usb_knowndev usb_knowndevs[] = { "Motorola", NULL, }, - { - USB_VENDOR_WETELECOM, 0, - USB_KNOWNDEV_NOPROD, - "WeTelecom", - NULL, - }, { USB_VENDOR_TRIPPLITE, 0, USB_KNOWNDEV_NOPROD, diff --git a/rtemsbsd/include/rtems/bsd/sys/_types.h b/rtemsbsd/include/rtems/bsd/sys/_types.h index f1af2cbc..76ec2440 100644 --- a/rtemsbsd/include/rtems/bsd/sys/_types.h +++ b/rtemsbsd/include/rtems/bsd/sys/_types.h @@ -156,12 +156,20 @@ typedef char vm_memattr_t; typedef int accmode_t; #define _ACCMODE_T_DECLARED +typedef uint64_t cap_rights_t; + +typedef int32_t __clockid_t; + typedef const char *c_caddr_t; typedef uint32_t cpumask_t; +typedef int cpulevel_t; + typedef int cpusetid_t; +typedef int cpuwhich_t; + #define _DEV_T_DECLARED typedef uint32_t __fixpt_t; @@ -169,6 +177,8 @@ typedef __fixpt_t fixpt_t; #define _GID_T_DECLARED +typedef int64_t id_t; + typedef uint32_t in_addr_t; #define _IN_ADDR_T_DECLARED diff --git a/rtemsbsd/include/rtems/bsd/sys/param.h b/rtemsbsd/include/rtems/bsd/sys/param.h index 1479d8e3..76ba0b7b 100644 --- a/rtemsbsd/include/rtems/bsd/sys/param.h +++ b/rtemsbsd/include/rtems/bsd/sys/param.h @@ -334,4 +334,10 @@ __END_DECLS #define member2struct(s, m, x) \ ((struct s *)(void *)((char *)(x) - offsetof(struct s, m))) +/* + * Access a variable length array that has been declared as a fixed + * length array. + */ +#define __PAST_END(array, offset) (((__typeof__(*(array)) *)(array))[offset]) + #endif /* _RTEMS_BSD_SYS_PARAM_H_ */ diff --git a/rtemsbsd/include/sys/_stdint.h b/rtemsbsd/include/sys/_stdint.h new file mode 100644 index 00000000..9a6118bd --- /dev/null +++ b/rtemsbsd/include/sys/_stdint.h @@ -0,0 +1 @@ +#include diff --git a/rtemsbsd/include/sys/cpuset.h b/rtemsbsd/include/sys/cpuset.h deleted file mode 100644 index 936ffd88..00000000 --- a/rtemsbsd/include/sys/cpuset.h +++ /dev/null @@ -1 +0,0 @@ -/* EMPTY */ diff --git a/rtemsbsd/include/sys/rangelock.h b/rtemsbsd/include/sys/rangelock.h new file mode 100644 index 00000000..936ffd88 --- /dev/null +++ b/rtemsbsd/include/sys/rangelock.h @@ -0,0 +1 @@ +/* EMPTY */ diff --git a/rtemsbsd/include/sys/vnode.h b/rtemsbsd/include/sys/vnode.h deleted file mode 100644 index 936ffd88..00000000 --- a/rtemsbsd/include/sys/vnode.h +++ /dev/null @@ -1 +0,0 @@ -/* EMPTY */ diff --git a/rtemsbsd/local/bus_if.c b/rtemsbsd/local/bus_if.c index 31259ce6..558888af 100644 --- a/rtemsbsd/local/bus_if.c +++ b/rtemsbsd/local/bus_if.c @@ -16,7 +16,7 @@ #include #include #include -#include +#include #include #include #include @@ -79,6 +79,14 @@ struct kobjop_desc bus_write_ivar_desc = { 0, &bus_write_ivar_method_default }; +struct kobj_method bus_child_deleted_method_default = { + &bus_child_deleted_desc, (kobjop_t) kobj_error_method +}; + +struct kobjop_desc bus_child_deleted_desc = { + 0, &bus_child_deleted_method_default +}; + struct kobj_method bus_child_detached_method_default = { &bus_child_detached_desc, (kobjop_t) kobj_error_method }; diff --git a/rtemsbsd/local/pcib_if.c b/rtemsbsd/local/pcib_if.c index cc036b4f..07d7abb5 100644 --- a/rtemsbsd/local/pcib_if.c +++ b/rtemsbsd/local/pcib_if.c @@ -99,3 +99,11 @@ struct kobjop_desc pcib_map_msi_desc = { 0, &pcib_map_msi_method_default }; +struct kobj_method pcib_power_for_sleep_method_default = { + &pcib_power_for_sleep_desc, (kobjop_t) kobj_error_method +}; + +struct kobjop_desc pcib_power_for_sleep_desc = { + 0, &pcib_power_for_sleep_method_default +}; + diff --git a/rtemsbsd/rtems/rtems-bsd-sysctl.c b/rtemsbsd/rtems/rtems-bsd-sysctl.c index f9ecab81..7e087385 100644 --- a/rtemsbsd/rtems/rtems-bsd-sysctl.c +++ b/rtemsbsd/rtems/rtems-bsd-sysctl.c @@ -46,11 +46,11 @@ #include int sysctl( - int *name, + const int *name, u_int namelen, void *oldp, size_t *oldlenp, - void *newp, + const void *newp, size_t newlen ) { diff --git a/rtemsbsd/rtems/rtems-bsd-sysctlbyname.c b/rtemsbsd/rtems/rtems-bsd-sysctlbyname.c index ced85f7c..ab3e8083 100644 --- a/rtemsbsd/rtems/rtems-bsd-sysctlbyname.c +++ b/rtemsbsd/rtems/rtems-bsd-sysctlbyname.c @@ -29,7 +29,7 @@ __FBSDID("$FreeBSD$"); int sysctlbyname(const char *name, void *oldp, size_t *oldlenp, - void *newp, size_t newlen) + const void *newp, size_t newlen) { int real_oid[CTL_MAXNAME+2]; int error; -- cgit v1.2.3