kernel: A few small fixes to make a minimal kernel config compile.
authorSascha Wildner <saw@online.de>
Sat, 16 Feb 2013 18:32:38 +0000 (19:32 +0100)
committerSascha Wildner <saw@online.de>
Sat, 16 Feb 2013 18:34:40 +0000 (19:34 +0100)
It is solely for my build testing purposes:

platform        pc64
machine         x86_64
machine_arch    x86_64
ident           MINI
cpu             HAMMER_CPU

* Put two INET specific functions in uipc_socket.c under #ifdef INET.

* Compile in isa_intr.c only when isa is specified in the config.

* Move PCI specific include under #if 0 too in mp_clock.c

* In nexus.c, compile in PCI specific parts only when pci is
  specified in the config.

sys/kern/uipc_socket.c
sys/platform/pc32/conf/files
sys/platform/pc32/i386/mp_clock.c
sys/platform/pc32/i386/nexus.c
sys/platform/pc64/conf/files
sys/platform/pc64/x86_64/nexus.c

index 629afa0..3a0434f 100644 (file)
@@ -886,6 +886,7 @@ out:
        return (error);
 }
 
+#ifdef INET
 /*
  * A specialization of sosend() for UDP based on protocol-specific knowledge:
  *   so->so_proto->pr_flags has the PR_ATOMIC field set.  This means that
@@ -1175,6 +1176,7 @@ out:
                m_freem(control);
        return (error);
 }
+#endif
 
 /*
  * Implement receive operations on a socket.
index 57c66fe..4e3b751 100644 (file)
@@ -263,7 +263,7 @@ dev/serial/cy/cy_pci.c                      optional        cy pci
 dev/netif/elink_layer/elink.c          optional        ep
 dev/disk/fd/fd.c                       optional        fd
 dev/disk/fd/fd_pccard.c                        optional        fd pccard
-platform/pc32/isa/isa_intr.c           standard
+platform/pc32/isa/isa_intr.c           optional        isa
 bus/isa/i386/isa.c                     optional        isa
 bus/isa/i386/isa_dma.c                 optional        isa
 platform/pc32/isa/npx.c                        mandatory       npx
index f217085..8c4b73a 100644 (file)
 #include <sys/sysctl.h>
 #include <sys/bus.h>
 
-#include <bus/pci/pcivar.h>
-
 #if 0
 
+#include <bus/pci/pcivar.h>
+
 static unsigned piix_get_timecount(struct timecounter *tc);
 
 static u_int32_t piix_timecounter_address;
index 7f947e0..e74534a 100644 (file)
@@ -40,6 +40,8 @@
  * and I/O memory address space.
  */
 
+#include "use_pci.h"
+
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/bus.h>
@@ -61,7 +63,9 @@
 #include <machine_base/apic/ioapic.h>
 #include <machine_base/apic/lapic.h>
 
+#if NPCI > 0
 #include "pcib_if.h"
+#endif
 
 static MALLOC_DEFINE(M_NEXUSDEV, "nexusdev", "Nexus device");
 struct nexus_device {
@@ -101,11 +105,13 @@ static    int nexus_set_resource(device_t, device_t, int, int, u_long, u_long,
 static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *);
 static void nexus_delete_resource(device_t, device_t, int, int);
 
+#if NPCI > 0
 static int nexus_alloc_msi(device_t, device_t, int, int, int *, int);
 static int nexus_release_msi(device_t, device_t, int, int *, int);
 static int nexus_map_msi(device_t, device_t, int, uint64_t *, uint32_t *, int);
 static int nexus_alloc_msix(device_t, device_t, int *, int);
 static int nexus_release_msix(device_t, device_t, int, int);
+#endif
 
 /*
  * The device_identify method will cause nexus to automatically associate
@@ -137,11 +143,13 @@ static device_method_t nexus_methods[] = {
        DEVMETHOD(bus_get_resource,     nexus_get_resource),
        DEVMETHOD(bus_delete_resource,  nexus_delete_resource),
 
+#if NPCI > 0
        DEVMETHOD(pcib_alloc_msi,       nexus_alloc_msi),
        DEVMETHOD(pcib_release_msi,     nexus_release_msi),
        DEVMETHOD(pcib_map_msi,         nexus_map_msi),
        DEVMETHOD(pcib_alloc_msix,      nexus_alloc_msix),
        DEVMETHOD(pcib_release_msix,    nexus_release_msix),
+#endif
 
        { 0, 0 }
 };
@@ -570,6 +578,7 @@ nexus_delete_resource(device_t dev, device_t child, int type, int rid)
        resource_list_delete(rl, type, rid);
 }
 
+#if NPCI > 0
 static int
 nexus_alloc_msi(device_t dev, device_t child, int count, int maxcount,
     int *irqs, int cpuid)
@@ -613,3 +622,4 @@ nexus_release_msix(device_t dev, device_t child, int irq, int cpuid)
        MachIntrABI.msix_release(irq, cpuid);
        return 0;
 }
+#endif
index 850b2a0..f35ee9e 100644 (file)
@@ -247,6 +247,6 @@ dev/serial/sio/sio.c                        optional        sio
 bus/isa/syscons_isa.c                  optional        sc
 bus/isa/vga_isa.c                      optional        vga
 platform/pc64/isa/clock.c              standard nowerror
-platform/pc64/isa/isa_intr.c           standard
+platform/pc64/isa/isa_intr.c           optional        isa
 platform/pc64/x86_64/spinlock.s                standard
 dev/netif/elink_layer/elink.c          optional        ep
index d2ee821..a1fab9e 100644 (file)
@@ -41,6 +41,8 @@
  * and I/O memory address space.
  */
 
+#include "use_pci.h"
+
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/bus.h>
@@ -62,7 +64,9 @@
 #include <machine_base/apic/lapic.h>
 #include <machine_base/apic/ioapic.h>
 
+#if NPCI > 0
 #include "pcib_if.h"
+#endif
 
 #define I386_BUS_SPACE_IO       0       /* space is i/o space */
 #define I386_BUS_SPACE_MEM      1       /* space is mem space */
@@ -105,11 +109,13 @@ static    int nexus_set_resource(device_t, device_t, int, int, u_long, u_long,
 static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *);
 static void nexus_delete_resource(device_t, device_t, int, int);
 
+#if NPCI > 0
 static int nexus_alloc_msi(device_t, device_t, int, int, int *, int);
 static int nexus_release_msi(device_t, device_t, int, int *, int);
 static int nexus_map_msi(device_t, device_t, int, uint64_t *, uint32_t *, int);
 static int nexus_alloc_msix(device_t, device_t, int *, int);
 static int nexus_release_msix(device_t, device_t, int, int);
+#endif
 
 /*
  * The device_identify method will cause nexus to automatically associate
@@ -141,11 +147,13 @@ static device_method_t nexus_methods[] = {
        DEVMETHOD(bus_get_resource,     nexus_get_resource),
        DEVMETHOD(bus_delete_resource,  nexus_delete_resource),
 
+#if NPCI > 0
        DEVMETHOD(pcib_alloc_msi,       nexus_alloc_msi),
        DEVMETHOD(pcib_release_msi,     nexus_release_msi),
        DEVMETHOD(pcib_map_msi,         nexus_map_msi),
        DEVMETHOD(pcib_alloc_msix,      nexus_alloc_msix),
        DEVMETHOD(pcib_release_msix,    nexus_release_msix),
+#endif
 
        { 0, 0 }
 };
@@ -574,6 +582,7 @@ nexus_delete_resource(device_t dev, device_t child, int type, int rid)
        resource_list_delete(rl, type, rid);
 }
 
+#if NPCI > 0
 static int
 nexus_alloc_msi(device_t dev, device_t child, int count, int maxcount,
     int *irqs, int cpuid)
@@ -617,3 +626,4 @@ nexus_release_msix(device_t dev, device_t child, int irq, int cpuid)
        MachIntrABI.msix_release(irq, cpuid);
        return 0;
 }
+#endif