summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/sys')
-rw-r--r--usr/src/uts/common/sys/Makefile1
-rw-r--r--usr/src/uts/common/sys/bootbanner.h33
-rw-r--r--usr/src/uts/common/sys/fibre-channel/fca/emlxs/emlxs_hw.h2
-rw-r--r--usr/src/uts/common/sys/fs/sdev_impl.h1
-rw-r--r--usr/src/uts/common/sys/mac.h10
-rw-r--r--usr/src/uts/common/sys/mac_impl.h48
-rw-r--r--usr/src/uts/common/sys/mac_provider.h3
-rw-r--r--usr/src/uts/common/sys/smbios.h11
-rw-r--r--usr/src/uts/common/sys/sysconfig.h3
-rw-r--r--usr/src/uts/common/sys/systeminfo.h12
-rw-r--r--usr/src/uts/common/sys/unistd.h25
11 files changed, 77 insertions, 72 deletions
diff --git a/usr/src/uts/common/sys/Makefile b/usr/src/uts/common/sys/Makefile
index 3664f0096b..24fdd94c11 100644
--- a/usr/src/uts/common/sys/Makefile
+++ b/usr/src/uts/common/sys/Makefile
@@ -96,6 +96,7 @@ CHKHDRS= \
bofi.h \
bofi_impl.h \
bpp_io.h \
+ bootbanner.h \
bootstat.h \
brand.h \
buf.h \
diff --git a/usr/src/uts/common/sys/bootbanner.h b/usr/src/uts/common/sys/bootbanner.h
new file mode 100644
index 0000000000..93ba1b9e79
--- /dev/null
+++ b/usr/src/uts/common/sys/bootbanner.h
@@ -0,0 +1,33 @@
+/*
+ * This file and its contents are supplied under the terms of the
+ * Common Development and Distribution License ("CDDL"), version 1.0.
+ * You may only use this file in accordance with the terms of version
+ * 1.0 of the CDDL.
+ *
+ * A full copy of the text of the CDDL should have accompanied this
+ * source. A copy of the CDDL is also available via the Internet at
+ * http://www.illumos.org/license/CDDL.
+ */
+
+/*
+ * Copyright 2020 Oxide Computer Company
+ */
+
+#ifndef _SYS_BOOTBANNER_H
+#define _SYS_BOOTBANNER_H
+
+/*
+ * Rendering of the boot banner, used on the system and zone consoles.
+ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern void bootbanner_print(void (*)(const char *, uint_t), int kmflag);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SYS_BOOTBANNER_H */
diff --git a/usr/src/uts/common/sys/fibre-channel/fca/emlxs/emlxs_hw.h b/usr/src/uts/common/sys/fibre-channel/fca/emlxs/emlxs_hw.h
index ab4b4b4e6b..406c90303b 100644
--- a/usr/src/uts/common/sys/fibre-channel/fca/emlxs/emlxs_hw.h
+++ b/usr/src/uts/common/sys/fibre-channel/fca/emlxs/emlxs_hw.h
@@ -2140,7 +2140,7 @@ typedef struct
#define SLI_FW_TYPE_101 SLI_FW_TYPE_SHIFT(0xb) /* LP101 */
-enum emlxs_prog_type
+typedef enum emlxs_prog_type
{
TEST_PROGRAM, /* 0 */
UTIL_PROGRAM, /* 1 */
diff --git a/usr/src/uts/common/sys/fs/sdev_impl.h b/usr/src/uts/common/sys/fs/sdev_impl.h
index d1c5f674f1..676193fcfa 100644
--- a/usr/src/uts/common/sys/fs/sdev_impl.h
+++ b/usr/src/uts/common/sys/fs/sdev_impl.h
@@ -39,6 +39,7 @@ extern "C" {
#include <sys/nvpair.h>
#include <sys/fs/sdev_plugin.h>
#include <sys/sunddi.h>
+#include <sys/fs/sdev_plugin.h>
/*
* sdev_nodes are the file-system specific part of the
diff --git a/usr/src/uts/common/sys/mac.h b/usr/src/uts/common/sys/mac.h
index 1d7ddf9648..a5974f6d7d 100644
--- a/usr/src/uts/common/sys/mac.h
+++ b/usr/src/uts/common/sys/mac.h
@@ -23,6 +23,7 @@
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright 2018 Joyent, Inc.
* Copyright (c) 2015 Garrett D'Amore <garrett@damore.org>
+ * Copyright 2020 RackTop Systems, Inc.
*/
#ifndef _SYS_MAC_H
@@ -88,6 +89,13 @@ typedef enum {
} link_flowctrl_t;
typedef enum {
+ LINK_FEC_NONE = 1 << 0,
+ LINK_FEC_AUTO = 1 << 1,
+ LINK_FEC_RS = 1 << 2,
+ LINK_FEC_BASE_R = 1 << 3
+} link_fec_t;
+
+typedef enum {
LINK_TAGMODE_VLANONLY = 0,
LINK_TAGMODE_NORMAL
} link_tagmode_t;
@@ -239,6 +247,8 @@ typedef enum {
MAC_PROP_EN_25GFDX_CAP,
MAC_PROP_ADV_50GFDX_CAP,
MAC_PROP_EN_50GFDX_CAP,
+ MAC_PROP_EN_FEC_CAP,
+ MAC_PROP_ADV_FEC_CAP,
MAC_PROP_PRIVATE = -1
} mac_prop_id_t;
diff --git a/usr/src/uts/common/sys/mac_impl.h b/usr/src/uts/common/sys/mac_impl.h
index 3c103c073a..21f2c10a8e 100644
--- a/usr/src/uts/common/sys/mac_impl.h
+++ b/usr/src/uts/common/sys/mac_impl.h
@@ -290,54 +290,6 @@ struct mac_group_s {
#define GROUP_INTR_ENABLE_FUNC(g) (g)->mrg_info.mgi_intr.mi_enable
#define GROUP_INTR_DISABLE_FUNC(g) (g)->mrg_info.mgi_intr.mi_disable
-#define MAC_RING_TX(mhp, rh, mp, rest) { \
- mac_ring_handle_t mrh = rh; \
- mac_impl_t *mimpl = (mac_impl_t *)mhp; \
- /* \
- * Send packets through a selected tx ring, or through the \
- * default handler if there is no selected ring. \
- */ \
- if (mrh == NULL) \
- mrh = mimpl->mi_default_tx_ring; \
- if (mrh == NULL) { \
- rest = mimpl->mi_tx(mimpl->mi_driver, mp); \
- } else { \
- rest = mac_hwring_tx(mrh, mp); \
- } \
-}
-
-/*
- * This is the final stop before reaching the underlying driver
- * or aggregation, so this is where the bridging hook is implemented.
- * Packets that are bridged will return through mac_bridge_tx(), with
- * rh nulled out if the bridge chooses to send output on a different
- * link due to forwarding.
- */
-#define MAC_TX(mip, rh, mp, src_mcip) { \
- mac_ring_handle_t rhandle = (rh); \
- /* \
- * If there is a bound Hybrid I/O share, send packets through \
- * the default tx ring. (When there's a bound Hybrid I/O share, \
- * the tx rings of this client are mapped in the guest domain \
- * and not accessible from here.) \
- */ \
- _NOTE(CONSTANTCONDITION) \
- if ((src_mcip)->mci_state_flags & MCIS_SHARE_BOUND) \
- rhandle = (mip)->mi_default_tx_ring; \
- if (mip->mi_promisc_list != NULL) \
- mac_promisc_dispatch(mip, mp, src_mcip); \
- /* \
- * Grab the proper transmit pointer and handle. Special \
- * optimization: we can test mi_bridge_link itself atomically, \
- * and if that indicates no bridge send packets through tx ring.\
- */ \
- if (mip->mi_bridge_link == NULL) { \
- MAC_RING_TX(mip, rhandle, mp, mp); \
- } else { \
- mp = mac_bridge_tx(mip, rhandle, mp); \
- } \
-}
-
/* mci_tx_flag */
#define MCI_TX_QUIESCE 0x1
diff --git a/usr/src/uts/common/sys/mac_provider.h b/usr/src/uts/common/sys/mac_provider.h
index 04c20d6aac..fc0866f2d1 100644
--- a/usr/src/uts/common/sys/mac_provider.h
+++ b/usr/src/uts/common/sys/mac_provider.h
@@ -22,6 +22,7 @@
/*
* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2018, Joyent, Inc.
+ * Copyright 2020 RackTop Systems, Inc.
*/
#ifndef _SYS_MAC_PROVIDER_H
@@ -631,6 +632,8 @@ extern void mac_prop_info_set_default_uint32(
mac_prop_info_handle_t, uint32_t);
extern void mac_prop_info_set_default_link_flowctrl(
mac_prop_info_handle_t, link_flowctrl_t);
+extern void mac_prop_info_set_default_fec(
+ mac_prop_info_handle_t, link_fec_t);
extern void mac_prop_info_set_range_uint32(
mac_prop_info_handle_t,
uint32_t, uint32_t);
diff --git a/usr/src/uts/common/sys/smbios.h b/usr/src/uts/common/sys/smbios.h
index 34281898e0..55048d549d 100644
--- a/usr/src/uts/common/sys/smbios.h
+++ b/usr/src/uts/common/sys/smbios.h
@@ -1315,11 +1315,12 @@ typedef struct smbios_memdevice {
#define SMB_MTECH_NVDIMM_P 0x06 /* NVDIMM-P */
#define SMB_MTECH_INTCPM 0x07 /* Intel Optane DC Persistent Memory */
-#define SMB_MOMC_OTHER 0x01 /* other */
-#define SMB_MOMC_UNKNOWN 0x02 /* unknown */
-#define SMB_MOMC_VOLATILE 0x04 /* Volatile memory */
-#define SMB_MOMC_BYTE_PM 0x08 /* Byte-accessible persistent memory */
-#define SMB_MOMC_BLOCK_PM 0x10 /* Block-accessible persistent memory */
+#define SMB_MOMC_RESERVED 0x01 /* reserved */
+#define SMB_MOMC_OTHER 0x02 /* other */
+#define SMB_MOMC_UNKNOWN 0x04 /* unknown */
+#define SMB_MOMC_VOLATILE 0x08 /* Volatile memory */
+#define SMB_MOMC_BYTE_PM 0x10 /* Byte-accessible persistent memory */
+#define SMB_MOMC_BLOCK_PM 0x20 /* Block-accessible persistent memory */
/*
* SMBIOS Memory Array Mapped Address. See DSP0134 Section 7.20 for more
diff --git a/usr/src/uts/common/sys/sysconfig.h b/usr/src/uts/common/sys/sysconfig.h
index d5b65ef78c..7e87d7a983 100644
--- a/usr/src/uts/common/sys/sysconfig.h
+++ b/usr/src/uts/common/sys/sysconfig.h
@@ -101,8 +101,9 @@ extern int mach_sysconfig(int);
#define _CONFIG_SYMLOOP_MAX 46 /* maximum # of symlinks in pathname */
#define _CONFIG_EPHID_MAX 47 /* maximum ephemeral uid */
+#define _CONFIG_UADDR_MAX 48 /* maximum user address */
-#define _CONFIG_NPROC_NCPU 48 /* NCPU (sometimes > NPROC_MAX) */
+#define _CONFIG_NPROC_NCPU 49 /* NCPU (sometimes > NPROC_MAX) */
#ifdef __cplusplus
}
diff --git a/usr/src/uts/common/sys/systeminfo.h b/usr/src/uts/common/sys/systeminfo.h
index a664a19b9e..951d799a70 100644
--- a/usr/src/uts/common/sys/systeminfo.h
+++ b/usr/src/uts/common/sys/systeminfo.h
@@ -21,6 +21,7 @@
/*
* Copyright 2014 Garrett D'Amore <garrett@damore.org>
* Copyright 2017 RackTop Systems.
+ * Copyright 2020 Oxide Computer Company
*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
@@ -56,8 +57,8 @@ extern char platform[];
* 257 - 512 Unix International assigned numbers for `set' style commands
* where the value is selected to be the value for the
* corresponding `get' command plus 256.
- * 513 - 768 Solaris specific `get' style commands.
- * 769 - 1024 Solaris specific `set' style commands where the value is
+ * 513 - 768 illumos-defined `get' style commands.
+ * 769 - 1024 illumos-defined `set' style commands where the value is
* selected to be the value for the corresponding `get' command
* plus 256.
*
@@ -69,7 +70,7 @@ extern char platform[];
/* UI defined `get' commands (1-256) */
#define SI_SYSNAME 1 /* return name of operating system */
#define SI_HOSTNAME 2 /* return name of node */
-#define SI_RELEASE 3 /* return release of operating system */
+#define SI_RELEASE 3 /* return release of operating system */
#define SI_VERSION 4 /* return version field of utsname */
#define SI_MACHINE 5 /* return kind of machine */
#define SI_ARCHITECTURE 6 /* return instruction set arch */
@@ -81,7 +82,7 @@ extern char platform[];
#define SI_SET_HOSTNAME 258 /* set name of node */
#define SI_SET_SRPC_DOMAIN 265 /* set secure RPC domain */
-/* Solaris defined `get' commands (513-768) */
+/* illumos-defined `get' commands (513-768) */
#define SI_PLATFORM 513 /* return platform identifier */
#define SI_ISALIST 514 /* return supported isa list */
#define SI_DHCP_CACHE 515 /* return kernel-cached DHCPACK */
@@ -89,8 +90,9 @@ extern char platform[];
#define SI_ARCHITECTURE_64 517 /* basic 64-bit SI_ARCHITECTURE */
#define SI_ARCHITECTURE_K 518 /* kernel SI_ARCHITECTURE equivalent */
#define SI_ARCHITECTURE_NATIVE 519 /* SI_ARCHITECTURE of the caller */
+#define SI_ADDRESS_WIDTH 520 /* number of bits in native address */
-/* Solaris defined `set' commands (769-1024) (none currently assigned) */
+/* illumos-defined `set' commands (769-1024) (none currently assigned) */
#define HW_INVALID_HOSTID 0xFFFFFFFF /* an invalid hostid */
diff --git a/usr/src/uts/common/sys/unistd.h b/usr/src/uts/common/sys/unistd.h
index f366e99f6a..591a3426f5 100644
--- a/usr/src/uts/common/sys/unistd.h
+++ b/usr/src/uts/common/sys/unistd.h
@@ -106,9 +106,9 @@ extern "C" {
#define _SC_ARG_MAX 1
#define _SC_CHILD_MAX 2
#define _SC_CLK_TCK 3
-#define _SC_NGROUPS_MAX 4
+#define _SC_NGROUPS_MAX 4
#define _SC_OPEN_MAX 5
-#define _SC_JOB_CONTROL 6
+#define _SC_JOB_CONTROL 6
#define _SC_SAVED_IDS 7
#define _SC_VERSION 8
/* SVR4 names */
@@ -151,21 +151,21 @@ extern "C" {
#define _SC_TIMER_MAX 44
/* XPG4 names */
#define _SC_2_C_BIND 45
-#define _SC_2_C_DEV 46
+#define _SC_2_C_DEV 46
#define _SC_2_C_VERSION 47
-#define _SC_2_FORT_DEV 48
-#define _SC_2_FORT_RUN 49
+#define _SC_2_FORT_DEV 48
+#define _SC_2_FORT_RUN 49
#define _SC_2_LOCALEDEF 50
-#define _SC_2_SW_DEV 51
+#define _SC_2_SW_DEV 51
#define _SC_2_UPE 52
#define _SC_2_VERSION 53
#define _SC_BC_BASE_MAX 54
-#define _SC_BC_DIM_MAX 55
+#define _SC_BC_DIM_MAX 55
#define _SC_BC_SCALE_MAX 56
#define _SC_BC_STRING_MAX 57
#define _SC_COLL_WEIGHTS_MAX 58
#define _SC_EXPR_NEST_MAX 59
-#define _SC_LINE_MAX 60
+#define _SC_LINE_MAX 60
#define _SC_RE_DUP_MAX 61
#define _SC_XOPEN_CRYPT 62
#define _SC_XOPEN_ENH_I18N 63
@@ -210,6 +210,7 @@ extern "C" {
#define _SC_NPROCESSORS_MAX 516 /* maximum # of processors */
#define _SC_CPUID_MAX 517 /* maximum CPU id */
#define _SC_EPHID_MAX 518 /* maximum ephemeral id */
+#define _SC_UADDR_MAX 519 /* maximum user address */
/*
* POSIX.1c (pthreads) names. These values are defined above
@@ -351,7 +352,7 @@ extern "C" {
#ifdef _XPG6
#define _POSIX_VERSION 200112L /* Supports IEEE Std 1003.1-2001 */
#else
-#define _POSIX_VERSION 199506L /* Supports POSIX-1c DIS */
+#define _POSIX_VERSION 199506L /* Supports POSIX-1c DIS */
#endif
#endif /* _POSIX_VERSION */
@@ -359,7 +360,7 @@ extern "C" {
#ifdef _XPG6
#define _POSIX2_VERSION 200112L /* Supports IEEE Std 1003.1-2001 */
#else
-#define _POSIX2_VERSION 199209L /* Supports ISO POSIX-2 DIS */
+#define _POSIX2_VERSION 199209L /* Supports ISO POSIX-2 DIS */
#endif
#endif /* _POSIX2_VERSION */
@@ -395,14 +396,14 @@ extern "C" {
#define _POSIX2_FORT_RUN 200112L /* Supports FORTRAN runtime */
#define _POSIX2_LOCALEDEF 200112L /* Supports creation of locales */
#define _POSIX2_SW_DEV 200112L /* Supports S/W Development Utility */
-#define _POSIX2_UPE 200112L /* Supports User Portability Utility */
+#define _POSIX2_UPE 200112L /* Supports User Portability Utility */
#else
#define _POSIX2_C_BIND 1 /* Supports C Language Bindings */
#define _POSIX2_C_DEV 1 /* Supports C language dev utility */
#define _POSIX2_FORT_RUN 1 /* Supports FORTRAN runtime */
#define _POSIX2_LOCALEDEF 1 /* Supports creation of locales */
#define _POSIX2_SW_DEV 1 /* Supports S/W Development Utility */
-#define _POSIX2_UPE 1 /* Supports User Portability Utility */
+#define _POSIX2_UPE 1 /* Supports User Portability Utility */
#endif /* _XPG6 */
/* UNIX 03 names */