18 Jul, 2008

1 commit

  • With this commit all sparc64 header files are moved to asm-sparc.
    The remaining files (71 files) were too different to be trivially
    merged so divide them up in a _32.h and a _64.h file which
    are both included from the file with no bit size.

    The following script were used:
    cd include
    FILES=`wc -l asm-sparc64/*h | grep -v '^ 1' | cut -b 20-`

    for FILE in ${FILES}; do
    echo $FILE:
    BASE=`echo $FILE | cut -d '.' -f 1`
    FN32=${BASE}_32.h
    FN64=${BASE}_64.h
    GUARD=___ASM_SPARC_`echo $BASE | tr '-' '_' | tr [:lower:] [:upper:]`_H
    git mv asm-sparc/$FILE asm-sparc/$FN32
    git mv asm-sparc64/$FILE asm-sparc/$FN64
    echo git mv done
    printf "#ifndef %s\n" $GUARD > asm-sparc/$FILE
    printf "#define %s\n" $GUARD >> asm-sparc/$FILE
    printf "#if defined(__sparc__) && defined(__arch64__)\n" >> asm-sparc/$FILE
    printf "#include \n" $FN64 >> asm-sparc/$FILE
    printf "#else\n" >> asm-sparc/$FILE
    printf "#include \n" $FN32 >> asm-sparc/$FILE
    printf "#endif\n" >> asm-sparc/$FILE
    printf "#endif\n" >> asm-sparc/$FILE
    git add asm-sparc/$FILE
    echo new file done
    printf "#include \n" $FILE > asm-sparc64/$FILE
    git add asm-sparc64/$FILE
    echo sparc64 file done
    done

    The guard contains three '_' to avoid conflict with existing guards.
    In additing the two Kbuild files are emptied to avoid breaking
    headers_* targets.
    We will reintroduce the exported header files when the necessary
    kbuild changes are merged.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Sam Ravnborg
     

24 Apr, 2008

1 commit


09 Feb, 2008

1 commit


30 Jul, 2007

1 commit

  • Fully unify all of the DMA ops so that subordinate bus types to
    the DMA operation providers (such as ebus, isa, of_device) can
    work transparently.

    Basically, we just make sure that for every system device we
    create, the dev->archdata 'iommu' and 'stc' fields are filled
    in.

    Then we have two platform variants of the DMA ops, one for SUN4U which
    actually programs the real hardware, and one for SUN4V which makes
    hypervisor calls.

    This also fixes the crashes in parport_pc on sparc64, reported by
    Meelis Roos.

    Signed-off-by: David S. Miller

    David S. Miller
     

07 May, 2007

1 commit

  • Some minor refactoring in the generic code was necessary for
    this:

    1) This controller requires 8-byte access to the interrupt map
    and clear register. They are 64-bits on all the other
    SBUS and PCI controllers anyways, so this was easy to cure.

    2) The IMAP register has a different layout and some bits that we
    need to preserve, so use a read/modify/write when making
    changes to the IMAP register in generic code.

    3) Flushing the entire IOMMU TLB is best done with a single write
    to a register on this PCI controller, add a iommu->iommu_flushinv
    for this.

    Still lacks MSI support, that will come later.

    Signed-off-by: David S. Miller

    David S. Miller
     

26 Apr, 2007

2 commits


01 Jun, 2005

1 commit

  • Firstly, if the direction is TODEVICE, then dirty data in the
    streaming cache is impossible so we can elide the flush-flag
    synchronization in that case.

    Next, the context allocator is broken. It is highly likely
    that contexts get used multiple times for different dma
    mappings, which confuses the strbuf flushing code and makes
    it run inefficiently.

    Signed-off-by: David S. Miller

    David S. Miller
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds