diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-05 19:02:01 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-05 19:02:01 -0400 |
commit | fc1caf6eafb30ea185720e29f7f5eccca61ecd60 (patch) | |
tree | 666dabc25a9b02e5c05f9eba32fa6b0d8027341a /include/linux | |
parent | 9779714c8af09d57527f18d9aa2207dcc27a8687 (diff) | |
parent | 96576a9e1a0cdb8a43d3af5846be0948f52b4460 (diff) |
Merge branch 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
* 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (204 commits)
agp: intel-agp: do not use PCI resources before pci_enable_device()
agp: efficeon-agp: do not use PCI resources before pci_enable_device()
drm: kill BKL from common code
drm/kms: Simplify setup of the initial I2C encoder config.
drm,io-mapping: Specify slot to use for atomic mappings
drm/radeon/kms: only expose underscan on avivo chips
drm/radeon: add new pci ids
drm: Cleanup after failing to create master->unique and dev->name
drm/radeon: tone down overchatty acpi debug messages.
drm/radeon/kms: enable underscan option for digital connectors
drm/radeon/kms: fix calculation of h/v scaling factors
drm/radeon/kms/igp: sideport is AMD only
drm/radeon/kms: handle the case of no active displays properly in the bandwidth code
drm: move ttm global code to core drm
drm/i915: Clear the Ironlake dithering flags when the pipe doesn't want it.
drm/radeon/kms: make sure HPD is set to NONE on analog-only connectors
drm/radeon/kms: make sure rio_mem is valid before unmapping it
drm/agp/i915: trim stolen space to 32M
drm/i915: Unset cursor if out-of-bounds upon mode change (v4)
drm/i915: Unreference object not handle on creation
...
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/io-mapping.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/include/linux/io-mapping.h b/include/linux/io-mapping.h index 25085ddd955f..e0ea40f6c515 100644 --- a/include/linux/io-mapping.h +++ b/include/linux/io-mapping.h | |||
@@ -79,7 +79,9 @@ io_mapping_free(struct io_mapping *mapping) | |||
79 | 79 | ||
80 | /* Atomic map/unmap */ | 80 | /* Atomic map/unmap */ |
81 | static inline void * | 81 | static inline void * |
82 | io_mapping_map_atomic_wc(struct io_mapping *mapping, unsigned long offset) | 82 | io_mapping_map_atomic_wc(struct io_mapping *mapping, |
83 | unsigned long offset, | ||
84 | int slot) | ||
83 | { | 85 | { |
84 | resource_size_t phys_addr; | 86 | resource_size_t phys_addr; |
85 | unsigned long pfn; | 87 | unsigned long pfn; |
@@ -87,13 +89,13 @@ io_mapping_map_atomic_wc(struct io_mapping *mapping, unsigned long offset) | |||
87 | BUG_ON(offset >= mapping->size); | 89 | BUG_ON(offset >= mapping->size); |
88 | phys_addr = mapping->base + offset; | 90 | phys_addr = mapping->base + offset; |
89 | pfn = (unsigned long) (phys_addr >> PAGE_SHIFT); | 91 | pfn = (unsigned long) (phys_addr >> PAGE_SHIFT); |
90 | return iomap_atomic_prot_pfn(pfn, KM_USER0, mapping->prot); | 92 | return iomap_atomic_prot_pfn(pfn, slot, mapping->prot); |
91 | } | 93 | } |
92 | 94 | ||
93 | static inline void | 95 | static inline void |
94 | io_mapping_unmap_atomic(void *vaddr) | 96 | io_mapping_unmap_atomic(void *vaddr, int slot) |
95 | { | 97 | { |
96 | iounmap_atomic(vaddr, KM_USER0); | 98 | iounmap_atomic(vaddr, slot); |
97 | } | 99 | } |
98 | 100 | ||
99 | static inline void * | 101 | static inline void * |
@@ -133,13 +135,15 @@ io_mapping_free(struct io_mapping *mapping) | |||
133 | 135 | ||
134 | /* Atomic map/unmap */ | 136 | /* Atomic map/unmap */ |
135 | static inline void * | 137 | static inline void * |
136 | io_mapping_map_atomic_wc(struct io_mapping *mapping, unsigned long offset) | 138 | io_mapping_map_atomic_wc(struct io_mapping *mapping, |
139 | unsigned long offset, | ||
140 | int slot) | ||
137 | { | 141 | { |
138 | return ((char *) mapping) + offset; | 142 | return ((char *) mapping) + offset; |
139 | } | 143 | } |
140 | 144 | ||
141 | static inline void | 145 | static inline void |
142 | io_mapping_unmap_atomic(void *vaddr) | 146 | io_mapping_unmap_atomic(void *vaddr, int slot) |
143 | { | 147 | { |
144 | } | 148 | } |
145 | 149 | ||