diff options
Diffstat (limited to 'arch/arm/include')
| -rw-r--r-- | arch/arm/include/asm/hardware/iop3xx-adma.h | 30 | ||||
| -rw-r--r-- | arch/arm/include/asm/hardware/iop_adma.h | 4 | ||||
| -rw-r--r-- | arch/arm/include/asm/memory.h | 40 | ||||
| -rw-r--r-- | arch/arm/include/asm/pgtable.h | 2 |
4 files changed, 23 insertions, 53 deletions
diff --git a/arch/arm/include/asm/hardware/iop3xx-adma.h b/arch/arm/include/asm/hardware/iop3xx-adma.h index 9b28f1243bdc..240b29ef17db 100644 --- a/arch/arm/include/asm/hardware/iop3xx-adma.h +++ b/arch/arm/include/asm/hardware/iop3xx-adma.h | |||
| @@ -393,36 +393,6 @@ static inline int iop_chan_zero_sum_slot_count(size_t len, int src_cnt, | |||
| 393 | return slot_cnt; | 393 | return slot_cnt; |
| 394 | } | 394 | } |
| 395 | 395 | ||
| 396 | static inline int iop_desc_is_pq(struct iop_adma_desc_slot *desc) | ||
| 397 | { | ||
| 398 | return 0; | ||
| 399 | } | ||
| 400 | |||
| 401 | static inline u32 iop_desc_get_dest_addr(struct iop_adma_desc_slot *desc, | ||
| 402 | struct iop_adma_chan *chan) | ||
| 403 | { | ||
| 404 | union iop3xx_desc hw_desc = { .ptr = desc->hw_desc, }; | ||
| 405 | |||
| 406 | switch (chan->device->id) { | ||
| 407 | case DMA0_ID: | ||
| 408 | case DMA1_ID: | ||
| 409 | return hw_desc.dma->dest_addr; | ||
| 410 | case AAU_ID: | ||
| 411 | return hw_desc.aau->dest_addr; | ||
| 412 | default: | ||
| 413 | BUG(); | ||
| 414 | } | ||
| 415 | return 0; | ||
| 416 | } | ||
| 417 | |||
| 418 | |||
| 419 | static inline u32 iop_desc_get_qdest_addr(struct iop_adma_desc_slot *desc, | ||
| 420 | struct iop_adma_chan *chan) | ||
| 421 | { | ||
| 422 | BUG(); | ||
| 423 | return 0; | ||
| 424 | } | ||
| 425 | |||
| 426 | static inline u32 iop_desc_get_byte_count(struct iop_adma_desc_slot *desc, | 396 | static inline u32 iop_desc_get_byte_count(struct iop_adma_desc_slot *desc, |
| 427 | struct iop_adma_chan *chan) | 397 | struct iop_adma_chan *chan) |
| 428 | { | 398 | { |
diff --git a/arch/arm/include/asm/hardware/iop_adma.h b/arch/arm/include/asm/hardware/iop_adma.h index 122f86d8c991..250760e08103 100644 --- a/arch/arm/include/asm/hardware/iop_adma.h +++ b/arch/arm/include/asm/hardware/iop_adma.h | |||
| @@ -82,8 +82,6 @@ struct iop_adma_chan { | |||
| 82 | * @slot_cnt: total slots used in an transaction (group of operations) | 82 | * @slot_cnt: total slots used in an transaction (group of operations) |
| 83 | * @slots_per_op: number of slots per operation | 83 | * @slots_per_op: number of slots per operation |
| 84 | * @idx: pool index | 84 | * @idx: pool index |
| 85 | * @unmap_src_cnt: number of xor sources | ||
| 86 | * @unmap_len: transaction bytecount | ||
| 87 | * @tx_list: list of descriptors that are associated with one operation | 85 | * @tx_list: list of descriptors that are associated with one operation |
| 88 | * @async_tx: support for the async_tx api | 86 | * @async_tx: support for the async_tx api |
| 89 | * @group_list: list of slots that make up a multi-descriptor transaction | 87 | * @group_list: list of slots that make up a multi-descriptor transaction |
| @@ -99,8 +97,6 @@ struct iop_adma_desc_slot { | |||
| 99 | u16 slot_cnt; | 97 | u16 slot_cnt; |
| 100 | u16 slots_per_op; | 98 | u16 slots_per_op; |
| 101 | u16 idx; | 99 | u16 idx; |
| 102 | u16 unmap_src_cnt; | ||
| 103 | size_t unmap_len; | ||
| 104 | struct list_head tx_list; | 100 | struct list_head tx_list; |
| 105 | struct dma_async_tx_descriptor async_tx; | 101 | struct dma_async_tx_descriptor async_tx; |
| 106 | union { | 102 | union { |
diff --git a/arch/arm/include/asm/memory.h b/arch/arm/include/asm/memory.h index 4dd21457ef9d..6976b03e5213 100644 --- a/arch/arm/include/asm/memory.h +++ b/arch/arm/include/asm/memory.h | |||
| @@ -100,23 +100,19 @@ | |||
| 100 | #define TASK_UNMAPPED_BASE UL(0x00000000) | 100 | #define TASK_UNMAPPED_BASE UL(0x00000000) |
| 101 | #endif | 101 | #endif |
| 102 | 102 | ||
| 103 | #ifndef PHYS_OFFSET | ||
| 104 | #define PHYS_OFFSET UL(CONFIG_DRAM_BASE) | ||
| 105 | #endif | ||
| 106 | |||
| 107 | #ifndef END_MEM | 103 | #ifndef END_MEM |
| 108 | #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) | 104 | #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) |
| 109 | #endif | 105 | #endif |
| 110 | 106 | ||
| 111 | #ifndef PAGE_OFFSET | 107 | #ifndef PAGE_OFFSET |
| 112 | #define PAGE_OFFSET (PHYS_OFFSET) | 108 | #define PAGE_OFFSET PLAT_PHYS_OFFSET |
| 113 | #endif | 109 | #endif |
| 114 | 110 | ||
| 115 | /* | 111 | /* |
| 116 | * The module can be at any place in ram in nommu mode. | 112 | * The module can be at any place in ram in nommu mode. |
| 117 | */ | 113 | */ |
| 118 | #define MODULES_END (END_MEM) | 114 | #define MODULES_END (END_MEM) |
| 119 | #define MODULES_VADDR (PHYS_OFFSET) | 115 | #define MODULES_VADDR PAGE_OFFSET |
| 120 | 116 | ||
| 121 | #define XIP_VIRT_ADDR(physaddr) (physaddr) | 117 | #define XIP_VIRT_ADDR(physaddr) (physaddr) |
| 122 | 118 | ||
| @@ -157,6 +153,16 @@ | |||
| 157 | #endif | 153 | #endif |
| 158 | #define ARCH_PGD_MASK ((1 << ARCH_PGD_SHIFT) - 1) | 154 | #define ARCH_PGD_MASK ((1 << ARCH_PGD_SHIFT) - 1) |
| 159 | 155 | ||
| 156 | /* | ||
| 157 | * PLAT_PHYS_OFFSET is the offset (from zero) of the start of physical | ||
| 158 | * memory. This is used for XIP and NoMMU kernels, or by kernels which | ||
| 159 | * have their own mach/memory.h. Assembly code must always use | ||
| 160 | * PLAT_PHYS_OFFSET and not PHYS_OFFSET. | ||
| 161 | */ | ||
| 162 | #ifndef PLAT_PHYS_OFFSET | ||
| 163 | #define PLAT_PHYS_OFFSET UL(CONFIG_PHYS_OFFSET) | ||
| 164 | #endif | ||
| 165 | |||
| 160 | #ifndef __ASSEMBLY__ | 166 | #ifndef __ASSEMBLY__ |
| 161 | 167 | ||
| 162 | /* | 168 | /* |
| @@ -226,12 +232,21 @@ static inline phys_addr_t __virt_to_phys(unsigned long x) | |||
| 226 | static inline unsigned long __phys_to_virt(phys_addr_t x) | 232 | static inline unsigned long __phys_to_virt(phys_addr_t x) |
| 227 | { | 233 | { |
| 228 | unsigned long t; | 234 | unsigned long t; |
| 229 | __pv_stub(x, t, "sub", __PV_BITS_31_24); | 235 | |
| 236 | /* | ||
| 237 | * 'unsigned long' cast discard upper word when | ||
| 238 | * phys_addr_t is 64 bit, and makes sure that inline | ||
| 239 | * assembler expression receives 32 bit argument | ||
| 240 | * in place where 'r' 32 bit operand is expected. | ||
| 241 | */ | ||
| 242 | __pv_stub((unsigned long) x, t, "sub", __PV_BITS_31_24); | ||
| 230 | return t; | 243 | return t; |
| 231 | } | 244 | } |
| 232 | 245 | ||
| 233 | #else | 246 | #else |
| 234 | 247 | ||
| 248 | #define PHYS_OFFSET PLAT_PHYS_OFFSET | ||
| 249 | |||
| 235 | static inline phys_addr_t __virt_to_phys(unsigned long x) | 250 | static inline phys_addr_t __virt_to_phys(unsigned long x) |
| 236 | { | 251 | { |
| 237 | return (phys_addr_t)x - PAGE_OFFSET + PHYS_OFFSET; | 252 | return (phys_addr_t)x - PAGE_OFFSET + PHYS_OFFSET; |
| @@ -244,17 +259,6 @@ static inline unsigned long __phys_to_virt(phys_addr_t x) | |||
| 244 | 259 | ||
| 245 | #endif | 260 | #endif |
| 246 | #endif | 261 | #endif |
| 247 | #endif /* __ASSEMBLY__ */ | ||
| 248 | |||
| 249 | #ifndef PHYS_OFFSET | ||
| 250 | #ifdef PLAT_PHYS_OFFSET | ||
| 251 | #define PHYS_OFFSET PLAT_PHYS_OFFSET | ||
| 252 | #else | ||
| 253 | #define PHYS_OFFSET UL(CONFIG_PHYS_OFFSET) | ||
| 254 | #endif | ||
| 255 | #endif | ||
| 256 | |||
| 257 | #ifndef __ASSEMBLY__ | ||
| 258 | 262 | ||
| 259 | /* | 263 | /* |
| 260 | * PFNs are used to describe any physical page; this means | 264 | * PFNs are used to describe any physical page; this means |
diff --git a/arch/arm/include/asm/pgtable.h b/arch/arm/include/asm/pgtable.h index be956dbf6bae..1571d126e9dd 100644 --- a/arch/arm/include/asm/pgtable.h +++ b/arch/arm/include/asm/pgtable.h | |||
| @@ -61,7 +61,7 @@ extern void __pgd_error(const char *file, int line, pgd_t); | |||
| 61 | * mapping to be mapped at. This is particularly important for | 61 | * mapping to be mapped at. This is particularly important for |
| 62 | * non-high vector CPUs. | 62 | * non-high vector CPUs. |
| 63 | */ | 63 | */ |
| 64 | #define FIRST_USER_ADDRESS PAGE_SIZE | 64 | #define FIRST_USER_ADDRESS (PAGE_SIZE * 2) |
| 65 | 65 | ||
| 66 | /* | 66 | /* |
| 67 | * Use TASK_SIZE as the ceiling argument for free_pgtables() and | 67 | * Use TASK_SIZE as the ceiling argument for free_pgtables() and |
