27 Jan, 2009

13 commits

  • * master.kernel.org:/home/rmk/linux-2.6-arm: (22 commits)
    [ARM] fix section-based ioremap
    [NET] am79c961a: fix spin_lock usage
    [ARM] omap: usb: thou shalt not provide empty release functions
    [ARM] omap: watchdog: allow OMAP watchdog driver on OMAP34xx platforms
    [ARM] 5369/1: omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3
    [ARM] clkdev: fix clock matching
    [ARM] 5370/1: at91: fix rm9200 watchdog
    [ARM] 5368/1: arch/arm/mach-davinci/usb.c buildfix
    [ARM] 5365/1: s3cmci: Use new include path of dma.h
    [ARM] fix StrongARM-11x0 page copy implementation
    [ARM] omap: ensure OMAP drivers pass a struct device to clk_get()
    ARM: OMAP: Fix compile for h3 MMC
    ARM: OMAP: Remove unused platform devices, v3
    ARM: OMAP: Fix ASoC by enabling writes to XCCR and RCCR McBSP registers, v3
    ARM: OMAP: Fix OSK ASoC by registering I2C board info for tlvaic23
    ARM: OMAP: remove duplicated #include's
    ARM: OMAP: Fix DMA CCR programming for request line > 63, v3
    ARM: OMAP: Fix gpio.c compile on 15xx with CONFIG_DEBUGFS
    ARM: OMAP: Fix compile for beagle
    ARM: OMAP: Fix gpio by switching to generic gpio calls, v2
    ...

    Linus Torvalds
     
  • * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
    i2c: Warn on deprecated binding model use
    eeprom: More consistent symbol names
    eeprom: Move 93cx6 eeprom driver to /drivers/misc/eeprom
    spi: Move at25 (for SPI eeproms) to /drivers/misc/eeprom
    i2c: Move old eeprom driver to /drivers/misc/eeprom
    i2c: Move at24 to drivers/misc/eeprom
    i2c: Quilt tree has moved
    i2c: Delete many unused adapter IDs
    i2c: Delete 10 unused driver IDs

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
    kbuild: fix kbuild.txt typos
    kbuild: print usage with no arguments in scripts/config
    Revert "kbuild: strip generated symbols from *.ko"

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc64: Fix DAX handling via userspace access from kernel.
    sparc64: Annotate sparc64 specific syscalls with SYSCALL_DEFINEx()
    [CVE-2009-0029] sparc: Enable syscall wrappers for 64-bit
    sparc64: Initialize FHC/CLOCK LED platform_device 'id' field correctly.
    sparc64: fix modpost failure
    sparc64: fix readout of cpu/fpu type

    Linus Torvalds
     
  • Now that all EEPROM drivers live in the same place, let's harmonize
    their symbol names.

    Also fix eeprom's dependencies, it definitely needs sysfs, and is no
    longer experimental after many years in the kernel tree.

    Signed-off-by: Jean Delvare
    Acked-by: Wolfram Sang
    Cc: David Brownell

    Jean Delvare
     
  • swab.h seems to have been missed during the header merge.
    Add conditionals similar to byteorder.h and remove the
    now unnecessary byteorder_no/mm.h

    Signed-off-by: Harvey Harrison
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
    m68k,m68knommu: merge header files

    Resolve trivial conflict in arch/m68knommu/include/asm/Kbuild

    Linus Torvalds
     
  • * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
    [S390] Add missing compat system call wrappers.
    [S390] etr/stp: fix possible deadlock
    [S390] cputime: fix lowcore initialization on cpu hotplug
    [S390] fix compat sigaltstack syscall table entry
    [S390] personality: fix personality loss on execve

    Linus Torvalds
     
  • * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:
    i.MX31: framebuffer driver
    i.MX31: Image Processing Unit DMA and IRQ drivers
    dmaengine: add async_tx_clear_ack() macro
    dmaengine: dma_issue_pending_all == nop when CONFIG_DMA_ENGINE=n
    dmaengine: kill some dubious WARN_ONCEs
    fsldma: print correct IRQ on mpc83xx
    fsldma: check for NO_IRQ in fsl_dma_chan_remove()
    dmatest: Use custom map/unmap for destination buffer
    fsldma: use a valid 'device' for dma_pool_create
    dmaengine: fix dependency chaining

    Linus Torvalds
     
  • * 'sh/for-2.6.29' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (22 commits)
    dma-coherent: Restore dma_alloc_from_coherent() large alloc fall back policy.
    dma-coherent: per-device coherent area is in pages, not bytes.
    sh: fix unaligned and nonexistent address handling
    nommu: Stub in vm_map_ram()/vm_unmap_ram()/vm_unmap_aliases().
    sh: fix sh-sci / early printk build on sh7723
    sh: export the sh7343 JPU to user space
    sh: update defconfigs.
    serial: sh-sci: Fix up SH7720/SH7721 SCI build.
    sh: Kill off obsolete busses from arch/sh/Kconfig.
    sh: sh7785lcr/highlander/hp6xx need linux/irq.h.
    sh: Migo-R MMC support using spi_gpio and mmc_spi.
    sh: ap325rxa MMC support using spi_gpio and mmc_spi
    sh: mach-x3proto: needs linux/irq.h.
    sh: Drop the BKL from sys_execve() on SH-5.
    sh: convert rsk7203 to use smsc911x.
    sh: convert magicpanelr2 platform to use smsc911x.
    sh: convert ap325rxa platform to use smsc911x.
    sh: mach-migor: Add tw9910 support.
    sh: mach-migor: Delete soc_camera_platform setup.
    sh: mach-migor: Add ov772x support.
    ...

    Linus Torvalds
     
  • …/git/tip/linux-2.6-tip

    * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    debugobjects: add and use INIT_WORK_ON_STACK
    rcu: remove duplicate CONFIG_RCU_CPU_STALL_DETECTOR
    relay: fix lock imbalance in relay_late_setup_files
    oprofile: fix uninitialized use of struct op_entry
    rcu: move Kconfig menu
    softlock: fix false panic which can occur if softlockup_thresh is reduced
    rcu: add __cpuinit to rcu_init_percpu_data()

    Linus Torvalds
     
  • …el/git/tip/linux-2.6-tip

    * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    hrtimers: fix inconsistent lock state on resume in hres_timers_resume
    time-sched.c: tick_nohz_update_jiffies should be static
    locking, hpet: annotate false positive warning
    kernel/fork.c: unused variable 'ret'
    itimers: remove the per-cpu-ish-ness

    Linus Torvalds
     
  • …git/tip/linux-2.6-tip

    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (29 commits)
    xen: unitialised return value in xenbus_write_transaction
    x86: fix section mismatch warning
    x86: unmask CPUID levels on Intel CPUs, fix
    x86: work around PAGE_KERNEL_WC not getting WC in iomap_atomic_prot_pfn.
    x86: use standard PIT frequency
    xen: handle highmem pages correctly when shrinking a domain
    x86, mm: fix pte_free()
    xen: actually release memory when shrinking domain
    x86: unmask CPUID levels on Intel CPUs
    x86: add MSR_IA32_MISC_ENABLE bits to <asm/msr-index.h>
    x86: fix PTE corruption issue while mapping RAM using /dev/mem
    x86: mtrr fix debug boot parameter
    x86: fix page attribute corruption with cpa()
    Revert "x86: signal: change type of paramter for sys_rt_sigreturn()"
    x86: use early clobbers in usercopy*.c
    x86: remove kernel_physical_mapping_init() from init section
    fix: crash: IP: __bitmap_intersects+0x48/0x73
    cpufreq: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write
    work_on_cpu: Use our own workqueue.
    work_on_cpu: don't try to get_online_cpus() in work_on_cpu.
    ...

    Linus Torvalds
     

26 Jan, 2009

4 commits

  • Here function vmi_activate calls a init function activate_vmi , which
    causes the following section mismatch warnings:

    LD arch/x86/kernel/built-in.o
    WARNING: arch/x86/kernel/built-in.o(.text+0x13ba9): Section mismatch
    in reference from the function vmi_activate() to the function
    .init.text:vmi_time_init()
    The function vmi_activate() references
    the function __init vmi_time_init().
    This is often because vmi_activate lacks a __init
    annotation or the annotation of vmi_time_init is wrong.

    WARNING: arch/x86/kernel/built-in.o(.text+0x13bd1): Section mismatch
    in reference from the function vmi_activate() to the function
    .devinit.text:vmi_time_bsp_init()
    The function vmi_activate() references
    the function __devinit vmi_time_bsp_init().
    This is often because vmi_activate lacks a __devinit
    annotation or the annotation of vmi_time_bsp_init is wrong.

    WARNING: arch/x86/kernel/built-in.o(.text+0x13bdb): Section mismatch
    in reference from the function vmi_activate() to the function
    .devinit.text:vmi_time_ap_init()
    The function vmi_activate() references
    the function __devinit vmi_time_ap_init().
    This is often because vmi_activate lacks a __devinit
    annotation or the annotation of vmi_time_ap_init is wrong.

    Fix it by marking vmi_activate() as __init too.

    Signed-off-by: Rakib Mullick
    Signed-off-by: Ingo Molnar

    Rakib Mullick
     
  • Impact: fix boot hang on pre-model-15 Intel CPUs

    rdmsrl_safe() does not work in very early bootup code yet, because we
    dont have the pagefault handler installed yet so exception section
    does not get parsed. rdmsr_safe() will just crash and hang the bootup.

    So limit the MSR_IA32_MISC_ENABLE MSR read to those CPU types that
    support it.

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • In the absence of PAT, PAGE_KERNEL_WC ends up mapping to a memory type that
    gets UC behavior even in the presence of a WC MTRR covering the area in
    question. By swapping to PAGE_KERNEL_UC_MINUS, we can get the actual
    behavior the caller wanted (WC if you can manage it, UC otherwise).

    This recovers the 40% performance improvement of using WC in the DRM
    to upload vertex data.

    Signed-off-by: Eric Anholt
    Signed-off-by: H. Peter Anvin

    Eric Anholt
     
  • Tomi Valkeinen reports:
    Running with latest linux-omap kernel on OMAP3 SDP board, I have
    problem with iounmap(). It looks like iounmap() does not properly
    free large areas. Below is a test which fails for me in 6-7 loops.

    for (i = 0; i < 200; ++i) {
    vaddr = ioremap(paddr, size);
    if (!vaddr) {
    printk("couldn't ioremap\n");
    break;
    }
    iounmap(vaddr);
    }

    The changes to vmalloc.c weren't reflected in the ARM ioremap
    implementation. Turns out the fix is rather simple.

    Tested-by: Tomi Valkeinen
    Tested-by: Matt Gerassimoff
    Signed-off-by: Russell King

    Russell King
     

25 Jan, 2009

2 commits


24 Jan, 2009

4 commits

  • The old matching algorithm was too fuzzy, causing false positives.
    For example, when asked for device D connection C1 and we only find
    device D connection C2, we return that as a valid match despite the
    connection names being different.

    Change the algorithm such that:
    An entry with a NULL ID is assumed to be a wildcard.
    If an entry has a device ID, it must match
    If an entry has a connection ID, it must match

    However, we maintain the order of precidence while still only doing
    a single pass over all entries: dev+con > dev only > con only.

    Signed-off-by: Russell King

    Russell King
     
  • From: David Brownell
    Subject: ARM/mach-davinci/usb.c buildfix

    CC arch/arm/mach-davinci/usb.o
    arch/arm/mach-davinci/usb.c:60: error: 'IRQ_USBINT' undeclared here (not in a function)
    make[1]: *** [arch/arm/mach-davinci/usb.o] Error 1

    Signed-off-by: David Brownell
    Signed-off-by: Russell King

    David Brownell
     
  • Which had the 'from' and 'to' pages reversed.

    Signed-off-by: Russell King

    Russell King
     
  • On -rt we were seeing spurious bad page states like:

    Bad page state in process 'firefox'
    page:c1bc2380 flags:0x40000000 mapping:c1bc2390 mapcount:0 count:0
    Trying to fix it up, but a reboot is needed
    Backtrace:
    Pid: 503, comm: firefox Not tainted 2.6.26.8-rt13 #3
    [] ? printk+0x14/0x19
    [] bad_page+0x4e/0x79
    [] free_hot_cold_page+0x5b/0x1d3
    [] free_hot_page+0xf/0x11
    [] __free_pages+0x20/0x2b
    [] __pte_alloc+0x87/0x91
    [] handle_mm_fault+0xe4/0x733
    [] ? rt_mutex_down_read_trylock+0x57/0x63
    [] ? rt_mutex_down_read_trylock+0x57/0x63
    [] do_page_fault+0x36f/0x88a

    This is the case where a concurrent fault already installed the PTE and
    we get to free the newly allocated one.

    This is due to pgtable_page_ctor() doing the spin_lock_init(&page->ptl)
    which is overlaid with the {private, mapping} struct.

    union {
    struct {
    unsigned long private;
    struct address_space *mapping;
    };
    spinlock_t ptl;
    struct kmem_cache *slab;
    struct page *first_page;
    };

    Normally the spinlock is small enough to not stomp on page->mapping, but
    PREEMPT_RT=y has huge 'spin'locks.

    But lockdep kernels should also be able to trigger this splat, as the
    lock tracking code grows the spinlock to cover page->mapping.

    The obvious fix is calling pgtable_page_dtor() like the regular pte free
    path __pte_free_tlb() does.

    It seems all architectures except x86 and nm10300 already do this, and
    nm10300 doesn't seem to use pgtable_page_ctor(), which suggests it
    doesn't do SMP or simply doesnt do MMU at all or something.

    Signed-off-by: Peter Zijlstra
    Signed-off-by: Ingo Molnar
    Cc:

    Peter Zijlstra
     

23 Jan, 2009

5 commits

  • Add wrapper functions for the following compat system calls:
    * readahead
    * sendfile64
    * tkill
    * tgkill
    * keyctl
    This ensures that the high order bits of the parameter registers are correctly
    sign extended.

    Signed-off-by: Michael Holzheu
    Signed-off-by: Heiko Carstens

    Michael Holzheu
     
  • Precreate stop_machine threads in case the machine supports ETR/STP.
    Otherwise we might deadlock if a time sync operation gets scheduled
    and the creation of stop_machine threads would cause disk I/O.
    This is just the minimal fix.
    The real fix would be to only precreate stop_machine threads if
    ETR/STP is actually used. But that would be a rather large and
    complicated patch.

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • On (initial) cpu hotplug the lowcore values for user_timer and
    system_timer don't get initialized like they would get on each
    process schedule.
    On initial start of secondary cpus this leads to the situation
    where per thread user/system_timer values are larger than the
    corresponding contents of the lowcore. When later calculating
    time spent in user/system context the result can be negative.

    So for cpu hotplug we should manually initialize lowcore values.

    Fixes this bug:

    Kernel BUG at 000ec080 [verbose debug info unavailable]
    fixpoint divide exception: 0009 [#1] PREEMPT SMP
    Modules linked in:
    CPU: 10 Not tainted 2.6.28 #4
    Process sysctl (pid: 975, task: 3fa752e0, ksp: 3fbebca0)
    Krnl PSW : 070c1000 800ec080 (show_stat+0x390/0x5fc)
    R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:1 PM:0
    Krnl GPRS: 7fffffff fefc7ce5 3faec080 003879ae
    00000001 01388000 7fffffff 01388000
    00000000 00000000 0049ad50 3fbebcf8
    01388000 002f51a8 800ec1fe 3fbebcf8
    Krnl Code: 800ec076: 9001b188 stm %r0,%r1,392(%r11)
    800ec07a: 9801b0c0 lm %r0,%r1,192(%r11)
    800ec07e: 1d05 dr %r0,%r5
    >800ec080: 9001b0c0 stm %r0,%r1,192(%r11)
    800ec084: 5860b0c4 l %r6,196(%r11)
    800ec088: 1806 lr %r0,%r6
    800ec08a: 8c800001 srdl %r8,1
    800ec08e: 1d87 dr %r8,%r7
    Call Trace:
    ([] show_stat+0x4fe/0x5fc)
    [] seq_read+0xc4/0x3ac
    [] proc_reg_read+0x6e/0x9c
    [] vfs_read+0x78/0x100
    [] sys_read+0x40/0x80
    [] sysc_do_restart+0x1a/0x1e

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • When 31 bit user space programs call sigaltstack on a 64 bit Linux
    OS, the system call returns -1 with errno=EFAULT. The 31 bit pointer passed
    to the system call is extended to 64 bit, but the high order bits are not
    set to zero. The kernel detects the invalid user space pointer and
    returns -EFAULT. To solve the problem, sys32_sigaltstack_wrapper()
    instead of sys32_sigaltstack() has to be called. The wrapper function sets
    the high order bits to zero.

    Signed-off-by: Michael Holzheu
    Signed-off-by: Heiko Carstens

    Michael Holzheu
     
  • Use the personality() macro to mask out all bits that are not
    relevant for the personality type.
    The personality field contains bits for other things as well,
    so without masking out the not relevalent bits the comparison
    won't do what is expected.

    Reported-by: Andreas Krebbel
    Signed-off-by: Heiko Carstens

    Heiko Carstens
     

22 Jan, 2009

5 commits

  • Impact: Fix debugobjects warning

    debugobject enabled kernels spit out a warning in hpet code due to a
    workqueue which is initialized on stack.

    Add INIT_WORK_ON_STACK() which calls init_timer_on_stack() and use it
    in hpet.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • Impact: Fixes crashes with misconfigured BIOSes on XSAVE hardware

    Avuton Olrich reported early boot crashes with v2.6.28 and
    bisected it down to dc1e35c6e95e8923cf1d3510438b63c600fee1e2
    ("x86, xsave: enable xsave/xrstor on cpus with xsave support").

    If the CPUID limit bit in MSR_IA32_MISC_ENABLE is set, clear it to
    make all CPUID information available. This is required for some
    features to work, in particular XSAVE.

    Reported-and-bisected-by: Avuton Olrich
    Tested-by: Avuton Olrich
    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • Impact: None (new bit definitions currently unused)

    Add bit definitions for the MSR_IA32_MISC_ENABLE MSRs to
    .

    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • Beschorner Daniel reported:
    > hwinfo problem since 2.6.28, showing this in the oops:
    > Corrupted page table at address 7fd04de3ec00

    Also, PaX Team reported a regression with this commit:

    > commit 9542ada803198e6eba29d3289abb39ea82047b92
    > Author: Suresh Siddha
    > Date: Wed Sep 24 08:53:33 2008 -0700
    >
    > x86: track memtype for RAM in page struct

    This commit breaks mapping any RAM page through /dev/mem, as the
    reserve_memtype() was not initializing the return attribute type and as such
    corrupting the PTE entry that was setup with the return attribute type.

    Because of this bug, application mapping this RAM page through /dev/mem
    will die with "Corrupted page table at address xxxx" message in the kernel
    log and also the kernel identity mapping which maps the underlying RAM
    page gets converted to UC.

    Fix this by initializing the return attribute type before calling
    reserve_ram_pages_type()

    Reported-by: PaX Team
    Reported-and-tested-by: Beschorner Daniel
    Tested-and-Acked-by: PaX Team
    Signed-off-by: Suresh Siddha
    Signed-off-by: Venkatesh Pallipadi
    Signed-off-by: Ingo Molnar

    Suresh Siddha
     
  • This is a framebuffer driver for i.MX31 SoCs. It only supports synchronous
    displays, vertical panning supported, no overlay support.

    Acked-by: Sascha Hauer
    Signed-off-by: Guennadi Liakhovetski
    Signed-off-by: Dan Williams

    Guennadi Liakhovetski
     

21 Jan, 2009

7 commits

  • while looking at:

    http://bugzilla.kernel.org/show_bug.cgi?id=11541

    I realized that the mtrr.show param cannot work, because
    the code is processed much too early.

    This patch:
    - Declares mtrr.show as early_param
    - Stays consistent with the previous param (which I doubt
    that it ever worked), so mtrr.show=1 would still work
    - Declares mtrr_show as initdata

    Signed-off-by: Thomas Renninger
    Acked-by: Jan Beulich
    Signed-off-by: Ingo Molnar

    Thomas Renninger
     
  • Impact: fix sporadic slowdowns and warning messages

    This patch fixes a performance issue reported by Linus on his
    Nehalem system. While Linus reverted the PAT patch (commit
    58dab916dfb57328d50deb0aa9b3fc92efa248ff) which exposed the issue,
    existing cpa() code can potentially still cause wrong(page attribute
    corruption) behavior.

    This patch also fixes the "WARNING: at arch/x86/mm/pageattr.c:560" that
    various people reported.

    In 64bit kernel, kernel identity mapping might have holes depending
    on the available memory and how e820 reports the address range
    covering the RAM, ACPI, PCI reserved regions. If there is a 2MB/1GB hole
    in the address range that is not listed by e820 entries, kernel identity
    mapping will have a corresponding hole in its 1-1 identity mapping.

    If cpa() happens on the kernel identity mapping which falls into these holes,
    existing code fails like this:

    __change_page_attr_set_clr()
    __change_page_attr()
    returns 0 because of if (!kpte). But doesn't
    set cpa->numpages and cpa->pfn.
    cpa_process_alias()
    uses uninitialized cpa->pfn (random value)
    which can potentially lead to changing the page
    attribute of kernel text/data, kernel identity
    mapping of RAM pages etc. oops!

    This bug was easily exposed by another PAT patch which was doing
    cpa() more often on kernel identity mapping holes (physical range between
    max_low_pfn_mapped and 4GB), where in here it was setting the
    cache disable attribute(PCD) for kernel identity mappings aswell.

    Fix cpa() to handle the kernel identity mapping holes. Retain
    the WARN() for cpa() calls to other not present address ranges
    (kernel-text/data, ioremap() addresses)

    Signed-off-by: Suresh Siddha
    Signed-off-by: Venkatesh Pallipadi
    Cc:
    Signed-off-by: Ingo Molnar

    Suresh Siddha
     
  • unaligned and nonexistent address causes wrong exception
    handling in traps_32.c(handle_unaligned_access).

    'handle_unalinged_ins' should return -EFAULT if address error
    is fixed up with kernel exception table, otherwise
    'handle_unaligned_access' increases already fixed program counter
    and then crash.

    for example
    ioctl(fd, TCGETA, (struct termio *)-1)
    never return and stay in TASK_UNINTERRUPTIBLE state forever
    in my kernel.

    Signed-off-by: SUGIOKA Toshinobu
    Signed-off-by: Paul Mundt

    SUGIOKA Toshinobu
     
  • This patch exports the sh7343 JPU to user space using uio_pdrv_genirq,
    very similar to the sh7722 JPU patch by Hayama-san.

    While at it fix up the end of the sh7722 JPU iomem resource.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Signed-off-by: Paul Mundt

    Paul Mundt
     
  • ISA can go away now that the hd6446x PCMCIA drivers no longer exist
    in-tree. The rationale for enabling CONFIG_ISA in the first place is
    likewise no longer valid given that the subsystem has changed since
    the time that assertion was valid.

    While we are at it, kill off SBUS, MCA, EISA, and so on. These are
    not supported and never will be.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • More build fixes..

    Signed-off-by: Paul Mundt

    Paul Mundt