27 Aug, 2006

2 commits


28 Jul, 2006

1 commit


22 Jul, 2006

8 commits


13 Jul, 2006

2 commits

  • There is an implicit assumption in the code that ranges will translate
    to something that can fit in 2 32-bit cells, or a 64-bit value. For
    certain kinds of things below PCI this isn't necessarily true.

    Here is what the relevant OF device hierarchy looks like for one of
    the serial controllers on an Ultra5:

    Node 0xf005f1e0
    ranges: 00000000.00000000.00000000.000001fe.01000000.00000000.01000000
    01000000.00000000.00000000.000001fe.02000000.00000000.01000000
    02000000.00000000.00000000.000001ff.00000000.00000001.00000000
    03000000.00000000.00000000.000001ff.00000000.00000001.00000000
    device_type: 'pci'
    model: 'SUNW,sabre'

    Node 0xf005f9d4
    device_type: 'pci'
    model: 'SUNW,simba'

    Node 0xf0060d24
    ranges: 00000010.00000000 82010810.00000000.f0000000 01000000
    00000014.00000000 82010814.00000000.f1000000 00800000
    name: 'ebus'

    Node 0xf0062dac
    reg: 00000014.003083f8.00000008 --> 0x1ff.f13083f8
    device_type: 'serial'
    name: 'su'

    So the correct translation here is:

    1) Match "su" register to second ranges entry of 'ebus', which translates
    into a PCI triplet "82010814.00000000.f1000000" of size 00800000, which
    gives us "82010814.00000000.f13083f8".

    2) Pass-through "SUNW,simba" since it lacks ranges property

    3) Match "82010814.00000000.f13083f8" to third ranges property of PCI
    controller node 'SUNW,sabre', and we arrive at the final physical
    MMIO address of "0x1fff13083f8".

    Due to the 2-cell assumption, we couldn't translate to a PCI 3-cell
    value, and we couldn't perform a pass-thru on it either.

    It was easiest to just stop splitting the ranges application operation
    between two methods, ->map and ->translate, and just let ->map do all
    the work. That way it would work purely on 32-bit cell arrays instead
    of having to "return" some value like a u64.

    It's still not %100 correct because the out-of-range check is still
    done using the 64 least significant bits of the range and address.
    But it does work for all the cases I've thrown at it so far.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • device_create_file() can fail. This causes the sparc64 compile to
    fail when my fanatical __must_check patch is applied, due to -Werror.

    [ Added necessary identical fix for sparc32. -DaveM]

    Signed-off-by: Andrew Morton
    Signed-off-by: David S. Miller

    Andrew Morton
     

11 Jul, 2006

1 commit

  • screen_info.h doesn't have anything to do with the tty layer and shouldn't be
    included by tty.h. This patches removes the include and modifies all users to
    directly include screen_info.h. struct screen_info is mainly used to
    communicate with the console drivers in drivers/video/console. Note that this
    patch touches every arch and I have no way of testing it. If there is a
    mistake the worst thing that will happen is a compile error.

    [akpm@osdl.org: fix arm build]
    [akpm@osdl.org: fix alpha build]
    Signed-off-by: Jon Smirl
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jon Smirl
     

03 Jul, 2006

1 commit


01 Jul, 2006

3 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:
    Remove obsolete #include
    remove obsolete swsusp_encrypt
    arch/arm26/Kconfig typos
    Documentation/IPMI typos
    Kconfig: Typos in net/sched/Kconfig
    v9fs: do not include linux/version.h
    Documentation/DocBook/mtdnand.tmpl: typo fixes
    typo fixes: specfic -> specific
    typo fixes in Documentation/networking/pktgen.txt
    typo fixes: occuring -> occurring
    typo fixes: infomation -> information
    typo fixes: disadvantadge -> disadvantage
    typo fixes: aquire -> acquire
    typo fixes: mecanism -> mechanism
    typo fixes: bandwith -> bandwidth
    fix a typo in the RTC_CLASS help text
    smb is no longer maintained

    Manually merged trivial conflict in arch/um/kernel/vmlinux.lds.S

    Linus Torvalds
     
  • Currently a single atomic variable is used to establish the size of the page
    cache in the whole machine. The zoned VM counters have the same method of
    implementation as the nr_pagecache code but also allow the determination of
    the pagecache size per zone.

    Remove the special implementation for nr_pagecache and make it a zoned counter
    named NR_FILE_PAGES.

    Updates of the page cache counters are always performed with interrupts off.
    We can therefore use the __ variant here.

    Signed-off-by: Christoph Lameter
    Cc: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     
  • Signed-off-by: Jörn Engel
    Signed-off-by: Adrian Bunk

    Jörn Engel
     

30 Jun, 2006

8 commits

  • Happily, life is much simpler on 32-bit sparc systems.
    The "intr" property, preferred over the "interrupts"
    property is used-as. Some minor translations of this
    value happen on sun4d systems.

    The stage is now set to rewrite the sparc serial driver
    probing to use the of_driver framework, and then to convert
    all SBUS, EBUS, and ISA drivers in-kind so that we can nuke
    all those special bus frameworks.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • On sparc64 we don't need to do this because the resource
    values are large enough to encode the full physical address.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • The idea is to fully construct the device register and
    interrupt values into these of_device objects, and convert
    all of SBUS, EBUS, ISA drivers to use this new stuff.

    Much ideas and code taken from Ben H.'s powerpc work.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6:
    [PATCH] i386: export memory more than 4G through /proc/iomem
    [PATCH] 64bit Resource: finally enable 64bit resource sizes
    [PATCH] 64bit Resource: convert a few remaining drivers to use resource_size_t where needed
    [PATCH] 64bit resource: change pnp core to use resource_size_t
    [PATCH] 64bit resource: change pci core and arch code to use resource_size_t
    [PATCH] 64bit resource: change resource core to use resource_size_t
    [PATCH] 64bit resource: introduce resource_size_t for the start and end of struct resource
    [PATCH] 64bit resource: fix up printks for resources in misc drivers
    [PATCH] 64bit resource: fix up printks for resources in arch and core code
    [PATCH] 64bit resource: fix up printks for resources in pcmcia drivers
    [PATCH] 64bit resource: fix up printks for resources in video drivers
    [PATCH] 64bit resource: fix up printks for resources in ide drivers
    [PATCH] 64bit resource: fix up printks for resources in mtd drivers
    [PATCH] 64bit resource: fix up printks for resources in pci core and hotplug drivers
    [PATCH] 64bit resource: fix up printks for resources in networks drivers
    [PATCH] 64bit resource: fix up printks for resources in sound drivers
    [PATCH] 64bit resource: C99 changes for struct resource declarations

    Fixed up trivial conflict in drivers/ide/pci/cmd64x.c (the printk that
    was changed by the 64-bit resources had been deleted in the meantime ;)

    Linus Torvalds
     
  • arch/sparc/kernel/setup.c: In function 'topology_init':
    arch/sparc/kernel/setup.c:528: error: too many arguments to function 'register_cpu'

    Cc: William Lee Irwin III
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     

28 Jun, 2006

3 commits


26 Jun, 2006

4 commits


24 Jun, 2006

4 commits


23 Jun, 2006

1 commit

  • rd_prompt et.al. depend on CONFIG_BLK_DEV_RAM, not CONFIG_BLK_INITRD; now
    that those are independent, setup.c blows with INITRD on and BLK_DEV_RAM
    off.

    Signed-off-by: Al Viro
    Cc: "David S. Miller"
    Cc: William Lee Irwin III
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Al Viro
     

20 Jun, 2006

2 commits

  • This ugly hack was long overdue to die.

    It was a way to print out Sparc interrupts in a more freindly format,
    since IRQ numbers were arbitrary opaque 32-bit integers which vectored
    into PIL levels. These 32-bit integers were not necessarily in the
    0-->NR_IRQS range, but the PILs they vectored to were.

    The idea now is that we will increase NR_IRQS a little bit and use a
    virtualreal IRQ number mapping scheme similar to PowerPC.

    That makes this IRQ printing hack irrelevant, and furthermore only a
    handful of drivers actually used __irq_itoa() making it even less
    useful.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Fix the calculation of the end address when flushing iotlb entries to
    ram. This bug has been a cause of esp dma errors, and it affects
    HyperSPARC systems much worse than SuperSPARC systems.

    Signed-off-by: Bob Breuer
    Signed-off-by: David S. Miller

    Bob Breuer