File ipxe-gcc6-via-rhine.patch of Package xen
--- /dev/null
+++ b/tools/firmware/etherboot/patches/gcc6-via-rhine.patch
@@ -0,0 +1,12 @@
+--- a/src/drivers/net/via-rhine.c
++++ b/src/drivers/net/via-rhine.c
+@@ -946,7 +946,9 @@ void rhine_irq ( struct nic *nic, irq_ac
+ /* For supporting VT6107, please use revision id to recognize different chips in driver */
+ // if (tp->chip_id == 0x3065)
+ if( tp->chip_revision < 0x80 && tp->chip_revision >=0x40 )
++ {
+ intr_status |= inb(nic->ioaddr + IntrStatus2) << 16;
++ }
+ intr_status = (intr_status & ~DEFAULT_INTR);
+ if ( action == ENABLE )
+ intr_status = intr_status | DEFAULT_INTR;
--- a/tools/firmware/etherboot/patches/series
+++ b/tools/firmware/etherboot/patches/series
@@ -9,3 +9,4 @@ libc-Remove-unused-string-functions.patc
ethernet-Expose-eth_broadcast-as-a-global-constant.patch
ath9k-Fix-buffer-overrun-for-ar9287.patch
mucurses-Fix-GCC-6-nonnull-compare-errors.patch
+gcc6-via-rhine.patch