summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorSimon Rettberg2021-04-15 11:29:11 +0200
committerSimon Rettberg2021-04-15 11:29:11 +0200
commite6589858be226fa86b109a7737b0780bf5640697 (patch)
treeca95febb1511ad0b206fd20eb912639f3c3db14a /src/include
parentMerge branch 'master' into openslx (diff)
parent[xen] Support scatter-gather to allow for jumbo frames (diff)
downloadipxe-e6589858be226fa86b109a7737b0780bf5640697.tar.gz
ipxe-e6589858be226fa86b109a7737b0780bf5640697.tar.xz
ipxe-e6589858be226fa86b109a7737b0780bf5640697.zip
Merge branch 'master' into openslx
Diffstat (limited to 'src/include')
-rw-r--r--src/include/ipxe/netdevice.h6
-rw-r--r--src/include/ipxe/pci.h3
-rw-r--r--src/include/ipxe/xengrant.h7
3 files changed, 13 insertions, 3 deletions
diff --git a/src/include/ipxe/netdevice.h b/src/include/ipxe/netdevice.h
index b9c651c71..294f7b367 100644
--- a/src/include/ipxe/netdevice.h
+++ b/src/include/ipxe/netdevice.h
@@ -451,6 +451,12 @@ struct net_device {
*/
#define NETDEV_IRQ_UNSUPPORTED 0x0008
+/** Network device transmission is in progress */
+#define NETDEV_TX_IN_PROGRESS 0x0010
+
+/** Network device poll is in progress */
+#define NETDEV_POLL_IN_PROGRESS 0x0020
+
/** Link-layer protocol table */
#define LL_PROTOCOLS __table ( struct ll_protocol, "ll_protocols" )
diff --git a/src/include/ipxe/pci.h b/src/include/ipxe/pci.h
index 6632c574d..933f48530 100644
--- a/src/include/ipxe/pci.h
+++ b/src/include/ipxe/pci.h
@@ -135,6 +135,9 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#define PCI_CLASS_SERIAL_USB_EHCI 0x20 /**< ECHI USB controller */
#define PCI_CLASS_SERIAL_USB_XHCI 0x30 /**< xHCI USB controller */
+/** Subordinate bus number */
+#define PCI_SUBORDINATE 0x1a
+
/** Construct PCI class
*
* @v base Base class (or PCI_ANY_ID)
diff --git a/src/include/ipxe/xengrant.h b/src/include/ipxe/xengrant.h
index 451a3ceee..fcb7a7157 100644
--- a/src/include/ipxe/xengrant.h
+++ b/src/include/ipxe/xengrant.h
@@ -166,16 +166,17 @@ xengrant_invalidate ( struct xen_hypervisor *xen, grant_ref_t ref ) {
* @v ref Grant reference
* @v domid Domain ID
* @v subflags Additional flags
- * @v page Page start
+ * @v addr Physical address within page
* @ret rc Return status code
*/
static inline __attribute__ (( always_inline )) int
xengrant_permit_access ( struct xen_hypervisor *xen, grant_ref_t ref,
- domid_t domid, unsigned int subflags, void *page ) {
+ domid_t domid, unsigned int subflags,
+ physaddr_t addr ) {
struct grant_entry_header *hdr = xengrant_header ( xen, ref );
struct grant_entry_v1 *v1 = xengrant_v1 ( hdr );
union grant_entry_v2 *v2 = xengrant_v2 ( hdr );
- unsigned long frame = ( virt_to_phys ( page ) / PAGE_SIZE );
+ unsigned long frame = ( addr / PAGE_SIZE );
/* Fail (for test purposes) if applicable */
if ( ( XENGRANT_FAIL_RATE > 0 ) &&