From b715e902fe3ed6b43a9b35977c3fe58d08f271d1 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Fri, 11 Nov 2005 12:51:08 -0600 Subject: [PATCH 01/19] Fix region0 virtual accesses Signed-off by: Dan Magenheimer --- xen/arch/ia64/xen/regionreg.c | 6 ------ xen/arch/ia64/xen/vcpu.c | 40 ++++++++++++++++++++++++----------- 2 files changed, 28 insertions(+), 18 deletions(-) diff --git a/xen/arch/ia64/xen/regionreg.c b/xen/arch/ia64/xen/regionreg.c index 35277513c2..0629aa2d4e 100644 --- a/xen/arch/ia64/xen/regionreg.c +++ b/xen/arch/ia64/xen/regionreg.c @@ -190,12 +190,6 @@ set_rr(unsigned long rr, unsigned long rrval) ia64_srlz_d(); } -unsigned long -get_rr(unsigned long rr) -{ - return vmUnmangleRID(ia64_get_rr(rr)); -} - static inline int validate_page_size(unsigned long ps) { switch(ps) { diff --git a/xen/arch/ia64/xen/vcpu.c b/xen/arch/ia64/xen/vcpu.c index f59ad244e2..d39e4aae7c 100644 --- a/xen/arch/ia64/xen/vcpu.c +++ b/xen/arch/ia64/xen/vcpu.c @@ -1256,7 +1256,6 @@ IA64FAULT vcpu_thash(VCPU *vcpu, UINT64 vadr, UINT64 *pval) UINT64 Mask = (1L << pta_sz) - 1; UINT64 Mask_60_15 = (Mask >> 15) & 0x3fffffffffff; UINT64 compMask_60_15 = ~Mask_60_15; - //UINT64 rr_ps = RR_TO_PS(get_rr(vadr)); UINT64 rr_ps = vcpu_get_rr_ps(vcpu,vadr); UINT64 VHPT_offset = (vadr >> rr_ps) << 3; UINT64 VHPT_addr1 = vadr & 0xe000000000000000L; @@ -1287,27 +1286,37 @@ unsigned long fast_vhpt_translate_count = 0; unsigned long recover_to_page_fault_count = 0; unsigned long recover_to_break_fault_count = 0; +int warn_region0_address = 0; // FIXME later: tie to a boot parameter? + IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address, BOOLEAN is_data, UINT64 *pteval, UINT64 *itir, UINT64 *iha) { unsigned long pta, pte, rid, rr; int i; TR_ENTRY *trp; - if (!(address >> 61)) { - if (!PSCB(vcpu,metaphysical_mode)) { - REGS *regs = vcpu_regs(vcpu); - unsigned long viip = PSCB(vcpu,iip); - unsigned long vipsr = PSCB(vcpu,ipsr); - unsigned long iip = regs->cr_iip; - unsigned long ipsr = regs->cr_ipsr; - printk("vcpu_translate: bad address %p, viip=%p, vipsr=%p, iip=%p, ipsr=%p continuing\n", address, viip, vipsr, iip, ipsr); + if (PSCB(vcpu,metaphysical_mode)) { + unsigned long region = address >> 61; + // dom0 may generate an uncacheable physical address (msb=1) + if (region && ((region != 4) || (vcpu->domain != dom0))) { +// FIXME: This seems to happen even though it shouldn't. Need to track +// this down, but since it has been apparently harmless, just flag it for now +// panic_domain(vcpu_regs(vcpu), + printk( + "vcpu_translate: bad physical address: %p\n",address); } - *pteval = (address & _PAGE_PPN_MASK) | __DIRTY_BITS | _PAGE_PL_2 | _PAGE_AR_RWX; *itir = PAGE_SHIFT << 2; phys_translate_count++; return IA64_NO_FAULT; } + else if (!(address >> 61) && warn_region0_address) { + REGS *regs = vcpu_regs(vcpu); + unsigned long viip = PSCB(vcpu,iip); + unsigned long vipsr = PSCB(vcpu,ipsr); + unsigned long iip = regs->cr_iip; + unsigned long ipsr = regs->cr_ipsr; + printk("vcpu_translate: bad address %p, viip=%p, vipsr=%p, iip=%p, ipsr=%p continuing\n", address, viip, vipsr, iip, ipsr); + } rr = PSCB(vcpu,rrs)[address>>61]; rid = rr & RR_RID_MASK; @@ -1685,7 +1694,7 @@ static void vcpu_set_tr_entry(TR_ENTRY *trp, UINT64 pte, UINT64 itir, UINT64 ifa UINT64 ps; trp->itir = itir; - trp->rid = virtualize_rid(current, get_rr(ifa) & RR_RID_MASK); + trp->rid = VCPU(current,rrs[ifa>>61]) & RR_RID_MASK; trp->p = 1; ps = trp->ps; trp->page_flags = pte; @@ -1760,7 +1769,8 @@ void vcpu_itc_no_srlz(VCPU *vcpu, UINT64 IorD, UINT64 vaddr, UINT64 pte, UINT64 // PAGE_SIZE mapping in the vhpt for now, else purging is complicated else vhpt_insert(vaddr,pte,PAGE_SHIFT<<2); #endif - if ((mp_pte == -1UL) || (IorD & 0x4)) return; // don't place in 1-entry TLB + if ((mp_pte == -1UL) || (IorD & 0x4)) // don't place in 1-entry TLB + return; if (IorD & 0x1) { vcpu_set_tr_entry(&PSCBX(vcpu,itlb),pte,ps<<2,vaddr); PSCBX(vcpu,itlb_pte) = mp_pte; @@ -1775,6 +1785,7 @@ IA64FAULT vcpu_itc_d(VCPU *vcpu, UINT64 pte, UINT64 itir, UINT64 ifa) { unsigned long pteval, logps = (itir >> 2) & 0x3f; unsigned long translate_domain_pte(UINT64,UINT64,UINT64); + BOOLEAN swap_rr0 = (!(ifa>>61) && PSCB(vcpu,metaphysical_mode)); if (logps < PAGE_SHIFT) { printf("vcpu_itc_d: domain trying to use smaller page size!\n"); @@ -1784,7 +1795,9 @@ IA64FAULT vcpu_itc_d(VCPU *vcpu, UINT64 pte, UINT64 itir, UINT64 ifa) //itir = (itir & ~0xfc) | (PAGE_SHIFT<<2); // ignore domain's pagesize pteval = translate_domain_pte(pte,ifa,itir); if (!pteval) return IA64_ILLOP_FAULT; + if (swap_rr0) set_one_rr(0x0,PSCB(vcpu,rrs[0])); vcpu_itc_no_srlz(vcpu,2,ifa,pteval,pte,logps); + if (swap_rr0) set_metaphysical_rr0(); return IA64_NO_FAULT; } @@ -1792,6 +1805,7 @@ IA64FAULT vcpu_itc_i(VCPU *vcpu, UINT64 pte, UINT64 itir, UINT64 ifa) { unsigned long pteval, logps = (itir >> 2) & 0x3f; unsigned long translate_domain_pte(UINT64,UINT64,UINT64); + BOOLEAN swap_rr0 = (!(ifa>>61) && PSCB(vcpu,metaphysical_mode)); // FIXME: validate ifa here (not in Xen space), COULD MACHINE CHECK! if (logps < PAGE_SHIFT) { @@ -1803,7 +1817,9 @@ IA64FAULT vcpu_itc_i(VCPU *vcpu, UINT64 pte, UINT64 itir, UINT64 ifa) pteval = translate_domain_pte(pte,ifa,itir); // FIXME: what to do if bad physical address? (machine check?) if (!pteval) return IA64_ILLOP_FAULT; + if (swap_rr0) set_one_rr(0x0,PSCB(vcpu,rrs[0])); vcpu_itc_no_srlz(vcpu, 1,ifa,pteval,pte,logps); + if (swap_rr0) set_metaphysical_rr0(); return IA64_NO_FAULT; } From d789b2eb4d1d8ac2faab73755f4404a12534ed6a Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Fri, 11 Nov 2005 13:05:38 -0600 Subject: [PATCH 02/19] Punt to slow path for itc.i/d for region0 to avoid metaphys problem Signed-off by: Dan Magenheimer --- xen/arch/ia64/xen/hyperprivop.S | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/xen/arch/ia64/xen/hyperprivop.S b/xen/arch/ia64/xen/hyperprivop.S index 87ec9060c6..bfcd9c4576 100644 --- a/xen/arch/ia64/xen/hyperprivop.S +++ b/xen/arch/ia64/xen/hyperprivop.S @@ -1966,6 +1966,12 @@ ENTRY(hyper_itc_d) ld8 r23=[r23];; extr.u r24=r23,2,6;; // r24==logps cmp.gt p7,p0=PAGE_SHIFT,r24 +(p7) br.spnt.many dispatch_break_fault ;; + adds r21=XSI_IFA_OFS-XSI_PSR_IC_OFS,r18 ;; + ld8 r21=[r21];; + // for now, punt on region0 inserts + extr.u r21=r21,61,3;; + cmp.eq p7,p0=r21,r0 (p7) br.spnt.many dispatch_break_fault ;; movl r27=THIS_CPU(cpu_kr)+IA64_KR_CURRENT_OFFSET;; ld8 r27=[r27];; From 450ffa8c6abf452cb3c2630544485eb0ad0f09be Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Fri, 11 Nov 2005 13:23:04 -0600 Subject: [PATCH 03/19] Fix delivery of nat consumption faults (still chatty) Signed-off by: Dan Magenheimer --- xen/arch/ia64/xen/process.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/xen/arch/ia64/xen/process.c b/xen/arch/ia64/xen/process.c index 2f8b84c9a7..cfe91e4ef4 100644 --- a/xen/arch/ia64/xen/process.c +++ b/xen/arch/ia64/xen/process.c @@ -743,10 +743,15 @@ ia64_handle_reflection (unsigned long ifa, struct pt_regs *regs, unsigned long i vector = IA64_DISABLED_FPREG_VECTOR; break; case 26: + if (((isr >> 4L) & 0xfL) == 1) { + //regs->eml_unat = 0; FIXME: DO WE NEED THIS?? + printf("ia64_handle_reflection: handling regNaT fault"); + vector = IA64_NAT_CONSUMPTION_VECTOR; break; + } printf("*** NaT fault... attempting to handle as privop\n"); printf("isr=%p, ifa=%p,iip=%p,ipsr=%p\n",isr,ifa,regs->cr_iip,psr); - regs->eml_unat = 0; - return; + //regs->eml_unat = 0; FIXME: DO WE NEED THIS??? + // certain NaT faults are higher priority than privop faults vector = priv_emulate(v,regs,isr); if (vector == IA64_NO_FAULT) { printf("*** Handled privop masquerading as NaT fault\n"); From f4307fdf3af16e860a1f7031b99b541192e593a2 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Mon, 14 Nov 2005 11:41:41 -0600 Subject: [PATCH 04/19] Support dom0_mem parameter at boot option (by Masaki Kanno) Usage is the likely same as that of x86. ex. append="dom0_mem=768M ..." (Also dom0_align parameter added by Dan Magenheimer) Signed-off-by Masaki Kanno Signed-off-by: Dan Magenheimer --- xen/arch/ia64/xen/domain.c | 57 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 54 insertions(+), 3 deletions(-) diff --git a/xen/arch/ia64/xen/domain.c b/xen/arch/ia64/xen/domain.c index 15920ca8a0..dfefe72dc2 100644 --- a/xen/arch/ia64/xen/domain.c +++ b/xen/arch/ia64/xen/domain.c @@ -11,6 +11,7 @@ */ #include +#include #include #include #include @@ -48,9 +49,8 @@ #define CONFIG_DOMAIN0_CONTIGUOUS unsigned long dom0_start = -1L; -unsigned long dom0_size = 512*1024*1024; //FIXME: Should be configurable -//FIXME: alignment should be 256MB, lest Linux use a 256MB page size -unsigned long dom0_align = 256*1024*1024; +unsigned long dom0_size = 512*1024*1024; +unsigned long dom0_align = 64*1024*1024; #ifdef DOMU_BUILD_STAGING unsigned long domU_staging_size = 32*1024*1024; //FIXME: Should be configurable unsigned long domU_staging_start; @@ -1154,3 +1154,54 @@ void sync_vcpu_execstate(struct vcpu *v) } // FIXME SMP: Anything else needed here for SMP? } + +// FIXME: It would be nice to print out a nice error message for bad +// values of these boot-time parameters, but it seems we are too early +// in the boot and attempts to print freeze the system? +#define abort(x...) do {} while(0) +#define warn(x...) do {} while(0) + +static void parse_dom0_mem(char *s) +{ + unsigned long bytes = parse_size_and_unit(s); + + if (dom0_size < 4 * 1024 * 1024) { + abort("parse_dom0_mem: too small, boot aborted" + " (try e.g. dom0_mem=256M or dom0_mem=65536K)\n"); + } + if (dom0_size % dom0_align) { + dom0_size = ((dom0_size / dom0_align) + 1) * dom0_align; + warn("parse_dom0_mem: dom0_size rounded up from" + " %lx to %lx bytes, due to dom0_align=%lx\n", + bytes,dom0_size,dom0_align); + } + else dom0_size = bytes; +} +custom_param("dom0_mem", parse_dom0_mem); + + +static void parse_dom0_align(char *s) +{ + unsigned long bytes = parse_size_and_unit(s); + + if ((bytes - 1) ^ bytes) { /* not a power of two */ + abort("parse_dom0_align: dom0_align must be power of two, " + "boot aborted" + " (try e.g. dom0_align=256M or dom0_align=65536K)\n"); + } + else if (bytes < PAGE_SIZE) { + abort("parse_dom0_align: dom0_align must be >= %ld, " + "boot aborted" + " (try e.g. dom0_align=256M or dom0_align=65536K)\n", + PAGE_SIZE); + } + else dom0_align = bytes; + if (dom0_size % dom0_align) { + dom0_size = (dom0_size / dom0_align + 1) * dom0_align; + warn("parse_dom0_align: dom0_size rounded up from" + " %ld to %ld bytes, due to dom0_align=%lx\n", + bytes,dom0_size,dom0_align); + } +} +custom_param("dom0_align", parse_dom0_align); + From 7ee451de31ad5d10e27157c85cd45a62909ba1e3 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Wed, 16 Nov 2005 16:44:49 -0600 Subject: [PATCH 05/19] Fix problem if itlb miss occurs when in metaphysical mode --- xen/arch/ia64/xen/vcpu.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/arch/ia64/xen/vcpu.c b/xen/arch/ia64/xen/vcpu.c index d39e4aae7c..9f2b0a186b 100644 --- a/xen/arch/ia64/xen/vcpu.c +++ b/xen/arch/ia64/xen/vcpu.c @@ -1290,12 +1290,12 @@ int warn_region0_address = 0; // FIXME later: tie to a boot parameter? IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address, BOOLEAN is_data, UINT64 *pteval, UINT64 *itir, UINT64 *iha) { + unsigned long region = address >> 61; unsigned long pta, pte, rid, rr; int i; TR_ENTRY *trp; - if (PSCB(vcpu,metaphysical_mode)) { - unsigned long region = address >> 61; + if (PSCB(vcpu,metaphysical_mode) && !(!is_data && region)) { // dom0 may generate an uncacheable physical address (msb=1) if (region && ((region != 4) || (vcpu->domain != dom0))) { // FIXME: This seems to happen even though it shouldn't. Need to track @@ -1309,7 +1309,7 @@ IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address, BOOLEAN is_data, UINT64 *pt phys_translate_count++; return IA64_NO_FAULT; } - else if (!(address >> 61) && warn_region0_address) { + else if (!region && warn_region0_address) { REGS *regs = vcpu_regs(vcpu); unsigned long viip = PSCB(vcpu,iip); unsigned long vipsr = PSCB(vcpu,ipsr); @@ -1318,7 +1318,7 @@ IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address, BOOLEAN is_data, UINT64 *pt printk("vcpu_translate: bad address %p, viip=%p, vipsr=%p, iip=%p, ipsr=%p continuing\n", address, viip, vipsr, iip, ipsr); } - rr = PSCB(vcpu,rrs)[address>>61]; + rr = PSCB(vcpu,rrs)[region]; rid = rr & RR_RID_MASK; if (is_data) { if (vcpu_quick_region_check(vcpu->arch.dtr_regions,address)) { From c538d1512bd998585f13abfeb139f9c530c9c26a Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Wed, 16 Nov 2005 16:59:41 -0600 Subject: [PATCH 06/19] Enable generic build for dom0 and build for domU with CONFIG_VT forced off --- linux-2.6-xen-sparse/arch/ia64/Kconfig | 17 +- linux-2.6-xen-sparse/arch/ia64/Makefile | 2 +- .../arch/xen/configs/xen0_defconfig_ia64 | 531 ++++--- .../arch/xen/configs/xenU_defconfig_ia64 | 1260 +++++++++++++++++ 4 files changed, 1525 insertions(+), 285 deletions(-) create mode 100644 linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 diff --git a/linux-2.6-xen-sparse/arch/ia64/Kconfig b/linux-2.6-xen-sparse/arch/ia64/Kconfig index bab58a8a98..3b96f6ba80 100644 --- a/linux-2.6-xen-sparse/arch/ia64/Kconfig +++ b/linux-2.6-xen-sparse/arch/ia64/Kconfig @@ -60,8 +60,8 @@ config ARCH_XEN TEMP ONLY. Needs to be on for drivers/xen to build. config XEN_PRIVILEGED_GUEST - bool - default y + bool "Privileged Guest" + default n help Used in drivers/xen/privcmd.c. Should go away? @@ -80,6 +80,19 @@ config XEN_BLKDEV_FRONTEND bool default y +config XEN_VT + bool "Override for turning on CONFIG_VT for domU" + default y + help + Hack to turn off CONFIG_VT for domU + +config VT + bool + default y if XEN && XEN_VT + default n if XEN && !XEN_VT + help + Hack to turn off CONFIG_VT for domU + config SCHED_NO_NO_OMIT_FRAME_POINTER bool default y diff --git a/linux-2.6-xen-sparse/arch/ia64/Makefile b/linux-2.6-xen-sparse/arch/ia64/Makefile index 6e46f892de..082b09cac4 100644 --- a/linux-2.6-xen-sparse/arch/ia64/Makefile +++ b/linux-2.6-xen-sparse/arch/ia64/Makefile @@ -60,7 +60,7 @@ core-$(CONFIG_IA64_GENERIC) += arch/ia64/dig/ core-$(CONFIG_IA64_HP_ZX1) += arch/ia64/dig/ core-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/dig/ core-$(CONFIG_IA64_SGI_SN2) += arch/ia64/sn/ -core-$(CONFIG_XEN) += arch/ia64/xen/ arch/ia64/hp/sim/ +core-$(CONFIG_XEN) += arch/ia64/xen/ drivers-$(CONFIG_PCI) += arch/ia64/pci/ drivers-$(CONFIG_IA64_HP_SIM) += arch/ia64/hp/sim/ diff --git a/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 b/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 index b26686a525..7b5170cab9 100644 --- a/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 +++ b/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 @@ -1,37 +1,35 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.12 -# Thu Sep 15 11:04:33 2005 +# Linux kernel version: 2.6.12.6-xen0 +# Wed Nov 16 15:26:28 2005 # # # Code maturity level options # CONFIG_EXPERIMENTAL=y -# CONFIG_CLEAN_COMPILE is not set -CONFIG_BROKEN=y -CONFIG_BROKEN_ON_SMP=y +CONFIG_CLEAN_COMPILE=y CONFIG_LOCK_KERNEL=y CONFIG_INIT_ENV_ARG_LIMIT=32 # # General setup # -CONFIG_LOCALVERSION="xen" +CONFIG_LOCALVERSION="" CONFIG_SWAP=y CONFIG_SYSVIPC=y -# CONFIG_POSIX_MQUEUE is not set -CONFIG_BSD_PROCESS_ACCT=y -# CONFIG_BSD_PROCESS_ACCT_V3 is not set +CONFIG_POSIX_MQUEUE=y +# CONFIG_BSD_PROCESS_ACCT is not set CONFIG_SYSCTL=y # CONFIG_AUDIT is not set CONFIG_HOTPLUG=y CONFIG_KOBJECT_UEVENT=y -# CONFIG_IKCONFIG is not set +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y # CONFIG_CPUSETS is not set # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y -# CONFIG_KALLSYMS_ALL is not set +CONFIG_KALLSYMS_ALL=y # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_PRINTK=y CONFIG_BUG=y @@ -50,11 +48,13 @@ CONFIG_BASE_SMALL=0 # Loadable module support # CONFIG_MODULES=y -# CONFIG_MODULE_UNLOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set CONFIG_OBSOLETE_MODPARM=y -# CONFIG_MODVERSIONS is not set +CONFIG_MODVERSIONS=y # CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_KMOD is not set +CONFIG_KMOD=y +CONFIG_STOP_MACHINE=y # # Processor type and features @@ -68,14 +68,16 @@ CONFIG_TIME_INTERPOLATION=y CONFIG_EFI=y CONFIG_GENERIC_IOMAP=y CONFIG_XEN=y +CONFIG_XEN_VT=y CONFIG_ARCH_XEN=y CONFIG_XEN_PRIVILEGED_GUEST=y CONFIG_XEN_PHYSDEV_ACCESS=y CONFIG_XEN_BLKDEV_GRANT=y +CONFIG_XEN_BLKDEV_FRONTEND=y CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y -# CONFIG_IA64_GENERIC is not set +CONFIG_IA64_GENERIC=y # CONFIG_IA64_DIG is not set -CONFIG_IA64_HP_ZX1=y +# CONFIG_IA64_HP_ZX1 is not set # CONFIG_IA64_HP_ZX1_SWIOTLB is not set # CONFIG_IA64_SGI_SN2 is not set # CONFIG_IA64_HP_SIM is not set @@ -86,15 +88,16 @@ CONFIG_MCKINLEY=y CONFIG_IA64_PAGE_SIZE_16KB=y # CONFIG_IA64_PAGE_SIZE_64KB is not set CONFIG_IA64_L1_CACHE_SHIFT=7 -# CONFIG_NUMA is not set +CONFIG_NUMA=y CONFIG_VIRTUAL_MEM_MAP=y CONFIG_HOLES_IN_ZONE=y -# CONFIG_IA64_CYCLONE is not set +CONFIG_DISCONTIGMEM=y +CONFIG_IA64_CYCLONE=y CONFIG_IOSAPIC=y CONFIG_FORCE_MAX_ZONEORDER=18 CONFIG_SMP=y -CONFIG_NR_CPUS=16 -# CONFIG_HOTPLUG_CPU is not set +CONFIG_NR_CPUS=512 +CONFIG_HOTPLUG_CPU=y # CONFIG_SCHED_SMT is not set # CONFIG_PREEMPT is not set CONFIG_HAVE_DEC_LOCK=y @@ -124,17 +127,19 @@ CONFIG_ACPI=y CONFIG_ACPI_BOOT=y CONFIG_ACPI_INTERPRETER=y CONFIG_ACPI_BUTTON=y -# CONFIG_ACPI_VIDEO is not set +CONFIG_ACPI_VIDEO=y CONFIG_ACPI_FAN=y CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_HOTPLUG_CPU=y CONFIG_ACPI_THERMAL=y +CONFIG_ACPI_NUMA=y CONFIG_ACPI_BLACKLIST_YEAR=0 # CONFIG_ACPI_DEBUG is not set CONFIG_ACPI_BUS=y CONFIG_ACPI_POWER=y CONFIG_ACPI_PCI=y CONFIG_ACPI_SYSTEM=y -# CONFIG_ACPI_CONTAINER is not set +CONFIG_ACPI_CONTAINER=y # # Bus options (PCI, PCMCIA) @@ -197,8 +202,8 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_BLK_DEV_UMEM is not set # CONFIG_BLK_DEV_COW_COMMON is not set CONFIG_BLK_DEV_LOOP=y -# CONFIG_BLK_DEV_CRYPTOLOOP is not set -# CONFIG_BLK_DEV_NBD is not set +CONFIG_BLK_DEV_CRYPTOLOOP=y +CONFIG_BLK_DEV_NBD=y # CONFIG_BLK_DEV_SX8 is not set # CONFIG_BLK_DEV_UB is not set CONFIG_BLK_DEV_RAM=y @@ -220,7 +225,60 @@ CONFIG_IOSCHED_CFQ=y # # ATA/ATAPI/MFM/RLL support # -# CONFIG_IDE is not set +CONFIG_IDE=y +CONFIG_BLK_DEV_IDE=y + +# +# Please see Documentation/ide.txt for help/info on IDE drives +# +# CONFIG_BLK_DEV_IDE_SATA is not set +CONFIG_BLK_DEV_IDEDISK=y +# CONFIG_IDEDISK_MULTI_MODE is not set +CONFIG_BLK_DEV_IDECD=y +# CONFIG_BLK_DEV_IDETAPE is not set +CONFIG_BLK_DEV_IDEFLOPPY=y +CONFIG_BLK_DEV_IDESCSI=y +# CONFIG_IDE_TASK_IOCTL is not set + +# +# IDE chipset support/bugfixes +# +CONFIG_IDE_GENERIC=y +CONFIG_BLK_DEV_IDEPCI=y +# CONFIG_IDEPCI_SHARE_IRQ is not set +# CONFIG_BLK_DEV_OFFBOARD is not set +CONFIG_BLK_DEV_GENERIC=y +# CONFIG_BLK_DEV_OPTI621 is not set +CONFIG_BLK_DEV_IDEDMA_PCI=y +# CONFIG_BLK_DEV_IDEDMA_FORCED is not set +CONFIG_IDEDMA_PCI_AUTO=y +# CONFIG_IDEDMA_ONLYDISK is not set +# CONFIG_BLK_DEV_AEC62XX is not set +# CONFIG_BLK_DEV_ALI15X3 is not set +# CONFIG_BLK_DEV_AMD74XX is not set +CONFIG_BLK_DEV_CMD64X=y +# CONFIG_BLK_DEV_TRIFLEX is not set +# CONFIG_BLK_DEV_CY82C693 is not set +# CONFIG_BLK_DEV_CS5520 is not set +# CONFIG_BLK_DEV_CS5530 is not set +# CONFIG_BLK_DEV_HPT34X is not set +# CONFIG_BLK_DEV_HPT366 is not set +# CONFIG_BLK_DEV_SC1200 is not set +CONFIG_BLK_DEV_PIIX=y +# CONFIG_BLK_DEV_NS87415 is not set +# CONFIG_BLK_DEV_PDC202XX_OLD is not set +# CONFIG_BLK_DEV_PDC202XX_NEW is not set +# CONFIG_BLK_DEV_SVWKS is not set +CONFIG_BLK_DEV_SGIIOC4=y +# CONFIG_BLK_DEV_SIIMAGE is not set +# CONFIG_BLK_DEV_SLC90E66 is not set +# CONFIG_BLK_DEV_TRM290 is not set +# CONFIG_BLK_DEV_VIA82CXXX is not set +# CONFIG_IDE_ARM is not set +CONFIG_BLK_DEV_IDEDMA=y +# CONFIG_IDEDMA_IVB is not set +CONFIG_IDEDMA_AUTO=y +# CONFIG_BLK_DEV_HD is not set # # SCSI device support @@ -233,23 +291,23 @@ CONFIG_SCSI_PROC_FS=y # CONFIG_BLK_DEV_SD=y CONFIG_CHR_DEV_ST=y -CONFIG_CHR_DEV_OSST=y +# CONFIG_CHR_DEV_OSST is not set CONFIG_BLK_DEV_SR=y -CONFIG_BLK_DEV_SR_VENDOR=y +# CONFIG_BLK_DEV_SR_VENDOR is not set CONFIG_CHR_DEV_SG=y # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # -CONFIG_SCSI_MULTI_LUN=y -CONFIG_SCSI_CONSTANTS=y -CONFIG_SCSI_LOGGING=y +# CONFIG_SCSI_MULTI_LUN is not set +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set # # SCSI Transport Attributes # CONFIG_SCSI_SPI_ATTRS=y -# CONFIG_SCSI_FC_ATTRS is not set +CONFIG_SCSI_FC_ATTRS=y # CONFIG_SCSI_ISCSI_ATTRS is not set # @@ -262,13 +320,10 @@ CONFIG_SCSI_SPI_ATTRS=y # CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set -# CONFIG_SCSI_ADVANSYS is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set -# CONFIG_SCSI_CPQFCTS is not set # CONFIG_SCSI_DMX3191D is not set -# CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INITIO is not set @@ -279,17 +334,15 @@ CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set # CONFIG_SCSI_IPR is not set -# CONFIG_SCSI_PCI2000 is not set -# CONFIG_SCSI_PCI2220I is not set -# CONFIG_SCSI_QLOGIC_ISP is not set -# CONFIG_SCSI_QLOGIC_FC is not set +CONFIG_SCSI_QLOGIC_FC=y +# CONFIG_SCSI_QLOGIC_FC_FIRMWARE is not set CONFIG_SCSI_QLOGIC_1280=y # CONFIG_SCSI_QLOGIC_1280_1040 is not set CONFIG_SCSI_QLA2XXX=y -# CONFIG_SCSI_QLA21XX is not set -# CONFIG_SCSI_QLA22XX is not set -# CONFIG_SCSI_QLA2300 is not set -# CONFIG_SCSI_QLA2322 is not set +CONFIG_SCSI_QLA21XX=y +CONFIG_SCSI_QLA22XX=y +CONFIG_SCSI_QLA2300=y +CONFIG_SCSI_QLA2322=y # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_LPFC is not set # CONFIG_SCSI_DC395x is not set @@ -299,7 +352,22 @@ CONFIG_SCSI_QLA2XXX=y # # Multi-device support (RAID and LVM) # -# CONFIG_MD is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=y +CONFIG_MD_LINEAR=y +CONFIG_MD_RAID0=y +CONFIG_MD_RAID1=y +# CONFIG_MD_RAID10 is not set +CONFIG_MD_RAID5=y +CONFIG_MD_RAID6=y +CONFIG_MD_MULTIPATH=y +# CONFIG_MD_FAULTY is not set +CONFIG_BLK_DEV_DM=y +CONFIG_DM_CRYPT=y +CONFIG_DM_SNAPSHOT=y +CONFIG_DM_MIRROR=y +CONFIG_DM_ZERO=y +# CONFIG_DM_MULTIPATH is not set # # Fusion MPT device support @@ -337,33 +405,16 @@ CONFIG_IP_MULTICAST=y # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_IP_MROUTE is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set +CONFIG_ARPD=y +CONFIG_SYN_COOKIES=y # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set -# CONFIG_IP_TCPDIAG is not set +CONFIG_IP_TCPDIAG=y # CONFIG_IP_TCPDIAG_IPV6 is not set - -# -# IP: Virtual Server Configuration -# -# CONFIG_IP_VS is not set # CONFIG_IPV6 is not set -CONFIG_NETFILTER=y -# CONFIG_NETFILTER_DEBUG is not set - -# -# IP: Netfilter Configuration -# -# CONFIG_IP_NF_CONNTRACK is not set -# CONFIG_IP_NF_CONNTRACK_MARK is not set -# CONFIG_IP_NF_QUEUE is not set -# CONFIG_IP_NF_IPTABLES is not set -CONFIG_IP_NF_ARPTABLES=y -# CONFIG_IP_NF_ARPFILTER is not set -# CONFIG_IP_NF_ARP_MANGLE is not set +# CONFIG_NETFILTER is not set # # SCTP Configuration (EXPERIMENTAL) @@ -392,8 +443,10 @@ CONFIG_IP_NF_ARPTABLES=y # Network testing # # CONFIG_NET_PKTGEN is not set -# CONFIG_NETPOLL is not set -# CONFIG_NET_POLL_CONTROLLER is not set +CONFIG_NETPOLL=y +# CONFIG_NETPOLL_RX is not set +# CONFIG_NETPOLL_TRAP is not set +CONFIG_NET_POLL_CONTROLLER=y # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set # CONFIG_BT is not set @@ -423,10 +476,9 @@ CONFIG_MII=y CONFIG_NET_TULIP=y # CONFIG_DE2104X is not set CONFIG_TULIP=y -CONFIG_TULIP_MWI=y -CONFIG_TULIP_MMIO=y -CONFIG_TULIP_NAPI=y -CONFIG_TULIP_NAPI_HW_MITIGATION=y +# CONFIG_TULIP_MWI is not set +# CONFIG_TULIP_MMIO is not set +# CONFIG_TULIP_NAPI is not set # CONFIG_DE4X5 is not set # CONFIG_WINBOND_840 is not set # CONFIG_DM9102 is not set @@ -438,7 +490,7 @@ CONFIG_NET_PCI=y # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_DGRS is not set -# CONFIG_EEPRO100 is not set +CONFIG_EEPRO100=y CONFIG_E100=y # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set @@ -492,7 +544,7 @@ CONFIG_TIGON3=y # CONFIG_SLIP is not set # CONFIG_NET_FC is not set # CONFIG_SHAPER is not set -# CONFIG_NETCONSOLE is not set +CONFIG_NETCONSOLE=y # # ISDN subsystem @@ -516,16 +568,24 @@ CONFIG_INPUT_MOUSEDEV=y CONFIG_INPUT_MOUSEDEV_PSAUX=y CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -CONFIG_INPUT_JOYDEV=y +# CONFIG_INPUT_JOYDEV is not set # CONFIG_INPUT_TSDEV is not set -CONFIG_INPUT_EVDEV=y +# CONFIG_INPUT_EVDEV is not set # CONFIG_INPUT_EVBUG is not set # # Input Device Drivers # -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set +CONFIG_INPUT_KEYBOARD=y +CONFIG_KEYBOARD_ATKBD=y +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_XTKBD is not set +# CONFIG_KEYBOARD_NEWTON is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=y +# CONFIG_MOUSE_SERIAL is not set +# CONFIG_MOUSE_VSXXXAA is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set # CONFIG_INPUT_MISC is not set @@ -534,17 +594,37 @@ CONFIG_INPUT_EVDEV=y # Hardware I/O ports # CONFIG_SERIO=y -# CONFIG_SERIO_I8042 is not set +CONFIG_SERIO_I8042=y # CONFIG_SERIO_SERPORT is not set # CONFIG_SERIO_PCIPS2 is not set +CONFIG_SERIO_LIBPS2=y # CONFIG_SERIO_RAW is not set -# CONFIG_GAMEPORT is not set +CONFIG_GAMEPORT=y +# CONFIG_GAMEPORT_NS558 is not set +# CONFIG_GAMEPORT_L4 is not set +# CONFIG_GAMEPORT_EMU10K1 is not set +# CONFIG_GAMEPORT_VORTEX is not set +# CONFIG_GAMEPORT_FM801 is not set +# CONFIG_GAMEPORT_CS461X is not set # # Character devices # -# CONFIG_VT is not set -# CONFIG_SERIAL_NONSTANDARD is not set +CONFIG_VT=y +CONFIG_VT_CONSOLE=y +CONFIG_HW_CONSOLE=y +CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_ROCKETPORT is not set +# CONFIG_CYCLADES is not set +# CONFIG_MOXA_SMARTIO is not set +# CONFIG_ISI is not set +# CONFIG_SYNCLINKMP is not set +# CONFIG_N_HDLC is not set +# CONFIG_SPECIALIX is not set +# CONFIG_SX is not set +# CONFIG_STALDRV is not set +CONFIG_SGI_SNSC=y +# CONFIG_SGI_TIOCX is not set # # Serial drivers @@ -552,7 +632,7 @@ CONFIG_SERIO=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_ACPI=y -CONFIG_SERIAL_8250_NR_UARTS=8 +CONFIG_SERIAL_8250_NR_UARTS=6 CONFIG_SERIAL_8250_EXTENDED=y CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_8250_DETECT_IRQ is not set @@ -564,6 +644,7 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_SERIAL_SGI_L1_CONSOLE=y # CONFIG_SERIAL_JSM is not set CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y @@ -588,17 +669,22 @@ CONFIG_EFI_RTC=y # Ftape, the floppy tape device driver # CONFIG_AGP=y +CONFIG_AGP_I460=y CONFIG_AGP_HP_ZX1=y +# CONFIG_AGP_SGI_TIOCA is not set CONFIG_DRM=y -# CONFIG_DRM_TDFX is not set -# CONFIG_DRM_GAMMA is not set -# CONFIG_DRM_R128 is not set +CONFIG_DRM_TDFX=y +CONFIG_DRM_R128=y CONFIG_DRM_RADEON=y -# CONFIG_DRM_MGA is not set -# CONFIG_DRM_SIS is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_HPET is not set +CONFIG_DRM_MGA=y +CONFIG_DRM_SIS=y +CONFIG_RAW_DRIVER=y +CONFIG_HPET=y +# CONFIG_HPET_RTC_IRQ is not set +CONFIG_HPET_MMAP=y +CONFIG_MAX_RAW_DEVS=256 # CONFIG_HANGCHECK_TIMER is not set +CONFIG_MMTIMER=y # # TPM devices @@ -608,89 +694,7 @@ CONFIG_DRM_RADEON=y # # I2C support # -CONFIG_I2C=y -CONFIG_I2C_CHARDEV=y - -# -# I2C Algorithms -# -CONFIG_I2C_ALGOBIT=y -CONFIG_I2C_ALGOPCF=y -# CONFIG_I2C_ALGOPCA is not set - -# -# I2C Hardware Bus support -# -# CONFIG_I2C_ALI1535 is not set -# CONFIG_I2C_ALI1563 is not set -# CONFIG_I2C_ALI15X3 is not set -# CONFIG_I2C_AMD756 is not set -# CONFIG_I2C_AMD8111 is not set -# CONFIG_I2C_I801 is not set -# CONFIG_I2C_I810 is not set -# CONFIG_I2C_PIIX4 is not set -# CONFIG_I2C_ISA is not set -# CONFIG_I2C_NFORCE2 is not set -# CONFIG_I2C_PARPORT_LIGHT is not set -# CONFIG_I2C_PROSAVAGE is not set -# CONFIG_I2C_SAVAGE4 is not set -# CONFIG_SCx200_ACB is not set -# CONFIG_I2C_SIS5595 is not set -# CONFIG_I2C_SIS630 is not set -# CONFIG_I2C_SIS96X is not set -# CONFIG_I2C_STUB is not set -# CONFIG_I2C_VIA is not set -# CONFIG_I2C_VIAPRO is not set -# CONFIG_I2C_VOODOO3 is not set -# CONFIG_I2C_PCA_ISA is not set - -# -# Hardware Sensors Chip support -# -# CONFIG_I2C_SENSOR is not set -# CONFIG_SENSORS_ADM1021 is not set -# CONFIG_SENSORS_ADM1025 is not set -# CONFIG_SENSORS_ADM1026 is not set -# CONFIG_SENSORS_ADM1031 is not set -# CONFIG_SENSORS_ASB100 is not set -# CONFIG_SENSORS_DS1621 is not set -# CONFIG_SENSORS_FSCHER is not set -# CONFIG_SENSORS_FSCPOS is not set -# CONFIG_SENSORS_GL518SM is not set -# CONFIG_SENSORS_GL520SM is not set -# CONFIG_SENSORS_IT87 is not set -# CONFIG_SENSORS_LM63 is not set -# CONFIG_SENSORS_LM75 is not set -# CONFIG_SENSORS_LM77 is not set -# CONFIG_SENSORS_LM78 is not set -# CONFIG_SENSORS_LM80 is not set -# CONFIG_SENSORS_LM83 is not set -# CONFIG_SENSORS_LM85 is not set -# CONFIG_SENSORS_LM87 is not set -# CONFIG_SENSORS_LM90 is not set -# CONFIG_SENSORS_LM92 is not set -# CONFIG_SENSORS_MAX1619 is not set -# CONFIG_SENSORS_PC87360 is not set -# CONFIG_SENSORS_SMSC47B397 is not set -# CONFIG_SENSORS_SIS5595 is not set -# CONFIG_SENSORS_SMSC47M1 is not set -# CONFIG_SENSORS_VIA686A is not set -# CONFIG_SENSORS_W83781D is not set -# CONFIG_SENSORS_W83L785TS is not set -# CONFIG_SENSORS_W83627HF is not set - -# -# Other I2C Chip support -# -# CONFIG_SENSORS_DS1337 is not set -# CONFIG_SENSORS_EEPROM is not set -# CONFIG_SENSORS_PCF8574 is not set -# CONFIG_SENSORS_PCF8591 is not set -# CONFIG_SENSORS_RTC8564 is not set -# CONFIG_I2C_DEBUG_CORE is not set -# CONFIG_I2C_DEBUG_ALGO is not set -# CONFIG_I2C_DEBUG_BUS is not set -# CONFIG_I2C_DEBUG_CHIP is not set +# CONFIG_I2C is not set # # Dallas's 1-wire bus @@ -704,37 +708,7 @@ CONFIG_I2C_ALGOPCF=y # # Multimedia devices # -CONFIG_VIDEO_DEV=y - -# -# Video For Linux -# - -# -# Video Adapters -# -# CONFIG_VIDEO_BT848 is not set -# CONFIG_VIDEO_CPIA is not set -# CONFIG_VIDEO_SAA5246A is not set -# CONFIG_VIDEO_SAA5249 is not set -# CONFIG_TUNER_3036 is not set -# CONFIG_VIDEO_STRADIS is not set -# CONFIG_VIDEO_ZORAN is not set -# CONFIG_VIDEO_ZR36120 is not set -# CONFIG_VIDEO_SAA7134 is not set -# CONFIG_VIDEO_MXB is not set -# CONFIG_VIDEO_DPC is not set -# CONFIG_VIDEO_HEXIUM_ORION is not set -# CONFIG_VIDEO_HEXIUM_GEMINI is not set -# CONFIG_VIDEO_CX88 is not set -# CONFIG_VIDEO_OVCAMCHIP is not set - -# -# Radio Adapters -# -# CONFIG_RADIO_GEMTEK_PCI is not set -# CONFIG_RADIO_MAXIRADIO is not set -# CONFIG_RADIO_MAESTRO is not set +# CONFIG_VIDEO_DEV is not set # # Digital Video Broadcasting Devices @@ -744,47 +718,13 @@ CONFIG_VIDEO_DEV=y # # Graphics support # -CONFIG_FB=y -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -CONFIG_FB_SOFT_CURSOR=y -# CONFIG_FB_MACMODES is not set -CONFIG_FB_MODE_HELPERS=y -# CONFIG_FB_TILEBLITTING is not set -# CONFIG_FB_CIRRUS is not set -# CONFIG_FB_PM2 is not set -# CONFIG_FB_CYBER2000 is not set -# CONFIG_FB_ASILIANT is not set -# CONFIG_FB_IMSTT is not set -# CONFIG_FB_NVIDIA is not set -# CONFIG_FB_RIVA is not set -# CONFIG_FB_MATROX is not set -# CONFIG_FB_RADEON_OLD is not set -CONFIG_FB_RADEON=y -CONFIG_FB_RADEON_I2C=y -CONFIG_FB_RADEON_DEBUG=y -# CONFIG_FB_ATY128 is not set -# CONFIG_FB_ATY is not set -# CONFIG_FB_SAVAGE is not set -# CONFIG_FB_SIS is not set -# CONFIG_FB_NEOMAGIC is not set -# CONFIG_FB_KYRO is not set -# CONFIG_FB_3DFX is not set -# CONFIG_FB_VOODOO1 is not set -# CONFIG_FB_TRIDENT is not set -# CONFIG_FB_PM3 is not set -# CONFIG_FB_S1D13XXX is not set -# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB is not set # -# Logo configuration +# Console display driver support # -CONFIG_LOGO=y -# CONFIG_LOGO_LINUX_MONO is not set -# CONFIG_LOGO_LINUX_VGA16 is not set -CONFIG_LOGO_LINUX_CLUT224=y -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set +CONFIG_VGA_CONSOLE=y +CONFIG_DUMMY_CONSOLE=y # # Sound @@ -800,12 +740,12 @@ CONFIG_SND_PCM=y CONFIG_SND_HWDEP=y CONFIG_SND_RAWMIDI=y CONFIG_SND_SEQUENCER=y -# CONFIG_SND_SEQ_DUMMY is not set +CONFIG_SND_SEQ_DUMMY=y CONFIG_SND_OSSEMUL=y CONFIG_SND_MIXER_OSS=y CONFIG_SND_PCM_OSS=y CONFIG_SND_SEQUENCER_OSS=y -# CONFIG_SND_VERBOSE_PRINTK is not set +CONFIG_SND_VERBOSE_PRINTK=y # CONFIG_SND_DEBUG is not set # @@ -813,11 +753,11 @@ CONFIG_SND_SEQUENCER_OSS=y # CONFIG_SND_MPU401_UART=y CONFIG_SND_OPL3_LIB=y -# CONFIG_SND_DUMMY is not set -# CONFIG_SND_VIRMIDI is not set -# CONFIG_SND_MTPAV is not set -# CONFIG_SND_SERIAL_U16550 is not set -# CONFIG_SND_MPU401 is not set +CONFIG_SND_DUMMY=y +CONFIG_SND_VIRMIDI=y +CONFIG_SND_MTPAV=y +CONFIG_SND_SERIAL_U16550=y +CONFIG_SND_MPU401=y # # PCI devices @@ -831,9 +771,10 @@ CONFIG_SND_AC97_CODEC=y # CONFIG_SND_AU8830 is not set # CONFIG_SND_AZT3328 is not set # CONFIG_SND_BT87X is not set -# CONFIG_SND_CS46XX is not set -# CONFIG_SND_CS4281 is not set -# CONFIG_SND_EMU10K1 is not set +CONFIG_SND_CS46XX=y +CONFIG_SND_CS46XX_NEW_DSP=y +CONFIG_SND_CS4281=y +CONFIG_SND_EMU10K1=y # CONFIG_SND_EMU10K1X is not set # CONFIG_SND_CA0106 is not set # CONFIG_SND_KORG1212 is not set @@ -853,7 +794,7 @@ CONFIG_SND_AC97_CODEC=y # CONFIG_SND_ES1968 is not set # CONFIG_SND_MAESTRO3 is not set CONFIG_SND_FM801=y -CONFIG_SND_FM801_TEA575X=y +# CONFIG_SND_FM801_TEA575X is not set # CONFIG_SND_ICE1712 is not set # CONFIG_SND_ICE1724 is not set # CONFIG_SND_INTEL8X0 is not set @@ -885,8 +826,8 @@ CONFIG_USB=y # # Miscellaneous USB options # -# CONFIG_USB_DEVICEFS is not set -CONFIG_USB_BANDWIDTH=y +CONFIG_USB_DEVICEFS=y +# CONFIG_USB_BANDWIDTH is not set # CONFIG_USB_DYNAMIC_MINORS is not set # CONFIG_USB_SUSPEND is not set # CONFIG_USB_OTG is not set @@ -919,6 +860,7 @@ CONFIG_USB_STORAGE=y # CONFIG_USB_STORAGE_DEBUG is not set # CONFIG_USB_STORAGE_DATAFAB is not set # CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set # CONFIG_USB_STORAGE_DPCM is not set # CONFIG_USB_STORAGE_USBAT is not set # CONFIG_USB_STORAGE_SDDR09 is not set @@ -931,7 +873,7 @@ CONFIG_USB_STORAGE=y CONFIG_USB_HID=y CONFIG_USB_HIDINPUT=y # CONFIG_HID_FF is not set -CONFIG_USB_HIDDEV=y +# CONFIG_USB_HIDDEV is not set # CONFIG_USB_AIPTEK is not set # CONFIG_USB_WACOM is not set # CONFIG_USB_KBTAB is not set @@ -951,15 +893,10 @@ CONFIG_USB_HIDDEV=y # USB Multimedia devices # # CONFIG_USB_DABUSB is not set -# CONFIG_USB_VICAM is not set -# CONFIG_USB_DSBR is not set -# CONFIG_USB_IBMCAM is not set -# CONFIG_USB_KONICAWC is not set -# CONFIG_USB_OV511 is not set -# CONFIG_USB_SE401 is not set -# CONFIG_USB_SN9C102 is not set -# CONFIG_USB_STV680 is not set -# CONFIG_USB_PWC is not set + +# +# Video4Linux support is needed for USB Multimedia device support +# # # USB Network Adapters @@ -995,6 +932,7 @@ CONFIG_USB_MON=y # CONFIG_USB_PHIDGETSERVO is not set # CONFIG_USB_IDMOUSE is not set # CONFIG_USB_SISUSBVGA is not set +# CONFIG_USB_TEST is not set # # USB ATM/DSL drivers @@ -1013,35 +951,50 @@ CONFIG_USB_MON=y # # InfiniBand support # -# CONFIG_INFINIBAND is not set +CONFIG_INFINIBAND=y +CONFIG_INFINIBAND_MTHCA=y +# CONFIG_INFINIBAND_MTHCA_DEBUG is not set +CONFIG_INFINIBAND_IPOIB=y +# CONFIG_INFINIBAND_IPOIB_DEBUG is not set # # File systems # CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y -# CONFIG_EXT2_FS_POSIX_ACL is not set -# CONFIG_EXT2_FS_SECURITY is not set +CONFIG_EXT2_FS_POSIX_ACL=y +CONFIG_EXT2_FS_SECURITY=y CONFIG_EXT3_FS=y CONFIG_EXT3_FS_XATTR=y -# CONFIG_EXT3_FS_POSIX_ACL is not set -# CONFIG_EXT3_FS_SECURITY is not set +CONFIG_EXT3_FS_POSIX_ACL=y +CONFIG_EXT3_FS_SECURITY=y CONFIG_JBD=y # CONFIG_JBD_DEBUG is not set CONFIG_FS_MBCACHE=y -# CONFIG_REISERFS_FS is not set +CONFIG_REISERFS_FS=y +# CONFIG_REISERFS_CHECK is not set +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y # CONFIG_JFS_FS is not set +CONFIG_FS_POSIX_ACL=y # # XFS support # -# CONFIG_XFS_FS is not set +CONFIG_XFS_FS=y +CONFIG_XFS_EXPORT=y +# CONFIG_XFS_RT is not set +# CONFIG_XFS_QUOTA is not set +# CONFIG_XFS_SECURITY is not set +# CONFIG_XFS_POSIX_ACL is not set # CONFIG_MINIX_FS is not set # CONFIG_ROMFS_FS is not set # CONFIG_QUOTA is not set CONFIG_DNOTIFY=y CONFIG_AUTOFS_FS=y -# CONFIG_AUTOFS4_FS is not set +CONFIG_AUTOFS4_FS=y # # CD-ROM/DVD Filesystems @@ -1056,11 +1009,13 @@ CONFIG_UDF_NLS=y # DOS/FAT/NT Filesystems # CONFIG_FAT_FS=y -CONFIG_MSDOS_FS=y +# CONFIG_MSDOS_FS is not set CONFIG_VFAT_FS=y CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" -# CONFIG_NTFS_FS is not set +CONFIG_NTFS_FS=y +# CONFIG_NTFS_DEBUG is not set +# CONFIG_NTFS_RW is not set # # Pseudo filesystems @@ -1100,11 +1055,11 @@ CONFIG_RAMFS=y CONFIG_NFS_FS=y CONFIG_NFS_V3=y CONFIG_NFS_V4=y -# CONFIG_NFS_DIRECTIO is not set +CONFIG_NFS_DIRECTIO=y CONFIG_NFSD=y CONFIG_NFSD_V3=y -# CONFIG_NFSD_V4 is not set -# CONFIG_NFSD_TCP is not set +CONFIG_NFSD_V4=y +CONFIG_NFSD_TCP=y CONFIG_LOCKD=y CONFIG_LOCKD_V4=y CONFIG_EXPORTFS=y @@ -1112,8 +1067,13 @@ CONFIG_SUNRPC=y CONFIG_SUNRPC_GSS=y CONFIG_RPCSEC_GSS_KRB5=y # CONFIG_RPCSEC_GSS_SPKM3 is not set -# CONFIG_SMB_FS is not set -# CONFIG_CIFS is not set +CONFIG_SMB_FS=y +CONFIG_SMB_NLS_DEFAULT=y +CONFIG_SMB_NLS_REMOTE="cp437" +CONFIG_CIFS=y +# CONFIG_CIFS_STATS is not set +# CONFIG_CIFS_XATTR is not set +# CONFIG_CIFS_EXPERIMENTAL is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set # CONFIG_AFS_FS is not set @@ -1133,7 +1093,7 @@ CONFIG_MSDOS_PARTITION=y # CONFIG_SOLARIS_X86_PARTITION is not set # CONFIG_UNIXWARE_DISKLABEL is not set # CONFIG_LDM_PARTITION is not set -# CONFIG_SGI_PARTITION is not set +CONFIG_SGI_PARTITION=y # CONFIG_ULTRIX_PARTITION is not set # CONFIG_SUN_PARTITION is not set CONFIG_EFI_PARTITION=y @@ -1164,7 +1124,7 @@ CONFIG_NLS_CODEPAGE_932=y CONFIG_NLS_CODEPAGE_949=y CONFIG_NLS_CODEPAGE_874=y CONFIG_NLS_ISO8859_8=y -# CONFIG_NLS_CODEPAGE_1250 is not set +CONFIG_NLS_CODEPAGE_1250=y CONFIG_NLS_CODEPAGE_1251=y # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=y @@ -1191,6 +1151,13 @@ CONFIG_CRC32=y CONFIG_GENERIC_HARDIRQS=y CONFIG_GENERIC_IRQ_PROBE=y +# +# HP Simulator drivers +# +# CONFIG_HP_SIMETH is not set +# CONFIG_HP_SIMSERIAL is not set +# CONFIG_HP_SIMSCSI is not set + # # Profiling support # @@ -1202,7 +1169,7 @@ CONFIG_GENERIC_IRQ_PROBE=y # CONFIG_PRINTK_TIME is not set CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y -CONFIG_LOG_BUF_SHIFT=17 +CONFIG_LOG_BUF_SHIFT=20 # CONFIG_SCHEDSTATS is not set # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set @@ -1212,7 +1179,7 @@ CONFIG_LOG_BUF_SHIFT=17 # CONFIG_DEBUG_FS is not set CONFIG_IA64_GRANULE_16MB=y # CONFIG_IA64_GRANULE_64MB is not set -CONFIG_IA64_PRINT_HAZARDS=y +# CONFIG_IA64_PRINT_HAZARDS is not set # CONFIG_DISABLE_VHPT is not set # CONFIG_IA64_DEBUG_CMPXCHG is not set # CONFIG_IA64_DEBUG_IRQ is not set diff --git a/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 b/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 new file mode 100644 index 0000000000..145c75b19d --- /dev/null +++ b/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 @@ -0,0 +1,1260 @@ +# +# Automatically generated make config: don't edit +# Linux kernel version: 2.6.12 +# Thu Sep 15 11:04:33 2005 +# + +# +# Code maturity level options +# +CONFIG_EXPERIMENTAL=y +# CONFIG_CLEAN_COMPILE is not set +CONFIG_BROKEN=y +CONFIG_BROKEN_ON_SMP=y +CONFIG_LOCK_KERNEL=y +CONFIG_INIT_ENV_ARG_LIMIT=32 + +# +# General setup +# +CONFIG_LOCALVERSION="" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +# CONFIG_POSIX_MQUEUE is not set +CONFIG_BSD_PROCESS_ACCT=y +# CONFIG_BSD_PROCESS_ACCT_V3 is not set +CONFIG_SYSCTL=y +# CONFIG_AUDIT is not set +CONFIG_HOTPLUG=y +CONFIG_KOBJECT_UEVENT=y +# CONFIG_IKCONFIG is not set +# CONFIG_CPUSETS is not set +# CONFIG_EMBEDDED is not set +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_ALL is not set +# CONFIG_KALLSYMS_EXTRA_PASS is not set +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_SHMEM=y +CONFIG_CC_ALIGN_FUNCTIONS=0 +CONFIG_CC_ALIGN_LABELS=0 +CONFIG_CC_ALIGN_LOOPS=0 +CONFIG_CC_ALIGN_JUMPS=0 +# CONFIG_TINY_SHMEM is not set +CONFIG_BASE_SMALL=0 + +# +# Loadable module support +# +CONFIG_MODULES=y +# CONFIG_MODULE_UNLOAD is not set +CONFIG_OBSOLETE_MODPARM=y +# CONFIG_MODVERSIONS is not set +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_KMOD is not set + +# +# Processor type and features +# +CONFIG_IA64=y +CONFIG_64BIT=y +CONFIG_MMU=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_TIME_INTERPOLATION=y +CONFIG_EFI=y +CONFIG_GENERIC_IOMAP=y +CONFIG_XEN=y +CONFIG_XEN_VT=n +CONFIG_ARCH_XEN=y +CONFIG_XEN_PRIVILEGED_GUEST=y +CONFIG_XEN_PHYSDEV_ACCESS=y +CONFIG_XEN_BLKDEV_GRANT=y +CONFIG_VGA_CONSOLE=y +CONFIG_DUMMY_CONSOLE=y +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y +# CONFIG_IA64_GENERIC is not set +# CONFIG_IA64_DIG is not set +CONFIG_IA64_HP_ZX1=y +# CONFIG_IA64_HP_ZX1_SWIOTLB is not set +# CONFIG_IA64_SGI_SN2 is not set +# CONFIG_IA64_HP_SIM is not set +# CONFIG_ITANIUM is not set +CONFIG_MCKINLEY=y +# CONFIG_IA64_PAGE_SIZE_4KB is not set +# CONFIG_IA64_PAGE_SIZE_8KB is not set +CONFIG_IA64_PAGE_SIZE_16KB=y +# CONFIG_IA64_PAGE_SIZE_64KB is not set +CONFIG_IA64_L1_CACHE_SHIFT=7 +# CONFIG_NUMA is not set +CONFIG_VIRTUAL_MEM_MAP=y +CONFIG_HOLES_IN_ZONE=y +# CONFIG_IA64_CYCLONE is not set +CONFIG_IOSAPIC=y +CONFIG_FORCE_MAX_ZONEORDER=18 +CONFIG_SMP=y +CONFIG_NR_CPUS=16 +# CONFIG_HOTPLUG_CPU is not set +# CONFIG_SCHED_SMT is not set +# CONFIG_PREEMPT is not set +CONFIG_HAVE_DEC_LOCK=y +# CONFIG_IA32_SUPPORT is not set +CONFIG_IA64_MCA_RECOVERY=y +CONFIG_PERFMON=y +CONFIG_IA64_PALINFO=y +CONFIG_ACPI_DEALLOCATE_IRQ=y + +# +# Firmware Drivers +# +CONFIG_EFI_VARS=y +CONFIG_EFI_PCDP=y +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_MISC=y + +# +# Power management and ACPI +# +CONFIG_PM=y +CONFIG_ACPI=y + +# +# ACPI (Advanced Configuration and Power Interface) Support +# +CONFIG_ACPI_BOOT=y +CONFIG_ACPI_INTERPRETER=y +CONFIG_ACPI_BUTTON=y +# CONFIG_ACPI_VIDEO is not set +CONFIG_ACPI_FAN=y +CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_THERMAL=y +CONFIG_ACPI_BLACKLIST_YEAR=0 +# CONFIG_ACPI_DEBUG is not set +CONFIG_ACPI_BUS=y +CONFIG_ACPI_POWER=y +CONFIG_ACPI_PCI=y +CONFIG_ACPI_SYSTEM=y +# CONFIG_ACPI_CONTAINER is not set + +# +# Bus options (PCI, PCMCIA) +# +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +# CONFIG_PCI_MSI is not set +CONFIG_PCI_LEGACY_PROC=y +CONFIG_PCI_NAMES=y +# CONFIG_PCI_DEBUG is not set + +# +# PCI Hotplug Support +# +CONFIG_HOTPLUG_PCI=y +# CONFIG_HOTPLUG_PCI_FAKE is not set +CONFIG_HOTPLUG_PCI_ACPI=y +# CONFIG_HOTPLUG_PCI_ACPI_IBM is not set +# CONFIG_HOTPLUG_PCI_CPCI is not set +# CONFIG_HOTPLUG_PCI_SHPC is not set + +# +# PCCARD (PCMCIA/CardBus) support +# +# CONFIG_PCCARD is not set + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_FW_LOADER is not set +# CONFIG_DEBUG_DRIVER is not set + +# +# Memory Technology Devices (MTD) +# +# CONFIG_MTD is not set + +# +# Parallel port support +# +# CONFIG_PARPORT is not set + +# +# Plug and Play support +# +# CONFIG_PNP is not set + +# +# Block devices +# +# CONFIG_BLK_CPQ_DA is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=y +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_SX8 is not set +# CONFIG_BLK_DEV_UB is not set +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=4096 +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +# CONFIG_CDROM_PKTCDVD is not set + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_AS=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +# CONFIG_ATA_OVER_ETH is not set + +# +# ATA/ATAPI/MFM/RLL support +# +# CONFIG_IDE is not set + +# +# SCSI device support +# +CONFIG_SCSI=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=y +CONFIG_CHR_DEV_ST=y +CONFIG_CHR_DEV_OSST=y +CONFIG_BLK_DEV_SR=y +CONFIG_BLK_DEV_SR_VENDOR=y +CONFIG_CHR_DEV_SG=y + +# +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs +# +CONFIG_SCSI_MULTI_LUN=y +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_LOGGING=y + +# +# SCSI Transport Attributes +# +CONFIG_SCSI_SPI_ATTRS=y +# CONFIG_SCSI_FC_ATTRS is not set +# CONFIG_SCSI_ISCSI_ATTRS is not set + +# +# SCSI low-level drivers +# +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_SCSI_SATA is not set +# CONFIG_SCSI_CPQFCTS is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_EATA_PIO is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +CONFIG_SCSI_SYM53C8XX_2=y +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +# CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set +# CONFIG_SCSI_IPR is not set +# CONFIG_SCSI_PCI2000 is not set +# CONFIG_SCSI_PCI2220I is not set +# CONFIG_SCSI_QLOGIC_ISP is not set +# CONFIG_SCSI_QLOGIC_FC is not set +CONFIG_SCSI_QLOGIC_1280=y +# CONFIG_SCSI_QLOGIC_1280_1040 is not set +CONFIG_SCSI_QLA2XXX=y +# CONFIG_SCSI_QLA21XX is not set +# CONFIG_SCSI_QLA22XX is not set +# CONFIG_SCSI_QLA2300 is not set +# CONFIG_SCSI_QLA2322 is not set +# CONFIG_SCSI_QLA6312 is not set +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_DC390T is not set +# CONFIG_SCSI_DEBUG is not set + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set + +# +# Fusion MPT device support +# +CONFIG_FUSION=y +CONFIG_FUSION_MAX_SGE=40 +# CONFIG_FUSION_CTL is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_IEEE1394 is not set + +# +# I2O device support +# +# CONFIG_I2O is not set + +# +# Networking support +# +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +# CONFIG_PACKET_MMAP is not set +CONFIG_UNIX=y +# CONFIG_NET_KEY is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +# CONFIG_IP_ADVANCED_ROUTER is not set +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE is not set +# CONFIG_IP_MROUTE is not set +# CONFIG_ARPD is not set +# CONFIG_SYN_COOKIES is not set +# CONFIG_INET_AH is not set +# CONFIG_INET_ESP is not set +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_TUNNEL is not set +# CONFIG_IP_TCPDIAG is not set +# CONFIG_IP_TCPDIAG_IPV6 is not set + +# +# IP: Virtual Server Configuration +# +# CONFIG_IP_VS is not set +# CONFIG_IPV6 is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set + +# +# IP: Netfilter Configuration +# +# CONFIG_IP_NF_CONNTRACK is not set +# CONFIG_IP_NF_CONNTRACK_MARK is not set +# CONFIG_IP_NF_QUEUE is not set +# CONFIG_IP_NF_IPTABLES is not set +CONFIG_IP_NF_ARPTABLES=y +# CONFIG_IP_NF_ARPFILTER is not set +# CONFIG_IP_NF_ARP_MANGLE is not set + +# +# SCTP Configuration (EXPERIMENTAL) +# +# CONFIG_IP_SCTP is not set +# CONFIG_ATM is not set +# CONFIG_BRIDGE is not set +# CONFIG_VLAN_8021Q is not set +# CONFIG_DECNET is not set +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_NET_DIVERT is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set + +# +# QoS and/or fair queueing +# +# CONFIG_NET_SCHED is not set +# CONFIG_NET_CLS_ROUTE is not set + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set +# CONFIG_HAMRADIO is not set +# CONFIG_IRDA is not set +# CONFIG_BT is not set +CONFIG_NETDEVICES=y +CONFIG_DUMMY=y +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +# CONFIG_TUN is not set + +# +# ARCnet devices +# +# CONFIG_ARCNET is not set + +# +# Ethernet (10 or 100Mbit) +# +CONFIG_NET_ETHERNET=y +CONFIG_MII=y +# CONFIG_HAPPYMEAL is not set +# CONFIG_SUNGEM is not set +# CONFIG_NET_VENDOR_3COM is not set + +# +# Tulip family network device support +# +CONFIG_NET_TULIP=y +# CONFIG_DE2104X is not set +CONFIG_TULIP=y +CONFIG_TULIP_MWI=y +CONFIG_TULIP_MMIO=y +CONFIG_TULIP_NAPI=y +CONFIG_TULIP_NAPI_HW_MITIGATION=y +# CONFIG_DE4X5 is not set +# CONFIG_WINBOND_840 is not set +# CONFIG_DM9102 is not set +# CONFIG_HP100 is not set +CONFIG_NET_PCI=y +# CONFIG_PCNET32 is not set +# CONFIG_AMD8111_ETH is not set +# CONFIG_ADAPTEC_STARFIRE is not set +# CONFIG_B44 is not set +# CONFIG_FORCEDETH is not set +# CONFIG_DGRS is not set +# CONFIG_EEPRO100 is not set +CONFIG_E100=y +# CONFIG_FEALNX is not set +# CONFIG_NATSEMI is not set +# CONFIG_NE2K_PCI is not set +# CONFIG_8139CP is not set +# CONFIG_8139TOO is not set +# CONFIG_SIS900 is not set +# CONFIG_EPIC100 is not set +# CONFIG_SUNDANCE is not set +# CONFIG_VIA_RHINE is not set + +# +# Ethernet (1000 Mbit) +# +# CONFIG_ACENIC is not set +# CONFIG_DL2K is not set +CONFIG_E1000=y +# CONFIG_E1000_NAPI is not set +# CONFIG_NS83820 is not set +# CONFIG_HAMACHI is not set +# CONFIG_YELLOWFIN is not set +# CONFIG_R8169 is not set +# CONFIG_SK98LIN is not set +# CONFIG_VIA_VELOCITY is not set +CONFIG_TIGON3=y +# CONFIG_BNX2 is not set + +# +# Ethernet (10000 Mbit) +# +# CONFIG_IXGB is not set +# CONFIG_S2IO is not set + +# +# Token Ring devices +# +# CONFIG_TR is not set + +# +# Wireless LAN (non-hamradio) +# +# CONFIG_NET_RADIO is not set + +# +# Wan interfaces +# +# CONFIG_WAN is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +# CONFIG_PPP is not set +# CONFIG_SLIP is not set +# CONFIG_NET_FC is not set +# CONFIG_SHAPER is not set +# CONFIG_NETCONSOLE is not set + +# +# ISDN subsystem +# +# CONFIG_ISDN is not set + +# +# Telephony Support +# +# CONFIG_PHONE is not set + +# +# Input device support +# +CONFIG_INPUT=y + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=y +# CONFIG_INPUT_TSDEV is not set +CONFIG_INPUT_EVDEV=y +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INPUT_MISC is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +# CONFIG_SERIO_I8042 is not set +# CONFIG_SERIO_SERPORT is not set +# CONFIG_SERIO_PCIPS2 is not set +# CONFIG_SERIO_RAW is not set +# CONFIG_GAMEPORT is not set + +# +# Character devices +# +# CONFIG_VT is not set +# CONFIG_SERIAL_NONSTANDARD is not set + +# +# Serial drivers +# +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_ACPI=y +CONFIG_SERIAL_8250_NR_UARTS=8 +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_SHARE_IRQ=y +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +# CONFIG_SERIAL_8250_MULTIPORT is not set +# CONFIG_SERIAL_8250_RSA is not set + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +CONFIG_UNIX98_PTYS=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=256 + +# +# IPMI +# +# CONFIG_IPMI_HANDLER is not set + +# +# Watchdog Cards +# +# CONFIG_WATCHDOG is not set +# CONFIG_HW_RANDOM is not set +CONFIG_EFI_RTC=y +# CONFIG_DTLK is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set + +# +# Ftape, the floppy tape device driver +# +CONFIG_AGP=y +CONFIG_AGP_HP_ZX1=y +CONFIG_DRM=y +# CONFIG_DRM_TDFX is not set +# CONFIG_DRM_GAMMA is not set +# CONFIG_DRM_R128 is not set +CONFIG_DRM_RADEON=y +# CONFIG_DRM_MGA is not set +# CONFIG_DRM_SIS is not set +# CONFIG_RAW_DRIVER is not set +# CONFIG_HPET is not set +# CONFIG_HANGCHECK_TIMER is not set + +# +# TPM devices +# +# CONFIG_TCG_TPM is not set + +# +# I2C support +# +CONFIG_I2C=y +CONFIG_I2C_CHARDEV=y + +# +# I2C Algorithms +# +CONFIG_I2C_ALGOBIT=y +CONFIG_I2C_ALGOPCF=y +# CONFIG_I2C_ALGOPCA is not set + +# +# I2C Hardware Bus support +# +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_I801 is not set +# CONFIG_I2C_I810 is not set +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_ISA is not set +# CONFIG_I2C_NFORCE2 is not set +# CONFIG_I2C_PARPORT_LIGHT is not set +# CONFIG_I2C_PROSAVAGE is not set +# CONFIG_I2C_SAVAGE4 is not set +# CONFIG_SCx200_ACB is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set +# CONFIG_I2C_VOODOO3 is not set +# CONFIG_I2C_PCA_ISA is not set + +# +# Hardware Sensors Chip support +# +# CONFIG_I2C_SENSOR is not set +# CONFIG_SENSORS_ADM1021 is not set +# CONFIG_SENSORS_ADM1025 is not set +# CONFIG_SENSORS_ADM1026 is not set +# CONFIG_SENSORS_ADM1031 is not set +# CONFIG_SENSORS_ASB100 is not set +# CONFIG_SENSORS_DS1621 is not set +# CONFIG_SENSORS_FSCHER is not set +# CONFIG_SENSORS_FSCPOS is not set +# CONFIG_SENSORS_GL518SM is not set +# CONFIG_SENSORS_GL520SM is not set +# CONFIG_SENSORS_IT87 is not set +# CONFIG_SENSORS_LM63 is not set +# CONFIG_SENSORS_LM75 is not set +# CONFIG_SENSORS_LM77 is not set +# CONFIG_SENSORS_LM78 is not set +# CONFIG_SENSORS_LM80 is not set +# CONFIG_SENSORS_LM83 is not set +# CONFIG_SENSORS_LM85 is not set +# CONFIG_SENSORS_LM87 is not set +# CONFIG_SENSORS_LM90 is not set +# CONFIG_SENSORS_LM92 is not set +# CONFIG_SENSORS_MAX1619 is not set +# CONFIG_SENSORS_PC87360 is not set +# CONFIG_SENSORS_SMSC47B397 is not set +# CONFIG_SENSORS_SIS5595 is not set +# CONFIG_SENSORS_SMSC47M1 is not set +# CONFIG_SENSORS_VIA686A is not set +# CONFIG_SENSORS_W83781D is not set +# CONFIG_SENSORS_W83L785TS is not set +# CONFIG_SENSORS_W83627HF is not set + +# +# Other I2C Chip support +# +# CONFIG_SENSORS_DS1337 is not set +# CONFIG_SENSORS_EEPROM is not set +# CONFIG_SENSORS_PCF8574 is not set +# CONFIG_SENSORS_PCF8591 is not set +# CONFIG_SENSORS_RTC8564 is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# CONFIG_I2C_DEBUG_CHIP is not set + +# +# Dallas's 1-wire bus +# +# CONFIG_W1 is not set + +# +# Misc devices +# + +# +# Multimedia devices +# +CONFIG_VIDEO_DEV=y + +# +# Video For Linux +# + +# +# Video Adapters +# +# CONFIG_VIDEO_BT848 is not set +# CONFIG_VIDEO_CPIA is not set +# CONFIG_VIDEO_SAA5246A is not set +# CONFIG_VIDEO_SAA5249 is not set +# CONFIG_TUNER_3036 is not set +# CONFIG_VIDEO_STRADIS is not set +# CONFIG_VIDEO_ZORAN is not set +# CONFIG_VIDEO_ZR36120 is not set +# CONFIG_VIDEO_SAA7134 is not set +# CONFIG_VIDEO_MXB is not set +# CONFIG_VIDEO_DPC is not set +# CONFIG_VIDEO_HEXIUM_ORION is not set +# CONFIG_VIDEO_HEXIUM_GEMINI is not set +# CONFIG_VIDEO_CX88 is not set +# CONFIG_VIDEO_OVCAMCHIP is not set + +# +# Radio Adapters +# +# CONFIG_RADIO_GEMTEK_PCI is not set +# CONFIG_RADIO_MAXIRADIO is not set +# CONFIG_RADIO_MAESTRO is not set + +# +# Digital Video Broadcasting Devices +# +# CONFIG_DVB is not set + +# +# Graphics support +# +CONFIG_FB=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_SOFT_CURSOR=y +# CONFIG_FB_MACMODES is not set +CONFIG_FB_MODE_HELPERS=y +# CONFIG_FB_TILEBLITTING is not set +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON_OLD is not set +CONFIG_FB_RADEON=y +CONFIG_FB_RADEON_I2C=y +CONFIG_FB_RADEON_DEBUG=y +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_VIRTUAL is not set + +# +# Logo configuration +# +CONFIG_LOGO=y +# CONFIG_LOGO_LINUX_MONO is not set +# CONFIG_LOGO_LINUX_VGA16 is not set +CONFIG_LOGO_LINUX_CLUT224=y +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set + +# +# Sound +# +CONFIG_SOUND=y + +# +# Advanced Linux Sound Architecture +# +CONFIG_SND=y +CONFIG_SND_TIMER=y +CONFIG_SND_PCM=y +CONFIG_SND_HWDEP=y +CONFIG_SND_RAWMIDI=y +CONFIG_SND_SEQUENCER=y +# CONFIG_SND_SEQ_DUMMY is not set +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=y +CONFIG_SND_PCM_OSS=y +CONFIG_SND_SEQUENCER_OSS=y +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set + +# +# Generic devices +# +CONFIG_SND_MPU401_UART=y +CONFIG_SND_OPL3_LIB=y +# CONFIG_SND_DUMMY is not set +# CONFIG_SND_VIRMIDI is not set +# CONFIG_SND_MTPAV is not set +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set + +# +# PCI devices +# +CONFIG_SND_AC97_CODEC=y +# CONFIG_SND_ALI5451 is not set +# CONFIG_SND_ATIIXP is not set +# CONFIG_SND_ATIIXP_MODEM is not set +# CONFIG_SND_AU8810 is not set +# CONFIG_SND_AU8820 is not set +# CONFIG_SND_AU8830 is not set +# CONFIG_SND_AZT3328 is not set +# CONFIG_SND_BT87X is not set +# CONFIG_SND_CS46XX is not set +# CONFIG_SND_CS4281 is not set +# CONFIG_SND_EMU10K1 is not set +# CONFIG_SND_EMU10K1X is not set +# CONFIG_SND_CA0106 is not set +# CONFIG_SND_KORG1212 is not set +# CONFIG_SND_MIXART is not set +# CONFIG_SND_NM256 is not set +# CONFIG_SND_RME32 is not set +# CONFIG_SND_RME96 is not set +# CONFIG_SND_RME9652 is not set +# CONFIG_SND_HDSP is not set +# CONFIG_SND_TRIDENT is not set +# CONFIG_SND_YMFPCI is not set +# CONFIG_SND_ALS4000 is not set +# CONFIG_SND_CMIPCI is not set +# CONFIG_SND_ENS1370 is not set +# CONFIG_SND_ENS1371 is not set +# CONFIG_SND_ES1938 is not set +# CONFIG_SND_ES1968 is not set +# CONFIG_SND_MAESTRO3 is not set +CONFIG_SND_FM801=y +CONFIG_SND_FM801_TEA575X=y +# CONFIG_SND_ICE1712 is not set +# CONFIG_SND_ICE1724 is not set +# CONFIG_SND_INTEL8X0 is not set +# CONFIG_SND_INTEL8X0M is not set +# CONFIG_SND_SONICVIBES is not set +# CONFIG_SND_VIA82XX is not set +# CONFIG_SND_VIA82XX_MODEM is not set +# CONFIG_SND_VX222 is not set +# CONFIG_SND_HDA_INTEL is not set + +# +# USB devices +# +# CONFIG_SND_USB_AUDIO is not set + +# +# Open Sound System +# +# CONFIG_SOUND_PRIME is not set + +# +# USB support +# +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB_ARCH_HAS_OHCI=y +CONFIG_USB=y +# CONFIG_USB_DEBUG is not set + +# +# Miscellaneous USB options +# +# CONFIG_USB_DEVICEFS is not set +CONFIG_USB_BANDWIDTH=y +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_SUSPEND is not set +# CONFIG_USB_OTG is not set + +# +# USB Host Controller Drivers +# +CONFIG_USB_EHCI_HCD=y +# CONFIG_USB_EHCI_SPLIT_ISO is not set +# CONFIG_USB_EHCI_ROOT_HUB_TT is not set +CONFIG_USB_OHCI_HCD=y +# CONFIG_USB_OHCI_BIG_ENDIAN is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_UHCI_HCD=y +# CONFIG_USB_SL811_HCD is not set + +# +# USB Device Class drivers +# +# CONFIG_USB_AUDIO is not set +# CONFIG_USB_BLUETOOTH_TTY is not set +# CONFIG_USB_MIDI is not set +# CONFIG_USB_ACM is not set +# CONFIG_USB_PRINTER is not set + +# +# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information +# +CONFIG_USB_STORAGE=y +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_USBAT is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_SDDR55 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set + +# +# USB Input Devices +# +CONFIG_USB_HID=y +CONFIG_USB_HIDINPUT=y +# CONFIG_HID_FF is not set +CONFIG_USB_HIDDEV=y +# CONFIG_USB_AIPTEK is not set +# CONFIG_USB_WACOM is not set +# CONFIG_USB_KBTAB is not set +# CONFIG_USB_POWERMATE is not set +# CONFIG_USB_MTOUCH is not set +# CONFIG_USB_EGALAX is not set +# CONFIG_USB_XPAD is not set +# CONFIG_USB_ATI_REMOTE is not set + +# +# USB Imaging devices +# +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set + +# +# USB Multimedia devices +# +# CONFIG_USB_DABUSB is not set +# CONFIG_USB_VICAM is not set +# CONFIG_USB_DSBR is not set +# CONFIG_USB_IBMCAM is not set +# CONFIG_USB_KONICAWC is not set +# CONFIG_USB_OV511 is not set +# CONFIG_USB_SE401 is not set +# CONFIG_USB_SN9C102 is not set +# CONFIG_USB_STV680 is not set +# CONFIG_USB_PWC is not set + +# +# USB Network Adapters +# +# CONFIG_USB_CATC is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_RTL8150 is not set +# CONFIG_USB_USBNET is not set +CONFIG_USB_MON=y + +# +# USB port drivers +# + +# +# USB Serial Converter support +# +# CONFIG_USB_SERIAL is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_AUERSWALD is not set +# CONFIG_USB_RIO500 is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_LED is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_PHIDGETKIT is not set +# CONFIG_USB_PHIDGETSERVO is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_SISUSBVGA is not set + +# +# USB ATM/DSL drivers +# + +# +# USB Gadget Support +# +# CONFIG_USB_GADGET is not set + +# +# MMC/SD Card support +# +# CONFIG_MMC is not set + +# +# InfiniBand support +# +# CONFIG_INFINIBAND is not set + +# +# File systems +# +CONFIG_EXT2_FS=y +CONFIG_EXT2_FS_XATTR=y +# CONFIG_EXT2_FS_POSIX_ACL is not set +# CONFIG_EXT2_FS_SECURITY is not set +CONFIG_EXT3_FS=y +CONFIG_EXT3_FS_XATTR=y +# CONFIG_EXT3_FS_POSIX_ACL is not set +# CONFIG_EXT3_FS_SECURITY is not set +CONFIG_JBD=y +# CONFIG_JBD_DEBUG is not set +CONFIG_FS_MBCACHE=y +# CONFIG_REISERFS_FS is not set +# CONFIG_JFS_FS is not set + +# +# XFS support +# +# CONFIG_XFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_ROMFS_FS is not set +# CONFIG_QUOTA is not set +CONFIG_DNOTIFY=y +CONFIG_AUTOFS_FS=y +# CONFIG_AUTOFS4_FS is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=y +CONFIG_JOLIET=y +# CONFIG_ZISOFS is not set +CONFIG_UDF_FS=y +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=y +CONFIG_MSDOS_FS=y +CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +# CONFIG_NTFS_FS is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_SYSFS=y +# CONFIG_DEVFS_FS is not set +# CONFIG_DEVPTS_FS_XATTR is not set +CONFIG_TMPFS=y +CONFIG_TMPFS_XATTR=y +CONFIG_TMPFS_SECURITY=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_RAMFS=y + +# +# Miscellaneous filesystems +# +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_CRAMFS is not set +# CONFIG_VXFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set + +# +# Network File Systems +# +CONFIG_NFS_FS=y +CONFIG_NFS_V3=y +CONFIG_NFS_V4=y +# CONFIG_NFS_DIRECTIO is not set +CONFIG_NFSD=y +CONFIG_NFSD_V3=y +# CONFIG_NFSD_V4 is not set +# CONFIG_NFSD_TCP is not set +CONFIG_LOCKD=y +CONFIG_LOCKD_V4=y +CONFIG_EXPORTFS=y +CONFIG_SUNRPC=y +CONFIG_SUNRPC_GSS=y +CONFIG_RPCSEC_GSS_KRB5=y +# CONFIG_RPCSEC_GSS_SPKM3 is not set +# CONFIG_SMB_FS is not set +# CONFIG_CIFS is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +CONFIG_EFI_PARTITION=y + +# +# Native Language Support +# +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="iso8859-1" +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=y +CONFIG_NLS_CODEPAGE_775=y +CONFIG_NLS_CODEPAGE_850=y +CONFIG_NLS_CODEPAGE_852=y +CONFIG_NLS_CODEPAGE_855=y +CONFIG_NLS_CODEPAGE_857=y +CONFIG_NLS_CODEPAGE_860=y +CONFIG_NLS_CODEPAGE_861=y +CONFIG_NLS_CODEPAGE_862=y +CONFIG_NLS_CODEPAGE_863=y +CONFIG_NLS_CODEPAGE_864=y +CONFIG_NLS_CODEPAGE_865=y +CONFIG_NLS_CODEPAGE_866=y +CONFIG_NLS_CODEPAGE_869=y +CONFIG_NLS_CODEPAGE_936=y +CONFIG_NLS_CODEPAGE_950=y +CONFIG_NLS_CODEPAGE_932=y +CONFIG_NLS_CODEPAGE_949=y +CONFIG_NLS_CODEPAGE_874=y +CONFIG_NLS_ISO8859_8=y +# CONFIG_NLS_CODEPAGE_1250 is not set +CONFIG_NLS_CODEPAGE_1251=y +# CONFIG_NLS_ASCII is not set +CONFIG_NLS_ISO8859_1=y +CONFIG_NLS_ISO8859_2=y +CONFIG_NLS_ISO8859_3=y +CONFIG_NLS_ISO8859_4=y +CONFIG_NLS_ISO8859_5=y +CONFIG_NLS_ISO8859_6=y +CONFIG_NLS_ISO8859_7=y +CONFIG_NLS_ISO8859_9=y +CONFIG_NLS_ISO8859_13=y +CONFIG_NLS_ISO8859_14=y +CONFIG_NLS_ISO8859_15=y +CONFIG_NLS_KOI8_R=y +CONFIG_NLS_KOI8_U=y +CONFIG_NLS_UTF8=y + +# +# Library routines +# +# CONFIG_CRC_CCITT is not set +CONFIG_CRC32=y +# CONFIG_LIBCRC32C is not set +CONFIG_GENERIC_HARDIRQS=y +CONFIG_GENERIC_IRQ_PROBE=y + +# +# Profiling support +# +# CONFIG_PROFILING is not set + +# +# Kernel hacking +# +# CONFIG_PRINTK_TIME is not set +CONFIG_DEBUG_KERNEL=y +CONFIG_MAGIC_SYSRQ=y +CONFIG_LOG_BUF_SHIFT=17 +# CONFIG_SCHEDSTATS is not set +# CONFIG_DEBUG_SLAB is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_SPINLOCK_SLEEP is not set +# CONFIG_DEBUG_KOBJECT is not set +# CONFIG_DEBUG_INFO is not set +# CONFIG_DEBUG_FS is not set +CONFIG_IA64_GRANULE_16MB=y +# CONFIG_IA64_GRANULE_64MB is not set +CONFIG_IA64_PRINT_HAZARDS=y +# CONFIG_DISABLE_VHPT is not set +# CONFIG_IA64_DEBUG_CMPXCHG is not set +# CONFIG_IA64_DEBUG_IRQ is not set + +# +# Security options +# +# CONFIG_KEYS is not set +# CONFIG_SECURITY is not set + +# +# Cryptographic options +# +CONFIG_CRYPTO=y +# CONFIG_CRYPTO_HMAC is not set +# CONFIG_CRYPTO_NULL is not set +# CONFIG_CRYPTO_MD4 is not set +CONFIG_CRYPTO_MD5=y +# CONFIG_CRYPTO_SHA1 is not set +# CONFIG_CRYPTO_SHA256 is not set +# CONFIG_CRYPTO_SHA512 is not set +# CONFIG_CRYPTO_WP512 is not set +# CONFIG_CRYPTO_TGR192 is not set +CONFIG_CRYPTO_DES=y +# CONFIG_CRYPTO_BLOWFISH is not set +# CONFIG_CRYPTO_TWOFISH is not set +# CONFIG_CRYPTO_SERPENT is not set +# CONFIG_CRYPTO_AES is not set +# CONFIG_CRYPTO_CAST5 is not set +# CONFIG_CRYPTO_CAST6 is not set +# CONFIG_CRYPTO_TEA is not set +# CONFIG_CRYPTO_ARC4 is not set +# CONFIG_CRYPTO_KHAZAD is not set +# CONFIG_CRYPTO_ANUBIS is not set +# CONFIG_CRYPTO_DEFLATE is not set +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_CRC32C is not set +# CONFIG_CRYPTO_TEST is not set + +# +# Hardware crypto devices +# From 95533845ba6b093b51b5ade1a9512ea77579bedb Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Wed, 16 Nov 2005 17:45:36 -0600 Subject: [PATCH 07/19] Changes so that Xen can be compiled with gcc 4.0.2: (by Tristan Gingold) * functions must be declared before being called. * a cast or a conditionnal expression is not an lvalue. * a function cannot be declared static and redeclared extern (or reverse). * gcc 4.0.2 missed a range optimization (ia64_setreg_unknown_kr). * ia64_ksyms is not used (removed from Makefile). * (added by Dan M: since now modified, move gfp.h from linux to linux-xen) --- xen/arch/ia64/Makefile | 6 +++--- xen/arch/ia64/vmx/mmio.c | 2 ++ xen/arch/ia64/vmx/vmmu.c | 12 ++++++++---- xen/arch/ia64/xen/vcpu.c | 3 +++ xen/include/asm-ia64/linux-xen/linux/README.origin | 1 + xen/include/asm-ia64/{ => linux-xen}/linux/gfp.h | 3 +++ xen/include/asm-ia64/linux-xen/linux/interrupt.h | 2 ++ xen/include/asm-ia64/linux/README.origin | 1 - xen/include/asm-ia64/mm.h | 2 +- xen/include/asm-ia64/vmmu.h | 5 ++++- xen/include/asm-ia64/vmx_vcpu.h | 2 ++ 11 files changed, 29 insertions(+), 10 deletions(-) rename xen/include/asm-ia64/{ => linux-xen}/linux/gfp.h (99%) diff --git a/xen/arch/ia64/Makefile b/xen/arch/ia64/Makefile index 08bc8aafe1..18c56db1c3 100644 --- a/xen/arch/ia64/Makefile +++ b/xen/arch/ia64/Makefile @@ -2,7 +2,7 @@ include $(BASEDIR)/Rules.mk VPATH = xen vmx linux linux-xen -OBJS = xensetup.o setup.o time.o irq.o ia64_ksyms.o process.o smp.o \ +OBJS = xensetup.o setup.o time.o irq.o process.o smp.o \ xenmisc.o acpi.o hypercall.o \ machvec.o dom0_ops.o domain.o hpsimserial.o pcdp.o \ idle0_task.o pal.o hpsim.o efi.o efi_stub.o ivt.o mm_contig.o \ @@ -10,7 +10,7 @@ OBJS = xensetup.o setup.o time.o irq.o ia64_ksyms.o process.o smp.o \ extable.o linuxextable.o sort.o xenirq.o xentime.o \ regionreg.o entry.o unaligned.o privop.o vcpu.o \ irq_ia64.o irq_lsapic.o vhpt.o xenasm.o hyperprivop.o dom_fw.o \ - grant_table.o sn_console.o + grant_table.o sn_console.o # ia64_ksyms.o OBJS += vmx_init.o vmx_virt.o vmx_vcpu.o vmx_process.o vmx_vsa.o vmx_ivt.o\ vmx_phy_mode.o vmx_utility.o vmx_interrupt.o vmx_entry.o vmmu.o \ @@ -45,7 +45,7 @@ asm-offsets.s: asm-offsets.c $(BASEDIR)/include/asm-ia64/.offsets.h.stamp $(BASE asm-xsi-offsets.s: asm-xsi-offsets.c $(CC) $(CFLAGS) -S -o $@ $< - + $(BASEDIR)/include/asm-ia64/asm-xsi-offsets.h: asm-xsi-offsets.s @(set -e; \ echo "/*"; \ diff --git a/xen/arch/ia64/vmx/mmio.c b/xen/arch/ia64/vmx/mmio.c index a64c16829c..b3668acb81 100644 --- a/xen/arch/ia64/vmx/mmio.c +++ b/xen/arch/ia64/vmx/mmio.c @@ -49,6 +49,8 @@ struct mmio_list *lookup_mmio(u64 gpa, struct mmio_list *mio_base) #define PIB_OFST_INTA 0x1E0000 #define PIB_OFST_XTP 0x1E0008 +static int write_ipi (VCPU *vcpu, uint64_t addr, uint64_t value); + static void pib_write(VCPU *vcpu, void *src, uint64_t pib_off, size_t s, int ma) { switch (pib_off) { diff --git a/xen/arch/ia64/vmx/vmmu.c b/xen/arch/ia64/vmx/vmmu.c index 99e50cc50b..07acfa3bd9 100644 --- a/xen/arch/ia64/vmx/vmmu.c +++ b/xen/arch/ia64/vmx/vmmu.c @@ -157,11 +157,13 @@ static thash_cb_t *init_domain_vhpt(struct vcpu *d) printk("Allocate domain vhpt at 0x%lx\n", (u64)vbase); memset(vbase, 0, VCPU_TLB_SIZE); vcur = (void*)((u64)vbase + VCPU_TLB_SIZE); - vhpt = --((thash_cb_t*)vcur); + vcur -= sizeof (thash_cb_t); + vhpt = vcur; vhpt->ht = THASH_VHPT; vhpt->vcpu = d; vhpt->hash_func = machine_thash; - vs = --((vhpt_special *)vcur); + vs -= sizeof (vhpt_special); + vs = vcur; /* Setup guest pta */ pta_value.val = 0; @@ -199,10 +201,12 @@ thash_cb_t *init_domain_tlb(struct vcpu *d) printk("Allocate domain tlb at 0x%lx\n", (u64)vbase); memset(vbase, 0, VCPU_TLB_SIZE); vcur = (void*)((u64)vbase + VCPU_TLB_SIZE); - tlb = --((thash_cb_t*)vcur); + vcur -= sizeof (thash_cb_t); + tlb = vcur; tlb->ht = THASH_TLB; tlb->vcpu = d; - ts = --((tlb_special_t *)vcur); + vcur -= sizeof (tlb_special_t); + ts = vcur; tlb->ts = ts; tlb->ts->vhpt = init_domain_vhpt(d); tlb->hash_func = machine_thash; diff --git a/xen/arch/ia64/xen/vcpu.c b/xen/arch/ia64/xen/vcpu.c index 9f2b0a186b..363d426c7f 100644 --- a/xen/arch/ia64/xen/vcpu.c +++ b/xen/arch/ia64/xen/vcpu.c @@ -147,6 +147,9 @@ void vcpu_load_kernel_regs(VCPU *vcpu) ia64_set_kr(7, VCPU(vcpu, krs[7])); } +/* GCC 4.0.2 seems not to be able to suppress this call!. */ +#define ia64_setreg_unknown_kr() return IA64_ILLOP_FAULT + IA64FAULT vcpu_set_ar(VCPU *vcpu, UINT64 reg, UINT64 val) { if (reg == 44) return (vcpu_set_itc(vcpu,val)); diff --git a/xen/include/asm-ia64/linux-xen/linux/README.origin b/xen/include/asm-ia64/linux-xen/linux/README.origin index 8e3c19698d..eb37456b88 100644 --- a/xen/include/asm-ia64/linux-xen/linux/README.origin +++ b/xen/include/asm-ia64/linux-xen/linux/README.origin @@ -6,5 +6,6 @@ # easily updated to future versions of the corresponding Linux files. cpumask.h -> linux/include/linux/cpumask.h +gfp.h -> linux/include/linux/gfp.h hardirq.h -> linux/include/linux/hardirq.h interrupt.h -> linux/include/linux/interrupt.h diff --git a/xen/include/asm-ia64/linux/gfp.h b/xen/include/asm-ia64/linux-xen/linux/gfp.h similarity index 99% rename from xen/include/asm-ia64/linux/gfp.h rename to xen/include/asm-ia64/linux-xen/linux/gfp.h index 7c7400137e..55d04c8ba1 100644 --- a/xen/include/asm-ia64/linux/gfp.h +++ b/xen/include/asm-ia64/linux-xen/linux/gfp.h @@ -1,6 +1,9 @@ #ifndef __LINUX_GFP_H #define __LINUX_GFP_H +#ifdef XEN +#include +#endif #include #include #include diff --git a/xen/include/asm-ia64/linux-xen/linux/interrupt.h b/xen/include/asm-ia64/linux-xen/linux/interrupt.h index b88e9457f1..1061b5e081 100644 --- a/xen/include/asm-ia64/linux-xen/linux/interrupt.h +++ b/xen/include/asm-ia64/linux-xen/linux/interrupt.h @@ -131,7 +131,9 @@ extern void open_softirq(int nr, void (*action)(struct softirq_action*), void *d extern void softirq_init(void); #define __raise_softirq_irqoff(nr) do { local_softirq_pending() |= 1UL << (nr); } while (0) extern void FASTCALL(raise_softirq_irqoff(unsigned int nr)); +#ifndef XEN extern void FASTCALL(raise_softirq(unsigned int nr)); +#endif /* Tasklets --- multithreaded analogue of BHs. diff --git a/xen/include/asm-ia64/linux/README.origin b/xen/include/asm-ia64/linux/README.origin index f715a93ab4..9daa422935 100644 --- a/xen/include/asm-ia64/linux/README.origin +++ b/xen/include/asm-ia64/linux/README.origin @@ -10,7 +10,6 @@ bitops.h ->linux/include/linux/bitops.h dma-mapping.h ->linux/include/linux/dma-mapping.h efi.h ->linux/include/linux/efi.h err.h ->linux/include/linux/err.h -gfp.h ->linux/include/linux/gfp.h initrd.h ->linux/include/linux/initrd.h jiffies.h ->linux/include/linux/jiffies.h kmalloc_sizes.h ->linux/include/linux/kmalloc_sizes.h diff --git a/xen/include/asm-ia64/mm.h b/xen/include/asm-ia64/mm.h index 7fac78db61..899f37b690 100644 --- a/xen/include/asm-ia64/mm.h +++ b/xen/include/asm-ia64/mm.h @@ -3,7 +3,7 @@ #include #ifdef LINUX_2_6 -#include +#include #endif #include #include diff --git a/xen/include/asm-ia64/vmmu.h b/xen/include/asm-ia64/vmmu.h index 5fe98c438d..ff68af1465 100644 --- a/xen/include/asm-ia64/vmmu.h +++ b/xen/include/asm-ia64/vmmu.h @@ -222,7 +222,10 @@ typedef struct thash_cb { #define ITR(hcb,id) ((hcb)->ts->itr[id]) #define DTR(hcb,id) ((hcb)->ts->dtr[id]) #define INVALIDATE_HASH(hcb,hash) { \ - INVALID_ENTRY(hcb, hash) = 1; \ + if ((hcb)->ht==THASH_TLB) \ + INVALID_TLB(hash) = 1; \ + else \ + INVALID_VHPT(hash) = 1; \ hash->next = NULL; } #define PURGABLE_ENTRY(hcb,en) 1 diff --git a/xen/include/asm-ia64/vmx_vcpu.h b/xen/include/asm-ia64/vmx_vcpu.h index 509e3732a6..2ac3532e38 100644 --- a/xen/include/asm-ia64/vmx_vcpu.h +++ b/xen/include/asm-ia64/vmx_vcpu.h @@ -71,7 +71,9 @@ extern thash_cb_t *vmx_vcpu_get_vtlb(VCPU *vcpu); extern thash_cb_t *vmx_vcpu_get_vhpt(VCPU *vcpu); extern ia64_rr vmx_vcpu_rr(VCPU *vcpu,UINT64 vadr); extern IA64FAULT vmx_vcpu_set_rr(VCPU *vcpu, UINT64 reg, UINT64 val); +#if 0 extern IA64FAULT vmx_vcpu_get_rr(VCPU *vcpu, UINT64 reg, UINT64 *pval); +#endif extern IA64FAULT vmx_vcpu_get_pkr(VCPU *vcpu, UINT64 reg, UINT64 *pval); IA64FAULT vmx_vcpu_set_pkr(VCPU *vcpu, UINT64 reg, UINT64 val); extern IA64FAULT vmx_vcpu_itc_i(VCPU *vcpu, UINT64 pte, UINT64 itir, UINT64 ifa); From e2428e6e1c125fb1262143c68811fa18ffd832b5 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Wed, 16 Nov 2005 18:40:24 -0600 Subject: [PATCH 08/19] Enable build to work for both generic and non-generic (hpsim issue) --- linux-2.6-xen-sparse/arch/ia64/Makefile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/linux-2.6-xen-sparse/arch/ia64/Makefile b/linux-2.6-xen-sparse/arch/ia64/Makefile index 082b09cac4..d1f780fc9e 100644 --- a/linux-2.6-xen-sparse/arch/ia64/Makefile +++ b/linux-2.6-xen-sparse/arch/ia64/Makefile @@ -63,7 +63,12 @@ core-$(CONFIG_IA64_SGI_SN2) += arch/ia64/sn/ core-$(CONFIG_XEN) += arch/ia64/xen/ drivers-$(CONFIG_PCI) += arch/ia64/pci/ +ifneq ($(CONFIG_XEN),y) drivers-$(CONFIG_IA64_HP_SIM) += arch/ia64/hp/sim/ +endif +ifneq ($(CONFIG_IA64_GENERIC),y) +drivers-$(CONFIG_XEN) += arch/ia64/hp/sim/ +endif drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ drivers-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/hp/sim/ arch/ia64/sn/ From 4a568b83e849e32c9042f2beff5224caca3f38e7 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Thu, 17 Nov 2005 07:21:18 -0600 Subject: [PATCH 09/19] Integration of the xen4xlilo patch. (by Tristan Gingold) It is now backward compatible: works with the old elilo. --- xen/arch/ia64/xen/dom_fw.c | 6 ++ xen/arch/ia64/xen/domain.c | 18 +++-- xen/arch/ia64/xen/xensetup.c | 82 ++++++++++++++++----- xen/include/asm-ia64/linux-xen/asm/system.h | 4 + 4 files changed, 82 insertions(+), 28 deletions(-) diff --git a/xen/arch/ia64/xen/dom_fw.c b/xen/arch/ia64/xen/dom_fw.c index eb9fbe8858..83348a76a0 100644 --- a/xen/arch/ia64/xen/dom_fw.c +++ b/xen/arch/ia64/xen/dom_fw.c @@ -686,6 +686,12 @@ dom_fw_init (struct domain *d, char *args, int arglen, char *fw_mem, int fw_mem_ bp->console_info.orig_x = 0; bp->console_info.orig_y = 24; bp->fpswa = 0; + bp->initrd_start = (dom0_start+dom0_size) - + (PAGE_ALIGN(ia64_boot_param->initrd_size) + 4*1024*1024); + bp->initrd_size = ia64_boot_param->initrd_size; + printf(" initrd start %0xlx", bp->initrd_start); + printf(" initrd size %0xlx", bp->initrd_size); + return bp; } diff --git a/xen/arch/ia64/xen/domain.c b/xen/arch/ia64/xen/domain.c index dfefe72dc2..aa1e470f4f 100644 --- a/xen/arch/ia64/xen/domain.c +++ b/xen/arch/ia64/xen/domain.c @@ -823,6 +823,7 @@ int construct_dom0(struct domain *d, unsigned long pkern_start; unsigned long pkern_entry; unsigned long pkern_end; + unsigned long pinitrd_start = 0; unsigned long ret, progress = 0; //printf("construct_dom0: starting\n"); @@ -841,12 +842,6 @@ int construct_dom0(struct domain *d, alloc_start = dom0_start; alloc_end = dom0_start + dom0_size; d->tot_pages = d->max_pages = dom0_size/PAGE_SIZE; - image_start = __va(ia64_boot_param->initrd_start); - image_len = ia64_boot_param->initrd_size; -//printk("image_start=%lx, image_len=%lx\n",image_start,image_len); -//printk("First word of image: %lx\n",*(unsigned long *)image_start); - -//printf("construct_dom0: about to call parseelfimage\n"); dsi.image_addr = (unsigned long)image_start; dsi.image_len = image_len; rc = parseelfimage(&dsi); @@ -883,11 +878,18 @@ int construct_dom0(struct domain *d, return -EINVAL; } + if(initrd_start&&initrd_len){ + pinitrd_start=(dom0_start+dom0_size) - + (PAGE_ALIGN(initrd_len) + 4*1024*1024); + + memcpy(__va(pinitrd_start),initrd_start,initrd_len); + } + printk("METAPHYSICAL MEMORY ARRANGEMENT:\n" " Kernel image: %lx->%lx\n" " Entry address: %lx\n" - " Init. ramdisk: (NOT IMPLEMENTED YET)\n", - pkern_start, pkern_end, pkern_entry); + " Init. ramdisk: %lx len %lx\n", + pkern_start, pkern_end, pkern_entry, pinitrd_start, initrd_len); if ( (pkern_end - pkern_start) > (d->max_pages * PAGE_SIZE) ) { diff --git a/xen/arch/ia64/xen/xensetup.c b/xen/arch/ia64/xen/xensetup.c index 49d11862a5..60c4ae5e31 100644 --- a/xen/arch/ia64/xen/xensetup.c +++ b/xen/arch/ia64/xen/xensetup.c @@ -153,7 +153,8 @@ void start_kernel(void) void *heap_start; int i; unsigned long max_mem, nr_pages, firsthole_start; - unsigned long dom0_memory_start, dom0_memory_end; + unsigned long dom0_memory_start, dom0_memory_size; + unsigned long dom0_initrd_start, dom0_initrd_size; unsigned long initial_images_start, initial_images_end; running_on_sim = is_platform_hp_ski(); @@ -190,8 +191,30 @@ void start_kernel(void) firsthole_start = 0; efi_memmap_walk(xen_find_first_hole, &firsthole_start); + if (ia64_boot_param->domain_start == 0 + || ia64_boot_param->domain_size == 0) { + /* This is possible only with the old elilo, which does not support + a vmm. Fix now, and continue without initrd. */ + printk ("Your elilo is not Xen-aware. Bootparams fixed\n"); + ia64_boot_param->domain_start = ia64_boot_param->initrd_start; + ia64_boot_param->domain_size = ia64_boot_param->initrd_size; + ia64_boot_param->initrd_start = 0; + ia64_boot_param->initrd_size = 0; + } + initial_images_start = xenheap_phys_end; - initial_images_end = initial_images_start + ia64_boot_param->initrd_size; + initial_images_end = initial_images_start + + PAGE_ALIGN(ia64_boot_param->domain_size); + + /* also reserve space for initrd */ + if (ia64_boot_param->initrd_start && ia64_boot_param->initrd_size) + initial_images_end += PAGE_ALIGN(ia64_boot_param->initrd_size); + else { + /* sanity cleanup */ + ia64_boot_param->initrd_size = 0; + ia64_boot_param->initrd_start = 0; + } + /* Later may find another memory trunk, even away from xen image... */ if (initial_images_end > firsthole_start) { @@ -203,11 +226,21 @@ void start_kernel(void) /* This copy is time consuming, but elilo may load Dom0 image * within xenheap range */ - printk("ready to move Dom0 to 0x%lx...", initial_images_start); + printk("ready to move Dom0 to 0x%lx with len %lx...", initial_images_start, + ia64_boot_param->domain_size); + memmove(__va(initial_images_start), + __va(ia64_boot_param->domain_start), + ia64_boot_param->domain_size); +// ia64_boot_param->domain_start = initial_images_start; + + printk("ready to move initrd to 0x%lx with len %lx...", + initial_images_start+PAGE_ALIGN(ia64_boot_param->domain_size), + ia64_boot_param->initrd_size); + memmove(__va(initial_images_start+PAGE_ALIGN(ia64_boot_param->domain_size)), + __va(ia64_boot_param->initrd_start), ia64_boot_param->initrd_size); - ia64_boot_param->initrd_start = initial_images_start; printk("Done\n"); /* first find highest page frame number */ @@ -329,13 +362,16 @@ printk("About to call do_createdomain()\n"); * We're going to setup domain0 using the module(s) that we stashed safely * above our heap. The second module, if present, is an initrd ramdisk. */ -printk("About to call construct_dom0()\n"); - dom0_memory_start = __va(ia64_boot_param->initrd_start); - dom0_memory_end = ia64_boot_param->initrd_size; - if ( construct_dom0(dom0, dom0_memory_start, dom0_memory_end, - 0, - 0, - 0) != 0) + printk("About to call construct_dom0()\n"); + dom0_memory_start = __va(initial_images_start); + dom0_memory_size = ia64_boot_param->domain_size; + dom0_initrd_start = __va(initial_images_start + + PAGE_ALIGN(ia64_boot_param->domain_size)); + dom0_initrd_size = ia64_boot_param->initrd_size; + + if ( construct_dom0(dom0, dom0_memory_start, dom0_memory_size, + dom0_initrd_start,dom0_initrd_size, + 0) != 0) panic("Could not set up DOM0 guest OS\n"); /* PIN domain0 on CPU 0. */ @@ -345,22 +381,28 @@ printk("About to call construct_dom0()\n"); #ifdef CLONE_DOMAIN0 { int i; - dom0_memory_start = __va(ia64_boot_param->initrd_start); - dom0_memory_end = ia64_boot_param->initrd_size; + dom0_memory_start = __va(ia64_boot_param->domain_start); + dom0_memory_size = ia64_boot_param->domain_size; + for (i = 0; i < CLONE_DOMAIN0; i++) { -printk("CONSTRUCTING DOMAIN0 CLONE #%d\n",i+1); - if ( construct_domU(clones[i], dom0_memory_start, dom0_memory_end, - 0, - 0, - 0) != 0) + printk("CONSTRUCTING DOMAIN0 CLONE #%d\n",i+1); + if ( construct_domU(clones[i], dom0_memory_start, dom0_memory_size, + dom0_initrd_start,dom0_initrd_size, + 0) != 0) panic("Could not set up DOM0 clone %d\n",i); } } #endif /* The stash space for the initial kernel image can now be freed up. */ - init_domheap_pages(ia64_boot_param->initrd_start, - ia64_boot_param->initrd_start + ia64_boot_param->initrd_size); + init_domheap_pages(ia64_boot_param->domain_start, + ia64_boot_param->domain_size); + /* throw away initrd area passed from elilo */ + if (ia64_boot_param->initrd_size) { + init_domheap_pages(ia64_boot_param->initrd_start, + ia64_boot_param->initrd_size); + } + if (!running_on_sim) // slow on ski and pages are pre-initialized to zero scrub_heap_pages(); diff --git a/xen/include/asm-ia64/linux-xen/asm/system.h b/xen/include/asm-ia64/linux-xen/asm/system.h index e77f67225f..1f53552e48 100644 --- a/xen/include/asm-ia64/linux-xen/asm/system.h +++ b/xen/include/asm-ia64/linux-xen/asm/system.h @@ -56,6 +56,10 @@ extern struct ia64_boot_param { __u64 fpswa; /* physical address of the fpswa interface */ __u64 initrd_start; __u64 initrd_size; +//for loading initrd for dom0 + __u64 domain_start; /* virtual address where the boot time domain begins */ + __u64 domain_size; /* how big is the boot domain */ + } *ia64_boot_param; /* From a2c3a1959d29219f6943af74f3554423eba61e03 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Thu, 17 Nov 2005 07:23:14 -0600 Subject: [PATCH 10/19] Remove old version of xen xlilo patch --- xen/arch/ia64/tools/xelilo/xen4elilo.patch | 187 --------------------- 1 file changed, 187 deletions(-) delete mode 100755 xen/arch/ia64/tools/xelilo/xen4elilo.patch diff --git a/xen/arch/ia64/tools/xelilo/xen4elilo.patch b/xen/arch/ia64/tools/xelilo/xen4elilo.patch deleted file mode 100755 index 6ab7a74836..0000000000 --- a/xen/arch/ia64/tools/xelilo/xen4elilo.patch +++ /dev/null @@ -1,187 +0,0 @@ - -diff -r f2309ac2648a xen/arch/ia64/xen/dom_fw.c ---- a/xen/arch/ia64/xen/dom_fw.c Tue Sep 20 19:03:25 2005 -+++ b/xen/arch/ia64/xen/dom_fw.c Tue Sep 20 20:10:36 2005 -@@ -686,6 +686,12 @@ - bp->console_info.orig_x = 0; - bp->console_info.orig_y = 24; - bp->fpswa = 0; -+ bp->initrd_start = (dom0_start+dom0_size) - -+ (PAGE_ALIGN(ia64_boot_param->initrd_size) + 4*1024*1024); -+ bp->initrd_size = ia64_boot_param->initrd_size; -+ printf(" initrd start %0xlx", bp->initrd_start); -+ printf(" initrd size %0xlx", bp->initrd_size); -+ - - return bp; - } -diff -r f2309ac2648a xen/arch/ia64/xen/domain.c ---- a/xen/arch/ia64/xen/domain.c Tue Sep 20 19:03:25 2005 -+++ b/xen/arch/ia64/xen/domain.c Tue Sep 20 20:10:36 2005 -@@ -830,6 +830,7 @@ - unsigned long pkern_start; - unsigned long pkern_entry; - unsigned long pkern_end; -+ unsigned long pinitrd_start = 0; - unsigned long ret, progress = 0; - - //printf("construct_dom0: starting\n"); -@@ -848,12 +849,6 @@ - alloc_start = dom0_start; - alloc_end = dom0_start + dom0_size; - d->tot_pages = d->max_pages = dom0_size/PAGE_SIZE; -- image_start = __va(ia64_boot_param->initrd_start); -- image_len = ia64_boot_param->initrd_size; --//printk("image_start=%lx, image_len=%lx\n",image_start,image_len); --//printk("First word of image: %lx\n",*(unsigned long *)image_start); -- --//printf("construct_dom0: about to call parseelfimage\n"); - dsi.image_addr = (unsigned long)image_start; - dsi.image_len = image_len; - rc = parseelfimage(&dsi); -@@ -890,11 +885,18 @@ - return -EINVAL; - } - -+ if(initrd_start&&initrd_len){ -+ pinitrd_start=(dom0_start+dom0_size) - -+ (PAGE_ALIGN(initrd_len) + 4*1024*1024); -+ -+ memcpy(__va(pinitrd_start),initrd_start,initrd_len); -+ } -+ - printk("METAPHYSICAL MEMORY ARRANGEMENT:\n" - " Kernel image: %lx->%lx\n" - " Entry address: %lx\n" -- " Init. ramdisk: (NOT IMPLEMENTED YET)\n", -- pkern_start, pkern_end, pkern_entry); -+ " Init. ramdisk: %lx len %lx\n", -+ pkern_start, pkern_end, pkern_entry, pinitrd_start, initrd_len); - - if ( (pkern_end - pkern_start) > (d->max_pages * PAGE_SIZE) ) - { -diff -r f2309ac2648a xen/arch/ia64/xen/xensetup.c ---- a/xen/arch/ia64/xen/xensetup.c Tue Sep 20 19:03:25 2005 -+++ b/xen/arch/ia64/xen/xensetup.c Tue Sep 20 20:10:36 2005 -@@ -153,7 +153,8 @@ - void *heap_start; - int i; - unsigned long max_mem, nr_pages, firsthole_start; -- unsigned long dom0_memory_start, dom0_memory_end; -+ unsigned long dom0_memory_start, dom0_memory_size; -+ unsigned long dom0_initrd_start, dom0_initrd_size; - unsigned long initial_images_start, initial_images_end; - - running_on_sim = is_platform_hp_ski(); -@@ -191,7 +192,18 @@ - efi_memmap_walk(xen_find_first_hole, &firsthole_start); - - initial_images_start = xenheap_phys_end; -- initial_images_end = initial_images_start + ia64_boot_param->initrd_size; -+ initial_images_end = initial_images_start + -+ PAGE_ALIGN(ia64_boot_param->domain_size); -+ -+ /* also reserve space for initrd */ -+ if (ia64_boot_param->initrd_start && ia64_boot_param->initrd_size) -+ initial_images_end += PAGE_ALIGN(ia64_boot_param->initrd_size); -+ else { -+ /* sanity cleanup */ -+ ia64_boot_param->initrd_size = 0; -+ ia64_boot_param->initrd_start = 0; -+ } -+ - - /* Later may find another memory trunk, even away from xen image... */ - if (initial_images_end > firsthole_start) { -@@ -203,11 +215,21 @@ - - /* This copy is time consuming, but elilo may load Dom0 image - * within xenheap range */ -- printk("ready to move Dom0 to 0x%lx...", initial_images_start); -+ printk("ready to move Dom0 to 0x%lx with len %lx...", initial_images_start, -+ ia64_boot_param->domain_size); -+ - memmove(__va(initial_images_start), -+ __va(ia64_boot_param->domain_start), -+ ia64_boot_param->domain_size); -+// ia64_boot_param->domain_start = initial_images_start; -+ -+ printk("ready to move initrd to 0x%lx with len %lx...", -+ initial_images_start+PAGE_ALIGN(ia64_boot_param->domain_size), -+ ia64_boot_param->initrd_size); -+ memmove(__va(initial_images_start+PAGE_ALIGN(ia64_boot_param->domain_size)), -+ - __va(ia64_boot_param->initrd_start), - ia64_boot_param->initrd_size); -- ia64_boot_param->initrd_start = initial_images_start; - printk("Done\n"); - - /* first find highest page frame number */ -@@ -335,23 +357,26 @@ - * above our heap. The second module, if present, is an initrd ramdisk. - */ - printk("About to call construct_dom0()\n"); -- dom0_memory_start = __va(ia64_boot_param->initrd_start); -- dom0_memory_end = ia64_boot_param->initrd_size; -- if ( construct_dom0(dom0, dom0_memory_start, dom0_memory_end, -- 0, -- 0, -+ dom0_memory_start = __va(initial_images_start); -+ dom0_memory_size = ia64_boot_param->domain_size; -+ dom0_initrd_start = __va(initial_images_start + -+ PAGE_ALIGN(ia64_boot_param->domain_size)); -+ dom0_initrd_size = ia64_boot_param->initrd_size; -+ -+ if ( construct_dom0(dom0, dom0_memory_start, dom0_memory_size, -+ dom0_initrd_start,dom0_initrd_size, - 0) != 0) - panic("Could not set up DOM0 guest OS\n"); - #ifdef CLONE_DOMAIN0 - { - int i; -- dom0_memory_start = __va(ia64_boot_param->initrd_start); -- dom0_memory_end = ia64_boot_param->initrd_size; -+ dom0_memory_start = __va(ia64_boot_param->domain_start); -+ dom0_memory_size = ia64_boot_param->domain_size; -+ - for (i = 0; i < CLONE_DOMAIN0; i++) { - printk("CONSTRUCTING DOMAIN0 CLONE #%d\n",i+1); -- if ( construct_domU(clones[i], dom0_memory_start, dom0_memory_end, -- 0, -- 0, -+ if ( construct_domU(clones[i], dom0_memory_start, dom0_memory_size, -+ dom0_initrd_start,dom0_initrd_size, - 0) != 0) - panic("Could not set up DOM0 clone %d\n",i); - } -@@ -359,8 +384,14 @@ - #endif - - /* The stash space for the initial kernel image can now be freed up. */ -- init_domheap_pages(ia64_boot_param->initrd_start, -- ia64_boot_param->initrd_start + ia64_boot_param->initrd_size); -+ init_domheap_pages(ia64_boot_param->domain_start, -+ ia64_boot_param->domain_size); -+ /* throw away initrd area passed from elilo */ -+ if (ia64_boot_param->initrd_size) { -+ init_domheap_pages(ia64_boot_param->initrd_start, -+ ia64_boot_param->initrd_size); -+ } -+ - if (!running_on_sim) // slow on ski and pages are pre-initialized to zero - scrub_heap_pages(); - -diff -r f2309ac2648a xen/include/asm-ia64/linux-xen/asm/system.h ---- a/xen/include/asm-ia64/linux-xen/asm/system.h Tue Sep 20 19:03:25 2005 -+++ b/xen/include/asm-ia64/linux-xen/asm/system.h Tue Sep 20 20:10:36 2005 -@@ -56,6 +56,10 @@ - __u64 fpswa; /* physical address of the fpswa interface */ - __u64 initrd_start; - __u64 initrd_size; -+//for loading initrd for dom0 -+ __u64 domain_start; /* virtual address where the boot time domain begins */ -+ __u64 domain_size; /* how big is the boot domain */ -+ - } *ia64_boot_param; - - /* From da6c57b623db8653482de8b18326955825b72e9d Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Thu, 17 Nov 2005 10:28:45 -0600 Subject: [PATCH 11/19] Turn off duplicate console output (by Alex Williamson) --- linux-2.6-xen-sparse/arch/ia64/xen/xenconsole.c | 1 + 1 file changed, 1 insertion(+) diff --git a/linux-2.6-xen-sparse/arch/ia64/xen/xenconsole.c b/linux-2.6-xen-sparse/arch/ia64/xen/xenconsole.c index 19762d844a..e7010d96fd 100644 --- a/linux-2.6-xen-sparse/arch/ia64/xen/xenconsole.c +++ b/linux-2.6-xen-sparse/arch/ia64/xen/xenconsole.c @@ -9,6 +9,7 @@ early_xen_console_setup (char *cmdline) extern int running_on_xen; if (running_on_xen) { extern struct console hpsim_cons; + hpsim_cons.flags |= CON_BOOT; register_console(&hpsim_cons); return 0; } From 64f8b7c045dcf807f1d04f131cd9177fcea331c0 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Thu, 17 Nov 2005 10:32:22 -0600 Subject: [PATCH 12/19] Parse all ACPI MADT entries, not just NR_CPUS (by Alex Williamson) --- xen/arch/ia64/xen/dom_fw.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/xen/arch/ia64/xen/dom_fw.c b/xen/arch/ia64/xen/dom_fw.c index 83348a76a0..d02bd11d84 100644 --- a/xen/arch/ia64/xen/dom_fw.c +++ b/xen/arch/ia64/xen/dom_fw.c @@ -466,11 +466,8 @@ acpi_update_madt_checksum (unsigned long phys_addr, unsigned long size) /* base is physical address of acpi table */ void touch_acpi_table(void) { - u64 count = 0; - count = acpi_table_parse_madt(ACPI_MADT_LSAPIC, acpi_update_lsapic, NR_CPUS); - if ( count < 1) + if (acpi_table_parse_madt(ACPI_MADT_LSAPIC, acpi_update_lsapic, 0) < 0) printk("Error parsing MADT - no LAPIC entires\n"); - printk("Total %d lsapic entry\n", count); acpi_table_parse(ACPI_APIC, acpi_update_madt_checksum); return; From 7b6f7ffd28a79cb6e27a581fc0798f4715e9e5fc Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Thu, 17 Nov 2005 18:35:14 -0600 Subject: [PATCH 13/19] Turn off DOMU_BUILD_STAGING, no longer needed (flagged by Kevin Tian) --- xen/include/asm-ia64/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/include/asm-ia64/config.h b/xen/include/asm-ia64/config.h index fec2d5bff3..53c29dbeb9 100644 --- a/xen/include/asm-ia64/config.h +++ b/xen/include/asm-ia64/config.h @@ -5,7 +5,7 @@ // control flags for turning on/off features under test #undef CLONE_DOMAIN0 //#define CLONE_DOMAIN0 1 -#define DOMU_BUILD_STAGING +#undef DOMU_BUILD_STAGING #define VHPT_GLOBAL #define DOMU_AUTO_RESTART From 32a58ce42957b444204dbba2f39081bbd68bcc73 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Fri, 18 Nov 2005 10:01:10 -0600 Subject: [PATCH 14/19] Remove DOMU_BUILD_STAGING and supporting code entirely, no longer needed --- xen/arch/ia64/xen/domain.c | 69 ----------------------------------- xen/arch/ia64/xen/hypercall.c | 20 +--------- xen/arch/ia64/xen/xensetup.c | 3 -- 3 files changed, 2 insertions(+), 90 deletions(-) diff --git a/xen/arch/ia64/xen/domain.c b/xen/arch/ia64/xen/domain.c index aa1e470f4f..c2530421d2 100644 --- a/xen/arch/ia64/xen/domain.c +++ b/xen/arch/ia64/xen/domain.c @@ -51,12 +51,6 @@ unsigned long dom0_start = -1L; unsigned long dom0_size = 512*1024*1024; unsigned long dom0_align = 64*1024*1024; -#ifdef DOMU_BUILD_STAGING -unsigned long domU_staging_size = 32*1024*1024; //FIXME: Should be configurable -unsigned long domU_staging_start; -unsigned long domU_staging_align = 64*1024; -unsigned long *domU_staging_area; -#endif // initialized by arch/ia64/setup.c:find_initrd() unsigned long initrd_start = 0, initrd_end = 0; @@ -750,46 +744,6 @@ void alloc_dom0(void) } -#ifdef DOMU_BUILD_STAGING -void alloc_domU_staging(void) -{ - domU_staging_size = 32*1024*1024; //FIXME: Should be configurable - printf("alloc_domU_staging: starting (initializing %d MB...)\n",domU_staging_size/(1024*1024)); - domU_staging_start = alloc_boot_pages( - domU_staging_size >> PAGE_SHIFT, domU_staging_align >> PAGE_SHIFT); - domU_staging_start <<= PAGE_SHIFT; - if (!domU_staging_size) { - printf("alloc_domU_staging: can't allocate, spinning...\n"); - while(1); - } - else domU_staging_area = (unsigned long *)__va(domU_staging_start); - printf("alloc_domU_staging: domU_staging_area=%p\n",domU_staging_area); - -} - -unsigned long -domU_staging_read_8(unsigned long at) -{ - // no way to return errors so just do it - return domU_staging_area[at>>3]; - -} - -unsigned long -domU_staging_write_32(unsigned long at, unsigned long a, unsigned long b, - unsigned long c, unsigned long d) -{ - if (at + 32 > domU_staging_size) return -1; - if (at & 0x1f) return -1; - at >>= 3; - domU_staging_area[at++] = a; - domU_staging_area[at++] = b; - domU_staging_area[at++] = c; - domU_staging_area[at] = d; - return 0; - -} -#endif /* * Domain 0 has direct access to all devices absolutely. However @@ -1076,29 +1030,6 @@ void reconstruct_domU(struct vcpu *v) } #endif -// FIXME: When dom0 can construct domains, this goes away (or is rewritten) -int launch_domainU(unsigned long size) -{ -#ifdef CLONE_DOMAIN0 - static int next = CLONE_DOMAIN0+1; -#else - static int next = 1; -#endif - - struct domain *d = do_createdomain(next,0); - if (!d) { - printf("launch_domainU: couldn't create\n"); - return 1; - } - else next++; - if (construct_domU(d, (unsigned long)domU_staging_area, size,0,0,0)) { - printf("launch_domainU: couldn't construct(id=%d,%lx,%lx)\n", - d->domain_id,domU_staging_area,size); - return 2; - } - domain_unpause_by_systemcontroller(d); -} - void machine_restart(char * __unused) { if (platform_is_hp_ski()) dummy(); diff --git a/xen/arch/ia64/xen/hypercall.c b/xen/arch/ia64/xen/hypercall.c index 13f17500a9..f195c2ba79 100644 --- a/xen/arch/ia64/xen/hypercall.c +++ b/xen/arch/ia64/xen/hypercall.c @@ -123,32 +123,16 @@ ia64_hypercall (struct pt_regs *regs) // FIXME: need fixes in efi.h from 2.6.9 regs->r8 = EFI_UNSUPPORTED; break; - case 0xffff: // test dummy hypercall + case 0xffff: regs->r8 = dump_privop_counts_to_user( vcpu_get_gr(v,32), vcpu_get_gr(v,33)); break; - case 0xfffe: // test dummy hypercall + case 0xfffe: regs->r8 = zero_privop_counts_to_user( vcpu_get_gr(v,32), vcpu_get_gr(v,33)); break; - case 0xfffd: // test dummy hypercall - regs->r8 = launch_domainU( - vcpu_get_gr(v,32)); - break; - case 0xfffc: // test dummy hypercall - regs->r8 = domU_staging_write_32( - vcpu_get_gr(v,32), - vcpu_get_gr(v,33), - vcpu_get_gr(v,34), - vcpu_get_gr(v,35), - vcpu_get_gr(v,36)); - break; - case 0xfffb: // test dummy hypercall - regs->r8 = domU_staging_read_8(vcpu_get_gr(v,32)); - break; - case __HYPERVISOR_dom0_op: regs->r8 = do_dom0_op(regs->r14); break; diff --git a/xen/arch/ia64/xen/xensetup.c b/xen/arch/ia64/xen/xensetup.c index 60c4ae5e31..6e6da4c3ea 100644 --- a/xen/arch/ia64/xen/xensetup.c +++ b/xen/arch/ia64/xen/xensetup.c @@ -268,9 +268,6 @@ void start_kernel(void) __ia64_init_fpu(); alloc_dom0(); -#ifdef DOMU_BUILD_STAGING - alloc_domU_staging(); -#endif end_boot_allocator(); From f3ccc1264462cb6164a021dc21c43a2c81db1701 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Fri, 18 Nov 2005 10:58:03 -0600 Subject: [PATCH 15/19] Properly pass iha/itir if data miss occurs when fetching privop (by Matt Chapman) --- xen/arch/ia64/xen/process.c | 7 ++----- xen/arch/ia64/xen/vcpu.c | 2 ++ 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/xen/arch/ia64/xen/process.c b/xen/arch/ia64/xen/process.c index cfe91e4ef4..a8d5c96c15 100644 --- a/xen/arch/ia64/xen/process.c +++ b/xen/arch/ia64/xen/process.c @@ -698,13 +698,10 @@ ia64_handle_privop (unsigned long ifa, struct pt_regs *regs, unsigned long isr, IA64FAULT vector; struct domain *d = current->domain; struct vcpu *v = current; - // FIXME: no need to pass itir in to this routine as we need to - // compute the virtual itir anyway (based on domain's RR.ps) - // AND ACTUALLY reflect_interruption doesn't use it anyway! vector = priv_emulate(current,regs,isr); if (vector != IA64_NO_FAULT && vector != IA64_RFI_IN_PROGRESS) { - PSCB(current,itir) = - vcpu_get_itir_on_fault(v,PSCB(current,ifa)); + // Note: if a path results in a vector to reflect that requires + // iha/itir (e.g. vcpu_force_data_miss), they must be set there reflect_interruption(isr,regs,vector); } } diff --git a/xen/arch/ia64/xen/vcpu.c b/xen/arch/ia64/xen/vcpu.c index 363d426c7f..33969d0774 100644 --- a/xen/arch/ia64/xen/vcpu.c +++ b/xen/arch/ia64/xen/vcpu.c @@ -1186,6 +1186,8 @@ Privileged operation emulation routines IA64FAULT vcpu_force_data_miss(VCPU *vcpu, UINT64 ifa) { PSCB(vcpu,ifa) = ifa; + PSCB(vcpu,itir) = vcpu_get_itir_on_fault(vcpu,ifa); + vcpu_thash(current, ifa, &PSCB(current,iha)); return (vcpu_get_rr_ve(vcpu,ifa) ? IA64_DATA_TLB_VECTOR : IA64_ALT_DATA_TLB_VECTOR); } From 081db0ddef0367bedd3fa1baa2202c2ceeca6a61 Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Fri, 18 Nov 2005 11:04:58 -0600 Subject: [PATCH 16/19] Fix read of guest psr to properly set dfh and other bits (by Matt Chapman) --- xen/arch/ia64/xen/vcpu.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/xen/arch/ia64/xen/vcpu.c b/xen/arch/ia64/xen/vcpu.c index 33969d0774..4aa50eea40 100644 --- a/xen/arch/ia64/xen/vcpu.c +++ b/xen/arch/ia64/xen/vcpu.c @@ -345,19 +345,17 @@ IA64FAULT vcpu_set_psr_l(VCPU *vcpu, UINT64 val) IA64FAULT vcpu_get_psr(VCPU *vcpu, UINT64 *pval) { - UINT64 psr; + REGS *regs = vcpu_regs(vcpu); struct ia64_psr newpsr; - // TODO: This needs to return a "filtered" view of - // the psr, not the actual psr. Probably the psr needs - // to be a field in regs (in addition to ipsr). - __asm__ __volatile ("mov %0=psr;;" : "=r"(psr) :: "memory"); - newpsr = *(struct ia64_psr *)&psr; + newpsr = *(struct ia64_psr *)®s->cr_ipsr; if (newpsr.cpl == 2) newpsr.cpl = 0; if (PSCB(vcpu,interrupt_delivery_enabled)) newpsr.i = 1; else newpsr.i = 0; if (PSCB(vcpu,interrupt_collection_enabled)) newpsr.ic = 1; else newpsr.ic = 0; + if (PSCB(vcpu,metaphysical_mode)) newpsr.dt = 0; + else newpsr.dt = 1; // FIXME: need new field in mapped_regs_t for virtual psr.pp (psr.be too?) if (PSCB(vcpu,tmp[8])) newpsr.pp = 1; else newpsr.pp = 0; From 16ef7e78b4ce0e8b5c033de76c66eefd26ea786b Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Fri, 18 Nov 2005 23:06:09 -0600 Subject: [PATCH 17/19] Fall back to zx1-based configs, defconfigs don't work yet to boot domU --- .../arch/xen/configs/xen0_defconfig_ia64 | 529 ++++++++++-------- .../arch/xen/configs/xenU_defconfig_ia64 | 3 +- 2 files changed, 285 insertions(+), 247 deletions(-) diff --git a/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 b/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 index 7b5170cab9..e2fbe53f60 100644 --- a/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 +++ b/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 @@ -1,14 +1,16 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.12.6-xen0 -# Wed Nov 16 15:26:28 2005 +# Linux kernel version: 2.6.12 +# Thu Sep 15 11:04:33 2005 # # # Code maturity level options # CONFIG_EXPERIMENTAL=y -CONFIG_CLEAN_COMPILE=y +# CONFIG_CLEAN_COMPILE is not set +CONFIG_BROKEN=y +CONFIG_BROKEN_ON_SMP=y CONFIG_LOCK_KERNEL=y CONFIG_INIT_ENV_ARG_LIMIT=32 @@ -18,18 +20,18 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_LOCALVERSION="" CONFIG_SWAP=y CONFIG_SYSVIPC=y -CONFIG_POSIX_MQUEUE=y -# CONFIG_BSD_PROCESS_ACCT is not set +# CONFIG_POSIX_MQUEUE is not set +CONFIG_BSD_PROCESS_ACCT=y +# CONFIG_BSD_PROCESS_ACCT_V3 is not set CONFIG_SYSCTL=y # CONFIG_AUDIT is not set CONFIG_HOTPLUG=y CONFIG_KOBJECT_UEVENT=y -CONFIG_IKCONFIG=y -CONFIG_IKCONFIG_PROC=y +# CONFIG_IKCONFIG is not set # CONFIG_CPUSETS is not set # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y -CONFIG_KALLSYMS_ALL=y +# CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_PRINTK=y CONFIG_BUG=y @@ -48,13 +50,11 @@ CONFIG_BASE_SMALL=0 # Loadable module support # CONFIG_MODULES=y -CONFIG_MODULE_UNLOAD=y -# CONFIG_MODULE_FORCE_UNLOAD is not set +# CONFIG_MODULE_UNLOAD is not set CONFIG_OBSOLETE_MODPARM=y -CONFIG_MODVERSIONS=y +# CONFIG_MODVERSIONS is not set # CONFIG_MODULE_SRCVERSION_ALL is not set -CONFIG_KMOD=y -CONFIG_STOP_MACHINE=y +# CONFIG_KMOD is not set # # Processor type and features @@ -74,10 +74,12 @@ CONFIG_XEN_PRIVILEGED_GUEST=y CONFIG_XEN_PHYSDEV_ACCESS=y CONFIG_XEN_BLKDEV_GRANT=y CONFIG_XEN_BLKDEV_FRONTEND=y +CONFIG_VGA_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE=n CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y -CONFIG_IA64_GENERIC=y +# CONFIG_IA64_GENERIC is not set # CONFIG_IA64_DIG is not set -# CONFIG_IA64_HP_ZX1 is not set +CONFIG_IA64_HP_ZX1=y # CONFIG_IA64_HP_ZX1_SWIOTLB is not set # CONFIG_IA64_SGI_SN2 is not set # CONFIG_IA64_HP_SIM is not set @@ -88,16 +90,15 @@ CONFIG_MCKINLEY=y CONFIG_IA64_PAGE_SIZE_16KB=y # CONFIG_IA64_PAGE_SIZE_64KB is not set CONFIG_IA64_L1_CACHE_SHIFT=7 -CONFIG_NUMA=y +# CONFIG_NUMA is not set CONFIG_VIRTUAL_MEM_MAP=y CONFIG_HOLES_IN_ZONE=y -CONFIG_DISCONTIGMEM=y -CONFIG_IA64_CYCLONE=y +# CONFIG_IA64_CYCLONE is not set CONFIG_IOSAPIC=y CONFIG_FORCE_MAX_ZONEORDER=18 CONFIG_SMP=y -CONFIG_NR_CPUS=512 -CONFIG_HOTPLUG_CPU=y +CONFIG_NR_CPUS=16 +# CONFIG_HOTPLUG_CPU is not set # CONFIG_SCHED_SMT is not set # CONFIG_PREEMPT is not set CONFIG_HAVE_DEC_LOCK=y @@ -127,19 +128,17 @@ CONFIG_ACPI=y CONFIG_ACPI_BOOT=y CONFIG_ACPI_INTERPRETER=y CONFIG_ACPI_BUTTON=y -CONFIG_ACPI_VIDEO=y +# CONFIG_ACPI_VIDEO is not set CONFIG_ACPI_FAN=y CONFIG_ACPI_PROCESSOR=y -CONFIG_ACPI_HOTPLUG_CPU=y CONFIG_ACPI_THERMAL=y -CONFIG_ACPI_NUMA=y CONFIG_ACPI_BLACKLIST_YEAR=0 # CONFIG_ACPI_DEBUG is not set CONFIG_ACPI_BUS=y CONFIG_ACPI_POWER=y CONFIG_ACPI_PCI=y CONFIG_ACPI_SYSTEM=y -CONFIG_ACPI_CONTAINER=y +# CONFIG_ACPI_CONTAINER is not set # # Bus options (PCI, PCMCIA) @@ -202,8 +201,8 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_BLK_DEV_UMEM is not set # CONFIG_BLK_DEV_COW_COMMON is not set CONFIG_BLK_DEV_LOOP=y -CONFIG_BLK_DEV_CRYPTOLOOP=y -CONFIG_BLK_DEV_NBD=y +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_SX8 is not set # CONFIG_BLK_DEV_UB is not set CONFIG_BLK_DEV_RAM=y @@ -225,60 +224,7 @@ CONFIG_IOSCHED_CFQ=y # # ATA/ATAPI/MFM/RLL support # -CONFIG_IDE=y -CONFIG_BLK_DEV_IDE=y - -# -# Please see Documentation/ide.txt for help/info on IDE drives -# -# CONFIG_BLK_DEV_IDE_SATA is not set -CONFIG_BLK_DEV_IDEDISK=y -# CONFIG_IDEDISK_MULTI_MODE is not set -CONFIG_BLK_DEV_IDECD=y -# CONFIG_BLK_DEV_IDETAPE is not set -CONFIG_BLK_DEV_IDEFLOPPY=y -CONFIG_BLK_DEV_IDESCSI=y -# CONFIG_IDE_TASK_IOCTL is not set - -# -# IDE chipset support/bugfixes -# -CONFIG_IDE_GENERIC=y -CONFIG_BLK_DEV_IDEPCI=y -# CONFIG_IDEPCI_SHARE_IRQ is not set -# CONFIG_BLK_DEV_OFFBOARD is not set -CONFIG_BLK_DEV_GENERIC=y -# CONFIG_BLK_DEV_OPTI621 is not set -CONFIG_BLK_DEV_IDEDMA_PCI=y -# CONFIG_BLK_DEV_IDEDMA_FORCED is not set -CONFIG_IDEDMA_PCI_AUTO=y -# CONFIG_IDEDMA_ONLYDISK is not set -# CONFIG_BLK_DEV_AEC62XX is not set -# CONFIG_BLK_DEV_ALI15X3 is not set -# CONFIG_BLK_DEV_AMD74XX is not set -CONFIG_BLK_DEV_CMD64X=y -# CONFIG_BLK_DEV_TRIFLEX is not set -# CONFIG_BLK_DEV_CY82C693 is not set -# CONFIG_BLK_DEV_CS5520 is not set -# CONFIG_BLK_DEV_CS5530 is not set -# CONFIG_BLK_DEV_HPT34X is not set -# CONFIG_BLK_DEV_HPT366 is not set -# CONFIG_BLK_DEV_SC1200 is not set -CONFIG_BLK_DEV_PIIX=y -# CONFIG_BLK_DEV_NS87415 is not set -# CONFIG_BLK_DEV_PDC202XX_OLD is not set -# CONFIG_BLK_DEV_PDC202XX_NEW is not set -# CONFIG_BLK_DEV_SVWKS is not set -CONFIG_BLK_DEV_SGIIOC4=y -# CONFIG_BLK_DEV_SIIMAGE is not set -# CONFIG_BLK_DEV_SLC90E66 is not set -# CONFIG_BLK_DEV_TRM290 is not set -# CONFIG_BLK_DEV_VIA82CXXX is not set -# CONFIG_IDE_ARM is not set -CONFIG_BLK_DEV_IDEDMA=y -# CONFIG_IDEDMA_IVB is not set -CONFIG_IDEDMA_AUTO=y -# CONFIG_BLK_DEV_HD is not set +# CONFIG_IDE is not set # # SCSI device support @@ -291,23 +237,23 @@ CONFIG_SCSI_PROC_FS=y # CONFIG_BLK_DEV_SD=y CONFIG_CHR_DEV_ST=y -# CONFIG_CHR_DEV_OSST is not set +CONFIG_CHR_DEV_OSST=y CONFIG_BLK_DEV_SR=y -# CONFIG_BLK_DEV_SR_VENDOR is not set +CONFIG_BLK_DEV_SR_VENDOR=y CONFIG_CHR_DEV_SG=y # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # -# CONFIG_SCSI_MULTI_LUN is not set -# CONFIG_SCSI_CONSTANTS is not set -# CONFIG_SCSI_LOGGING is not set +CONFIG_SCSI_MULTI_LUN=y +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_LOGGING=y # # SCSI Transport Attributes # CONFIG_SCSI_SPI_ATTRS=y -CONFIG_SCSI_FC_ATTRS=y +# CONFIG_SCSI_FC_ATTRS is not set # CONFIG_SCSI_ISCSI_ATTRS is not set # @@ -320,10 +266,13 @@ CONFIG_SCSI_FC_ATTRS=y # CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_ADVANSYS is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set +# CONFIG_SCSI_CPQFCTS is not set # CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INITIO is not set @@ -334,15 +283,17 @@ CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set # CONFIG_SCSI_IPR is not set -CONFIG_SCSI_QLOGIC_FC=y -# CONFIG_SCSI_QLOGIC_FC_FIRMWARE is not set +# CONFIG_SCSI_PCI2000 is not set +# CONFIG_SCSI_PCI2220I is not set +# CONFIG_SCSI_QLOGIC_ISP is not set +# CONFIG_SCSI_QLOGIC_FC is not set CONFIG_SCSI_QLOGIC_1280=y # CONFIG_SCSI_QLOGIC_1280_1040 is not set CONFIG_SCSI_QLA2XXX=y -CONFIG_SCSI_QLA21XX=y -CONFIG_SCSI_QLA22XX=y -CONFIG_SCSI_QLA2300=y -CONFIG_SCSI_QLA2322=y +# CONFIG_SCSI_QLA21XX is not set +# CONFIG_SCSI_QLA22XX is not set +# CONFIG_SCSI_QLA2300 is not set +# CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_LPFC is not set # CONFIG_SCSI_DC395x is not set @@ -352,22 +303,7 @@ CONFIG_SCSI_QLA2322=y # # Multi-device support (RAID and LVM) # -CONFIG_MD=y -CONFIG_BLK_DEV_MD=y -CONFIG_MD_LINEAR=y -CONFIG_MD_RAID0=y -CONFIG_MD_RAID1=y -# CONFIG_MD_RAID10 is not set -CONFIG_MD_RAID5=y -CONFIG_MD_RAID6=y -CONFIG_MD_MULTIPATH=y -# CONFIG_MD_FAULTY is not set -CONFIG_BLK_DEV_DM=y -CONFIG_DM_CRYPT=y -CONFIG_DM_SNAPSHOT=y -CONFIG_DM_MIRROR=y -CONFIG_DM_ZERO=y -# CONFIG_DM_MULTIPATH is not set +# CONFIG_MD is not set # # Fusion MPT device support @@ -405,16 +341,33 @@ CONFIG_IP_MULTICAST=y # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_IP_MROUTE is not set -CONFIG_ARPD=y -CONFIG_SYN_COOKIES=y +# CONFIG_ARPD is not set +# CONFIG_SYN_COOKIES is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set -CONFIG_IP_TCPDIAG=y +# CONFIG_IP_TCPDIAG is not set # CONFIG_IP_TCPDIAG_IPV6 is not set + +# +# IP: Virtual Server Configuration +# +# CONFIG_IP_VS is not set # CONFIG_IPV6 is not set -# CONFIG_NETFILTER is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set + +# +# IP: Netfilter Configuration +# +# CONFIG_IP_NF_CONNTRACK is not set +# CONFIG_IP_NF_CONNTRACK_MARK is not set +# CONFIG_IP_NF_QUEUE is not set +# CONFIG_IP_NF_IPTABLES is not set +CONFIG_IP_NF_ARPTABLES=y +# CONFIG_IP_NF_ARPFILTER is not set +# CONFIG_IP_NF_ARP_MANGLE is not set # # SCTP Configuration (EXPERIMENTAL) @@ -443,10 +396,8 @@ CONFIG_IP_TCPDIAG=y # Network testing # # CONFIG_NET_PKTGEN is not set -CONFIG_NETPOLL=y -# CONFIG_NETPOLL_RX is not set -# CONFIG_NETPOLL_TRAP is not set -CONFIG_NET_POLL_CONTROLLER=y +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set # CONFIG_BT is not set @@ -476,9 +427,10 @@ CONFIG_MII=y CONFIG_NET_TULIP=y # CONFIG_DE2104X is not set CONFIG_TULIP=y -# CONFIG_TULIP_MWI is not set -# CONFIG_TULIP_MMIO is not set -# CONFIG_TULIP_NAPI is not set +CONFIG_TULIP_MWI=y +CONFIG_TULIP_MMIO=y +CONFIG_TULIP_NAPI=y +CONFIG_TULIP_NAPI_HW_MITIGATION=y # CONFIG_DE4X5 is not set # CONFIG_WINBOND_840 is not set # CONFIG_DM9102 is not set @@ -490,7 +442,7 @@ CONFIG_NET_PCI=y # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_DGRS is not set -CONFIG_EEPRO100=y +# CONFIG_EEPRO100 is not set CONFIG_E100=y # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set @@ -544,7 +496,7 @@ CONFIG_TIGON3=y # CONFIG_SLIP is not set # CONFIG_NET_FC is not set # CONFIG_SHAPER is not set -CONFIG_NETCONSOLE=y +# CONFIG_NETCONSOLE is not set # # ISDN subsystem @@ -568,24 +520,16 @@ CONFIG_INPUT_MOUSEDEV=y CONFIG_INPUT_MOUSEDEV_PSAUX=y CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -# CONFIG_INPUT_JOYDEV is not set +CONFIG_INPUT_JOYDEV=y # CONFIG_INPUT_TSDEV is not set -# CONFIG_INPUT_EVDEV is not set +CONFIG_INPUT_EVDEV=y # CONFIG_INPUT_EVBUG is not set # # Input Device Drivers # -CONFIG_INPUT_KEYBOARD=y -CONFIG_KEYBOARD_ATKBD=y -# CONFIG_KEYBOARD_SUNKBD is not set -# CONFIG_KEYBOARD_LKKBD is not set -# CONFIG_KEYBOARD_XTKBD is not set -# CONFIG_KEYBOARD_NEWTON is not set -CONFIG_INPUT_MOUSE=y -CONFIG_MOUSE_PS2=y -# CONFIG_MOUSE_SERIAL is not set -# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set # CONFIG_INPUT_MISC is not set @@ -594,37 +538,17 @@ CONFIG_MOUSE_PS2=y # Hardware I/O ports # CONFIG_SERIO=y -CONFIG_SERIO_I8042=y +# CONFIG_SERIO_I8042 is not set # CONFIG_SERIO_SERPORT is not set # CONFIG_SERIO_PCIPS2 is not set -CONFIG_SERIO_LIBPS2=y # CONFIG_SERIO_RAW is not set -CONFIG_GAMEPORT=y -# CONFIG_GAMEPORT_NS558 is not set -# CONFIG_GAMEPORT_L4 is not set -# CONFIG_GAMEPORT_EMU10K1 is not set -# CONFIG_GAMEPORT_VORTEX is not set -# CONFIG_GAMEPORT_FM801 is not set -# CONFIG_GAMEPORT_CS461X is not set +# CONFIG_GAMEPORT is not set # # Character devices # -CONFIG_VT=y -CONFIG_VT_CONSOLE=y -CONFIG_HW_CONSOLE=y -CONFIG_SERIAL_NONSTANDARD=y -# CONFIG_ROCKETPORT is not set -# CONFIG_CYCLADES is not set -# CONFIG_MOXA_SMARTIO is not set -# CONFIG_ISI is not set -# CONFIG_SYNCLINKMP is not set -# CONFIG_N_HDLC is not set -# CONFIG_SPECIALIX is not set -# CONFIG_SX is not set -# CONFIG_STALDRV is not set -CONFIG_SGI_SNSC=y -# CONFIG_SGI_TIOCX is not set +# CONFIG_VT is not set +# CONFIG_SERIAL_NONSTANDARD is not set # # Serial drivers @@ -632,7 +556,7 @@ CONFIG_SGI_SNSC=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_ACPI=y -CONFIG_SERIAL_8250_NR_UARTS=6 +CONFIG_SERIAL_8250_NR_UARTS=8 CONFIG_SERIAL_8250_EXTENDED=y CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_8250_DETECT_IRQ is not set @@ -644,7 +568,6 @@ CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y -CONFIG_SERIAL_SGI_L1_CONSOLE=y # CONFIG_SERIAL_JSM is not set CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y @@ -669,22 +592,17 @@ CONFIG_EFI_RTC=y # Ftape, the floppy tape device driver # CONFIG_AGP=y -CONFIG_AGP_I460=y CONFIG_AGP_HP_ZX1=y -# CONFIG_AGP_SGI_TIOCA is not set CONFIG_DRM=y -CONFIG_DRM_TDFX=y -CONFIG_DRM_R128=y +# CONFIG_DRM_TDFX is not set +# CONFIG_DRM_GAMMA is not set +# CONFIG_DRM_R128 is not set CONFIG_DRM_RADEON=y -CONFIG_DRM_MGA=y -CONFIG_DRM_SIS=y -CONFIG_RAW_DRIVER=y -CONFIG_HPET=y -# CONFIG_HPET_RTC_IRQ is not set -CONFIG_HPET_MMAP=y -CONFIG_MAX_RAW_DEVS=256 +# CONFIG_DRM_MGA is not set +# CONFIG_DRM_SIS is not set +# CONFIG_RAW_DRIVER is not set +# CONFIG_HPET is not set # CONFIG_HANGCHECK_TIMER is not set -CONFIG_MMTIMER=y # # TPM devices @@ -694,7 +612,89 @@ CONFIG_MMTIMER=y # # I2C support # -# CONFIG_I2C is not set +CONFIG_I2C=y +CONFIG_I2C_CHARDEV=y + +# +# I2C Algorithms +# +CONFIG_I2C_ALGOBIT=y +CONFIG_I2C_ALGOPCF=y +# CONFIG_I2C_ALGOPCA is not set + +# +# I2C Hardware Bus support +# +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_I801 is not set +# CONFIG_I2C_I810 is not set +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_ISA is not set +# CONFIG_I2C_NFORCE2 is not set +# CONFIG_I2C_PARPORT_LIGHT is not set +# CONFIG_I2C_PROSAVAGE is not set +# CONFIG_I2C_SAVAGE4 is not set +# CONFIG_SCx200_ACB is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set +# CONFIG_I2C_VOODOO3 is not set +# CONFIG_I2C_PCA_ISA is not set + +# +# Hardware Sensors Chip support +# +# CONFIG_I2C_SENSOR is not set +# CONFIG_SENSORS_ADM1021 is not set +# CONFIG_SENSORS_ADM1025 is not set +# CONFIG_SENSORS_ADM1026 is not set +# CONFIG_SENSORS_ADM1031 is not set +# CONFIG_SENSORS_ASB100 is not set +# CONFIG_SENSORS_DS1621 is not set +# CONFIG_SENSORS_FSCHER is not set +# CONFIG_SENSORS_FSCPOS is not set +# CONFIG_SENSORS_GL518SM is not set +# CONFIG_SENSORS_GL520SM is not set +# CONFIG_SENSORS_IT87 is not set +# CONFIG_SENSORS_LM63 is not set +# CONFIG_SENSORS_LM75 is not set +# CONFIG_SENSORS_LM77 is not set +# CONFIG_SENSORS_LM78 is not set +# CONFIG_SENSORS_LM80 is not set +# CONFIG_SENSORS_LM83 is not set +# CONFIG_SENSORS_LM85 is not set +# CONFIG_SENSORS_LM87 is not set +# CONFIG_SENSORS_LM90 is not set +# CONFIG_SENSORS_LM92 is not set +# CONFIG_SENSORS_MAX1619 is not set +# CONFIG_SENSORS_PC87360 is not set +# CONFIG_SENSORS_SMSC47B397 is not set +# CONFIG_SENSORS_SIS5595 is not set +# CONFIG_SENSORS_SMSC47M1 is not set +# CONFIG_SENSORS_VIA686A is not set +# CONFIG_SENSORS_W83781D is not set +# CONFIG_SENSORS_W83L785TS is not set +# CONFIG_SENSORS_W83627HF is not set + +# +# Other I2C Chip support +# +# CONFIG_SENSORS_DS1337 is not set +# CONFIG_SENSORS_EEPROM is not set +# CONFIG_SENSORS_PCF8574 is not set +# CONFIG_SENSORS_PCF8591 is not set +# CONFIG_SENSORS_RTC8564 is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# CONFIG_I2C_DEBUG_CHIP is not set # # Dallas's 1-wire bus @@ -708,7 +708,37 @@ CONFIG_MMTIMER=y # # Multimedia devices # -# CONFIG_VIDEO_DEV is not set +CONFIG_VIDEO_DEV=y + +# +# Video For Linux +# + +# +# Video Adapters +# +# CONFIG_VIDEO_BT848 is not set +# CONFIG_VIDEO_CPIA is not set +# CONFIG_VIDEO_SAA5246A is not set +# CONFIG_VIDEO_SAA5249 is not set +# CONFIG_TUNER_3036 is not set +# CONFIG_VIDEO_STRADIS is not set +# CONFIG_VIDEO_ZORAN is not set +# CONFIG_VIDEO_ZR36120 is not set +# CONFIG_VIDEO_SAA7134 is not set +# CONFIG_VIDEO_MXB is not set +# CONFIG_VIDEO_DPC is not set +# CONFIG_VIDEO_HEXIUM_ORION is not set +# CONFIG_VIDEO_HEXIUM_GEMINI is not set +# CONFIG_VIDEO_CX88 is not set +# CONFIG_VIDEO_OVCAMCHIP is not set + +# +# Radio Adapters +# +# CONFIG_RADIO_GEMTEK_PCI is not set +# CONFIG_RADIO_MAXIRADIO is not set +# CONFIG_RADIO_MAESTRO is not set # # Digital Video Broadcasting Devices @@ -718,13 +748,47 @@ CONFIG_MMTIMER=y # # Graphics support # -# CONFIG_FB is not set +CONFIG_FB=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_SOFT_CURSOR=y +# CONFIG_FB_MACMODES is not set +CONFIG_FB_MODE_HELPERS=y +# CONFIG_FB_TILEBLITTING is not set +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON_OLD is not set +CONFIG_FB_RADEON=y +CONFIG_FB_RADEON_I2C=y +CONFIG_FB_RADEON_DEBUG=y +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_TRIDENT is not set +# CONFIG_FB_PM3 is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_VIRTUAL is not set # -# Console display driver support +# Logo configuration # -CONFIG_VGA_CONSOLE=y -CONFIG_DUMMY_CONSOLE=y +CONFIG_LOGO=y +# CONFIG_LOGO_LINUX_MONO is not set +# CONFIG_LOGO_LINUX_VGA16 is not set +CONFIG_LOGO_LINUX_CLUT224=y +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set # # Sound @@ -740,12 +804,12 @@ CONFIG_SND_PCM=y CONFIG_SND_HWDEP=y CONFIG_SND_RAWMIDI=y CONFIG_SND_SEQUENCER=y -CONFIG_SND_SEQ_DUMMY=y +# CONFIG_SND_SEQ_DUMMY is not set CONFIG_SND_OSSEMUL=y CONFIG_SND_MIXER_OSS=y CONFIG_SND_PCM_OSS=y CONFIG_SND_SEQUENCER_OSS=y -CONFIG_SND_VERBOSE_PRINTK=y +# CONFIG_SND_VERBOSE_PRINTK is not set # CONFIG_SND_DEBUG is not set # @@ -753,11 +817,11 @@ CONFIG_SND_VERBOSE_PRINTK=y # CONFIG_SND_MPU401_UART=y CONFIG_SND_OPL3_LIB=y -CONFIG_SND_DUMMY=y -CONFIG_SND_VIRMIDI=y -CONFIG_SND_MTPAV=y -CONFIG_SND_SERIAL_U16550=y -CONFIG_SND_MPU401=y +# CONFIG_SND_DUMMY is not set +# CONFIG_SND_VIRMIDI is not set +# CONFIG_SND_MTPAV is not set +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set # # PCI devices @@ -771,10 +835,9 @@ CONFIG_SND_AC97_CODEC=y # CONFIG_SND_AU8830 is not set # CONFIG_SND_AZT3328 is not set # CONFIG_SND_BT87X is not set -CONFIG_SND_CS46XX=y -CONFIG_SND_CS46XX_NEW_DSP=y -CONFIG_SND_CS4281=y -CONFIG_SND_EMU10K1=y +# CONFIG_SND_CS46XX is not set +# CONFIG_SND_CS4281 is not set +# CONFIG_SND_EMU10K1 is not set # CONFIG_SND_EMU10K1X is not set # CONFIG_SND_CA0106 is not set # CONFIG_SND_KORG1212 is not set @@ -794,7 +857,7 @@ CONFIG_SND_EMU10K1=y # CONFIG_SND_ES1968 is not set # CONFIG_SND_MAESTRO3 is not set CONFIG_SND_FM801=y -# CONFIG_SND_FM801_TEA575X is not set +CONFIG_SND_FM801_TEA575X=y # CONFIG_SND_ICE1712 is not set # CONFIG_SND_ICE1724 is not set # CONFIG_SND_INTEL8X0 is not set @@ -826,8 +889,8 @@ CONFIG_USB=y # # Miscellaneous USB options # -CONFIG_USB_DEVICEFS=y -# CONFIG_USB_BANDWIDTH is not set +# CONFIG_USB_DEVICEFS is not set +CONFIG_USB_BANDWIDTH=y # CONFIG_USB_DYNAMIC_MINORS is not set # CONFIG_USB_SUSPEND is not set # CONFIG_USB_OTG is not set @@ -860,7 +923,6 @@ CONFIG_USB_STORAGE=y # CONFIG_USB_STORAGE_DEBUG is not set # CONFIG_USB_STORAGE_DATAFAB is not set # CONFIG_USB_STORAGE_FREECOM is not set -# CONFIG_USB_STORAGE_ISD200 is not set # CONFIG_USB_STORAGE_DPCM is not set # CONFIG_USB_STORAGE_USBAT is not set # CONFIG_USB_STORAGE_SDDR09 is not set @@ -873,7 +935,7 @@ CONFIG_USB_STORAGE=y CONFIG_USB_HID=y CONFIG_USB_HIDINPUT=y # CONFIG_HID_FF is not set -# CONFIG_USB_HIDDEV is not set +CONFIG_USB_HIDDEV=y # CONFIG_USB_AIPTEK is not set # CONFIG_USB_WACOM is not set # CONFIG_USB_KBTAB is not set @@ -893,10 +955,15 @@ CONFIG_USB_HIDINPUT=y # USB Multimedia devices # # CONFIG_USB_DABUSB is not set - -# -# Video4Linux support is needed for USB Multimedia device support -# +# CONFIG_USB_VICAM is not set +# CONFIG_USB_DSBR is not set +# CONFIG_USB_IBMCAM is not set +# CONFIG_USB_KONICAWC is not set +# CONFIG_USB_OV511 is not set +# CONFIG_USB_SE401 is not set +# CONFIG_USB_SN9C102 is not set +# CONFIG_USB_STV680 is not set +# CONFIG_USB_PWC is not set # # USB Network Adapters @@ -932,7 +999,6 @@ CONFIG_USB_MON=y # CONFIG_USB_PHIDGETSERVO is not set # CONFIG_USB_IDMOUSE is not set # CONFIG_USB_SISUSBVGA is not set -# CONFIG_USB_TEST is not set # # USB ATM/DSL drivers @@ -951,50 +1017,35 @@ CONFIG_USB_MON=y # # InfiniBand support # -CONFIG_INFINIBAND=y -CONFIG_INFINIBAND_MTHCA=y -# CONFIG_INFINIBAND_MTHCA_DEBUG is not set -CONFIG_INFINIBAND_IPOIB=y -# CONFIG_INFINIBAND_IPOIB_DEBUG is not set +# CONFIG_INFINIBAND is not set # # File systems # CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y -CONFIG_EXT2_FS_POSIX_ACL=y -CONFIG_EXT2_FS_SECURITY=y +# CONFIG_EXT2_FS_POSIX_ACL is not set +# CONFIG_EXT2_FS_SECURITY is not set CONFIG_EXT3_FS=y CONFIG_EXT3_FS_XATTR=y -CONFIG_EXT3_FS_POSIX_ACL=y -CONFIG_EXT3_FS_SECURITY=y +# CONFIG_EXT3_FS_POSIX_ACL is not set +# CONFIG_EXT3_FS_SECURITY is not set CONFIG_JBD=y # CONFIG_JBD_DEBUG is not set CONFIG_FS_MBCACHE=y -CONFIG_REISERFS_FS=y -# CONFIG_REISERFS_CHECK is not set -# CONFIG_REISERFS_PROC_INFO is not set -CONFIG_REISERFS_FS_XATTR=y -CONFIG_REISERFS_FS_POSIX_ACL=y -CONFIG_REISERFS_FS_SECURITY=y +# CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set -CONFIG_FS_POSIX_ACL=y # # XFS support # -CONFIG_XFS_FS=y -CONFIG_XFS_EXPORT=y -# CONFIG_XFS_RT is not set -# CONFIG_XFS_QUOTA is not set -# CONFIG_XFS_SECURITY is not set -# CONFIG_XFS_POSIX_ACL is not set +# CONFIG_XFS_FS is not set # CONFIG_MINIX_FS is not set # CONFIG_ROMFS_FS is not set # CONFIG_QUOTA is not set CONFIG_DNOTIFY=y CONFIG_AUTOFS_FS=y -CONFIG_AUTOFS4_FS=y +# CONFIG_AUTOFS4_FS is not set # # CD-ROM/DVD Filesystems @@ -1009,13 +1060,11 @@ CONFIG_UDF_NLS=y # DOS/FAT/NT Filesystems # CONFIG_FAT_FS=y -# CONFIG_MSDOS_FS is not set +CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" -CONFIG_NTFS_FS=y -# CONFIG_NTFS_DEBUG is not set -# CONFIG_NTFS_RW is not set +# CONFIG_NTFS_FS is not set # # Pseudo filesystems @@ -1055,11 +1104,11 @@ CONFIG_RAMFS=y CONFIG_NFS_FS=y CONFIG_NFS_V3=y CONFIG_NFS_V4=y -CONFIG_NFS_DIRECTIO=y +# CONFIG_NFS_DIRECTIO is not set CONFIG_NFSD=y CONFIG_NFSD_V3=y -CONFIG_NFSD_V4=y -CONFIG_NFSD_TCP=y +# CONFIG_NFSD_V4 is not set +# CONFIG_NFSD_TCP is not set CONFIG_LOCKD=y CONFIG_LOCKD_V4=y CONFIG_EXPORTFS=y @@ -1067,13 +1116,8 @@ CONFIG_SUNRPC=y CONFIG_SUNRPC_GSS=y CONFIG_RPCSEC_GSS_KRB5=y # CONFIG_RPCSEC_GSS_SPKM3 is not set -CONFIG_SMB_FS=y -CONFIG_SMB_NLS_DEFAULT=y -CONFIG_SMB_NLS_REMOTE="cp437" -CONFIG_CIFS=y -# CONFIG_CIFS_STATS is not set -# CONFIG_CIFS_XATTR is not set -# CONFIG_CIFS_EXPERIMENTAL is not set +# CONFIG_SMB_FS is not set +# CONFIG_CIFS is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set # CONFIG_AFS_FS is not set @@ -1093,7 +1137,7 @@ CONFIG_MSDOS_PARTITION=y # CONFIG_SOLARIS_X86_PARTITION is not set # CONFIG_UNIXWARE_DISKLABEL is not set # CONFIG_LDM_PARTITION is not set -CONFIG_SGI_PARTITION=y +# CONFIG_SGI_PARTITION is not set # CONFIG_ULTRIX_PARTITION is not set # CONFIG_SUN_PARTITION is not set CONFIG_EFI_PARTITION=y @@ -1124,7 +1168,7 @@ CONFIG_NLS_CODEPAGE_932=y CONFIG_NLS_CODEPAGE_949=y CONFIG_NLS_CODEPAGE_874=y CONFIG_NLS_ISO8859_8=y -CONFIG_NLS_CODEPAGE_1250=y +# CONFIG_NLS_CODEPAGE_1250 is not set CONFIG_NLS_CODEPAGE_1251=y # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=y @@ -1151,13 +1195,6 @@ CONFIG_CRC32=y CONFIG_GENERIC_HARDIRQS=y CONFIG_GENERIC_IRQ_PROBE=y -# -# HP Simulator drivers -# -# CONFIG_HP_SIMETH is not set -# CONFIG_HP_SIMSERIAL is not set -# CONFIG_HP_SIMSCSI is not set - # # Profiling support # @@ -1169,7 +1206,7 @@ CONFIG_GENERIC_IRQ_PROBE=y # CONFIG_PRINTK_TIME is not set CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y -CONFIG_LOG_BUF_SHIFT=20 +CONFIG_LOG_BUF_SHIFT=17 # CONFIG_SCHEDSTATS is not set # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set @@ -1179,7 +1216,7 @@ CONFIG_LOG_BUF_SHIFT=20 # CONFIG_DEBUG_FS is not set CONFIG_IA64_GRANULE_16MB=y # CONFIG_IA64_GRANULE_64MB is not set -# CONFIG_IA64_PRINT_HAZARDS is not set +CONFIG_IA64_PRINT_HAZARDS=y # CONFIG_DISABLE_VHPT is not set # CONFIG_IA64_DEBUG_CMPXCHG is not set # CONFIG_IA64_DEBUG_IRQ is not set diff --git a/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 b/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 index 145c75b19d..4cd3ad09f4 100644 --- a/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 +++ b/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_ia64 @@ -73,8 +73,9 @@ CONFIG_ARCH_XEN=y CONFIG_XEN_PRIVILEGED_GUEST=y CONFIG_XEN_PHYSDEV_ACCESS=y CONFIG_XEN_BLKDEV_GRANT=y +CONFIG_XEN_BLKDEV_FRONTEND=y CONFIG_VGA_CONSOLE=y -CONFIG_DUMMY_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE=n CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y # CONFIG_IA64_GENERIC is not set # CONFIG_IA64_DIG is not set From 6b7047253ac300a0eb57c3034a4d1d5a9433f2eb Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Sat, 19 Nov 2005 15:41:08 -0600 Subject: [PATCH 18/19] Recode usage of FPSR_DEFAULT due to strange double declaration --- tools/libxc/xc_ia64_stubs.c | 15 +++++++++++++++ tools/libxc/xc_linux_build.c | 5 +++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/tools/libxc/xc_ia64_stubs.c b/tools/libxc/xc_ia64_stubs.c index e926c87c33..4b11af60e4 100644 --- a/tools/libxc/xc_ia64_stubs.c +++ b/tools/libxc/xc_ia64_stubs.c @@ -7,6 +7,21 @@ #include "xen/arch-ia64.h" #include +/* this is a very ugly way of getting FPSR_DEFAULT. struct ia64_fpreg is + * mysteriously declared in two places: /usr/include/asm/fpu.h and + * /usr/include/bits/sigcontext.h. The former also defines FPSR_DEFAULT, + * the latter doesn't but is included (indirectly) by xg_private.h */ +#define __ASSEMBLY__ +#include +#undef __IA64_UL +#define __IA64_UL(x) ((unsigned long)(x)) +#undef __ASSEMBLY__ + +unsigned long xc_ia64_fpsr_default(void) +{ + return FPSR_DEFAULT; +} + int xc_linux_save(int xc_handle, int io_fd, uint32_t dom, uint32_t max_iters, uint32_t max_factor, uint32_t flags) { diff --git a/tools/libxc/xc_linux_build.c b/tools/libxc/xc_linux_build.c index 4cc145c931..cb72db04d6 100644 --- a/tools/libxc/xc_linux_build.c +++ b/tools/libxc/xc_linux_build.c @@ -278,7 +278,8 @@ static int setup_pg_tables_64(int xc_handle, uint32_t dom, #endif #ifdef __ia64__ -#include /* for FPSR_DEFAULT */ +extern unsigned long xc_ia64_fpsr_default(void); + static int setup_guest(int xc_handle, uint32_t dom, char *image, unsigned long image_size, @@ -780,7 +781,7 @@ int xc_linux_build(int xc_handle, ctxt->regs.cr_ipsr = 0; /* all necessary bits filled by hypervisor */ ctxt->regs.cr_iip = vkern_entry; ctxt->regs.cr_ifs = 1UL << 63; - ctxt->regs.ar_fpsr = FPSR_DEFAULT; + ctxt->regs.ar_fpsr = xc_ia64_fpsr_default(); /* currently done by hypervisor, should move here */ /* ctxt->regs.r28 = dom_fw_setup(); */ ctxt->vcpu.privregs = 0; From 6242befca28c5edb9cb4f86a8d2d866df97e7bdc Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Sun, 20 Nov 2005 10:18:29 +0100 Subject: [PATCH 19/19] Small build fix to Python xenstore interface library. Signed-off-by: Stefan Berger --- tools/python/xen/lowlevel/xs/xs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/python/xen/lowlevel/xs/xs.c b/tools/python/xen/lowlevel/xs/xs.c index d6b5b44f85..e29d46b544 100644 --- a/tools/python/xen/lowlevel/xs/xs.c +++ b/tools/python/xen/lowlevel/xs/xs.c @@ -172,7 +172,7 @@ static PyObject *xspy_ls(PyObject *self, PyObject *args, PyObject *kwds) char *path; char **xsval; - int xsval_n; + unsigned int xsval_n; if (!parse_transaction_path(self, args, kwds, &xh, &th, &path)) return NULL;