Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9b3627f389c07c5be9c86ac4d472a0d4fd47feac
Commit:     9b3627f389c07c5be9c86ac4d472a0d4fd47feac
Parent:     711b360d64418e88ed45f812e0ebd202073d888d
Author:     David S. Miller <[EMAIL PROTECTED]>
AuthorDate: Tue Apr 24 23:51:18 2007 -0700
Committer:  David S. Miller <[EMAIL PROTECTED]>
CommitDate: Thu Apr 26 01:55:42 2007 -0700

    [SPARC64]: Consolidate {sbus,pci}_iommu_arena.
    
    Move to asm-sparc64/iommu.h and rename to plain "iommu_arena".
    
    Signed-off-by: David S. Miller <[EMAIL PROTECTED]>
---
 arch/sparc64/kernel/pci_iommu.c |    4 ++--
 arch/sparc64/kernel/pci_sun4v.c |    6 +++---
 arch/sparc64/kernel/sbus.c      |   12 +++---------
 include/asm-sparc64/iommu.h     |   22 ++++++++++++++--------
 include/asm-sparc64/pbm.h       |    8 +-------
 5 files changed, 23 insertions(+), 29 deletions(-)

diff --git a/arch/sparc64/kernel/pci_iommu.c b/arch/sparc64/kernel/pci_iommu.c
index aefdcc5..355ed0b 100644
--- a/arch/sparc64/kernel/pci_iommu.c
+++ b/arch/sparc64/kernel/pci_iommu.c
@@ -77,7 +77,7 @@ static inline void iopte_make_dummy(struct pci_iommu *iommu, 
iopte_t *iopte)
 /* Based largely upon the ppc64 iommu allocator.  */
 static long pci_arena_alloc(struct pci_iommu *iommu, unsigned long npages)
 {
-       struct pci_iommu_arena *arena = &iommu->arena;
+       struct iommu_arena *arena = &iommu->arena;
        unsigned long n, i, start, end, limit;
        int pass;
 
@@ -116,7 +116,7 @@ again:
        return n;
 }
 
-static void pci_arena_free(struct pci_iommu_arena *arena, unsigned long base, 
unsigned long npages)
+static void pci_arena_free(struct iommu_arena *arena, unsigned long base, 
unsigned long npages)
 {
        unsigned long i;
 
diff --git a/arch/sparc64/kernel/pci_sun4v.c b/arch/sparc64/kernel/pci_sun4v.c
index 52bd456..0e99808 100644
--- a/arch/sparc64/kernel/pci_sun4v.c
+++ b/arch/sparc64/kernel/pci_sun4v.c
@@ -110,7 +110,7 @@ static inline long pci_iommu_batch_end(void)
        return pci_iommu_batch_flush(p);
 }
 
-static long pci_arena_alloc(struct pci_iommu_arena *arena, unsigned long 
npages)
+static long pci_arena_alloc(struct iommu_arena *arena, unsigned long npages)
 {
        unsigned long n, i, start, end, limit;
        int pass;
@@ -149,7 +149,7 @@ again:
        return n;
 }
 
-static void pci_arena_free(struct pci_iommu_arena *arena, unsigned long base, 
unsigned long npages)
+static void pci_arena_free(struct iommu_arena *arena, unsigned long base, 
unsigned long npages)
 {
        unsigned long i;
 
@@ -707,7 +707,7 @@ static void pci_sun4v_scan_bus(struct pci_controller_info 
*p)
 static unsigned long probe_existing_entries(struct pci_pbm_info *pbm,
                                            struct pci_iommu *iommu)
 {
-       struct pci_iommu_arena *arena = &iommu->arena;
+       struct iommu_arena *arena = &iommu->arena;
        unsigned long i, cnt = 0;
        u32 devhandle;
 
diff --git a/arch/sparc64/kernel/sbus.c b/arch/sparc64/kernel/sbus.c
index d403f3d..279758d 100644
--- a/arch/sparc64/kernel/sbus.c
+++ b/arch/sparc64/kernel/sbus.c
@@ -26,16 +26,10 @@
 
 #define MAP_BASE       ((u32)0xc0000000)
 
-struct sbus_iommu_arena {
-       unsigned long   *map;
-       unsigned int    hint;
-       unsigned int    limit;
-};
-
 struct sbus_iommu {
        spinlock_t              lock;
 
-       struct sbus_iommu_arena arena;
+       struct iommu_arena      arena;
 
        iopte_t                 *page_table;
        unsigned long           strbuf_regs;
@@ -123,7 +117,7 @@ static void sbus_strbuf_flush(struct sbus_iommu *iommu, u32 
base, unsigned long
 /* Based largely upon the ppc64 iommu allocator.  */
 static long sbus_arena_alloc(struct sbus_iommu *iommu, unsigned long npages)
 {
-       struct sbus_iommu_arena *arena = &iommu->arena;
+       struct iommu_arena *arena = &iommu->arena;
        unsigned long n, i, start, end, limit;
        int pass;
 
@@ -162,7 +156,7 @@ again:
        return n;
 }
 
-static void sbus_arena_free(struct sbus_iommu_arena *arena, unsigned long 
base, unsigned long npages)
+static void sbus_arena_free(struct iommu_arena *arena, unsigned long base, 
unsigned long npages)
 {
        unsigned long i;
 
diff --git a/include/asm-sparc64/iommu.h b/include/asm-sparc64/iommu.h
index 0de7a3d..d8d98f8 100644
--- a/include/asm-sparc64/iommu.h
+++ b/include/asm-sparc64/iommu.h
@@ -7,15 +7,21 @@
 #define _SPARC64_IOMMU_H
 
 /* The format of an iopte in the page tables. */
-#define IOPTE_VALID   0x8000000000000000UL /* IOPTE is valid                  
*/
-#define IOPTE_64K     0x2000000000000000UL /* IOPTE is for 64k page           
*/
-#define IOPTE_STBUF   0x1000000000000000UL /* DVMA can use streaming buffer   
*/
-#define IOPTE_INTRA   0x0800000000000000UL /* SBUS slot-->slot direct 
transfer*/
-#define IOPTE_CONTEXT 0x07ff800000000000UL /* Context number                 */
-#define IOPTE_PAGE    0x00007fffffffe000UL /* Physical page number 
(PA[42:13])*/
-#define IOPTE_CACHE   0x0000000000000010UL /* Cached (in UPA E-cache)         
*/
-#define IOPTE_WRITE   0x0000000000000002UL /* Writeable                       
*/
+#define IOPTE_VALID   0x8000000000000000UL
+#define IOPTE_64K     0x2000000000000000UL
+#define IOPTE_STBUF   0x1000000000000000UL
+#define IOPTE_INTRA   0x0800000000000000UL
+#define IOPTE_CONTEXT 0x07ff800000000000UL
+#define IOPTE_PAGE    0x00007fffffffe000UL
+#define IOPTE_CACHE   0x0000000000000010UL
+#define IOPTE_WRITE   0x0000000000000002UL
 
 #define IOMMU_NUM_CTXS 4096
 
+struct iommu_arena {
+       unsigned long   *map;
+       unsigned int    hint;
+       unsigned int    limit;
+};
+
 #endif /* !(_SPARC_IOMMU_H) */
diff --git a/include/asm-sparc64/pbm.h b/include/asm-sparc64/pbm.h
index 9afcc06..4a0ed2e 100644
--- a/include/asm-sparc64/pbm.h
+++ b/include/asm-sparc64/pbm.h
@@ -35,19 +35,13 @@ struct pci_controller_info;
 /* This contains the software state necessary to drive a PCI
  * controller's IOMMU.
  */
-struct pci_iommu_arena {
-       unsigned long   *map;
-       unsigned int    hint;
-       unsigned int    limit;
-};
-
 struct pci_iommu {
        /* This protects the controller's IOMMU and all
         * streaming buffers underneath.
         */
        spinlock_t      lock;
 
-       struct pci_iommu_arena arena;
+       struct iommu_arena arena;
 
        /* IOMMU page table, a linear array of ioptes. */
        iopte_t         *page_table;            /* The page table itself. */
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to