aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2008-10-09Merge branch 'at91' into develRussell King383-4478/+7902
2008-10-09Merge branch 'ptebits' into develRussell King627-6013/+28318
Conflicts: arch/arm/Kconfig
2008-10-09Merge branches 'machtypes', 'core', 'ep93xx', 'ks8695', 'netdev' and ↵Russell King425-2195/+2955
'sa1100' into devel
2008-10-09[ARM] 5295/1: make ZONE_DMA optionalNicolas Pitre4-2/+8
Most ARM machines don't need a special "DMA" memory zone, and when configured out, the kernel becomes a bit smaller: | text data bss dec hex filename |3826182 102384 111700 4040266 3da64a vmlinux |3823593 101616 111700 4036909 3d992d vmlinux.nodmazone This is because the system now has only one zone total which effect is to optimize away many conditionals in page allocation paths. So let's configure this zone only on machines that need split zones. Signed-off-by: Nicolas Pitre <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-09[ARM] 5297/1: [KS8695] Fix two compile-time warningsAndrew Victor2-3/+3
Fix two warnings when compiling for the KS8695 processor. arch/arm/include/asm/dma-mapping.h: In function 'dma_to_virt': arch/arm/include/asm/dma-mapping.h:40: warning: return makes pointer from integer without a cast Section mismatch in reference from the function pcibios_fixup_bus() to the (unknown reference) .devinit.text:(unknown) The function pcibios_fixup_bus() references the (unknown reference) __devinit (unknown). This is often because pcibios_fixup_bus lacks a __devinit annotation or the annotation of (unknown) is wrong. Signed-off-by: Andrew Victor <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-09[ARM] 5296/1: [KS8695] Replace macro's with trailing underscores.Andrew Victor4-16/+16
Replace Macro names that have trailing underscores. Also use the IOPD() macro instead of a hard-coded bit-shift (for better readability). Signed-off-by: Andrew Victor <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-07[ARM] 5293/1: ep93xx: add defines for external chipselectsHartley Sweeten1-0/+34
This patch adds defines for the external chipselect physical base addresses available with the EP93xx. These are meant to be used in the platform init code. In addition, documentation about the synchronous/asynchronous boot modes for the EP93xx and a reference to errata about issues with synchronous booting has been added. Signed-off-by: <H Hartley Sweeten <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-04[ARM] 5273/2: ep93xx: move ethernet support into core.cHartley Sweeten12-185/+68
All EP93xx based systems can support Ethernet. This patch moves the platform_device setup from the various board support files into the core support file. The Ethernet driver data still remains in the individual platform setup files to allow specific platform configuration. This also adds Ethernet support to the edb9302, edb9312, and edb9315 platforms. Signed-off-by: H Hartley Sweeten <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-03[ARM] 5229/3: Replace some ARMv7 opcodes with the instruction nameCatalin Marinas2-2/+2
These instructions were placed in the code directly as opcodes because early compilers didn't support them. Toolchains supporting ARMv7 understand these instructions and the patch puts the mnemonics back. Signed-off-by: Catalin Marinas <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-03[ARM] 5276/1: ep93xx: allow selecting UART for early kernel messagesHartley Sweeten2-6/+29
Currently on the EP93xx platform early kernel messages go to UART1. Since this UART is the only one that has modem control signals it might be used for another purpose and it is undesirable for those messages to appear. This patch allows one of the other UARTs to be selected in the kernel configuration. It is assumed that the bootloader has configured and initialized the UART since this was the previous assumption. Signed-off-by: H Hartley Sweeten <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-02[ARM] 5274/1: simplify request_standard_resources()Nicolas Pitre1-7/+2
There is no point converting memory bank addresses from physical to virtual just to convert them back to physical addresses. Furthermore this isn't "right" for highmem even if in this case the end result is the correct one. Signed-off-by: Nicolas Pitre <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-01[NET] 5268/1: cs89x0: add support for i.MX31ADS ARM board.Gilles Chanteperdrix2-3/+17
Add support for i.MX31ADS board to the cs89x0 ethernet driver. Rework Kconfig options for the cs89x0 driver to reduce the #ifdef clutter. Signed-off-by: Gilles Chanteperdrix <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] 5250/1: unbalanced enable_irq() for serial_ks8695.c fixDick Hollenbeck1-9/+52
The function ks8695uart_set_termios() would cause an unbalanced enable_irq() generated message to be printk()ed. This is because there was no book keeping support to remember if the calls to enable_irq() and disable_irq() were balanced for the modem control irq. Signed-off-by: Dick Hollenbeck <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] 5270/1: Fix Formatting in mach-sa1100/ machine filesKristoffer Ericson3-34/+34
This patch fixes formatting issues in mach-sa1100/ machine files. More specificly badge4.c,generic.c and pleb.c. Signed-off-by: Kristoffer Ericson <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] 5256/1: Update jornada default configKristoffer Ericson1-445/+612
This patch updates the jornada default config (which was made for 2.6.12). Plenty of development has happend since then, most importantly the SSP driver and kbd/touchscr. This config has been tested to compile and bootup properly. Signed-off-by: Kristoffer Ericson <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] mm: allow LH7A40x to use sparsememRussell King3-13/+14
Enable Sparsemem support for LH7A40x SoCs, while still allowing the existing discontig support for the time being. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] mm: deprecate discontigmem on ARMRussell King1-1/+5
Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] mm: switch SA1100 to use sparsememRussell King2-11/+7
Tested on Assabet, and Assabet with Neponset's SDRAM at 3328M phys. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] mm: enable sparsemem on clps7500 and RiscPCRussell King4-3/+35
Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] mm: finish ARM sparsemem supportRussell King1-29/+57
... including some comments about the ordering required to bring sparsemem up. You have to repeatedly guess, test, reguess, try again and again to work out what the right ordering is. Many hours later... Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] mm: provide helpers for accessing membanksRussell King2-31/+39
Provide helpers for getting physical addresses or pfns from the meminfo array, and use them. Move for_each_nodebank() to asm/setup.h alongside the meminfo structure definition. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Improve non-executable supportRussell King6-58/+145
Add support for detecting non-executable stack binaries, and adjust permissions to prevent execution from data and stack areas. Also, ensure that READ_IMPLIES_EXEC is enabled for older CPUs where that is true, and for any executable-stack binary. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Don't include asm/elf.h in asm codeRussell King23-26/+22
asm code really wants asm/hwcap.h, so include that instead. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Remove MT_NONSHARED_DEVICE aliasRussell King4-9/+7
Use MT_DEVICE_NONSHARED instead. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Remove MT_DEVICE_IXP2000 and associated definitionsRussell King10-49/+26
As of the previous commit, MT_DEVICE_IXP2000 encodes to the same PTE bit encoding as MT_DEVICE, so it's now redundant. Convert MT_DEVICE_IXP2000 to use MT_DEVICE instead, and remove its aliases. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Update Xscale and Xscale3 PTE mappingsRussell King2-9/+7
Use 'shared device' mappings for devices, and use the standard bit combinations for Xscale3. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] remove 'prot_pte_ext' from memory type tableRussell King3-5/+2
This member is now redundant; the memory type is encoded in the Linux PTE bits. Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Convert ARMv7 to use TEX remappingRussell King1-4/+33
Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Convert ARMv6 and ARMv7 to use new memory typesRussell King7-18/+40
Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Convert Xscale and Xscale3 to use new memory typesRussell King3-31/+55
Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Introduce new PTE memory type bitsRussell King5-42/+68
Provide L_PTE_MT_xxx definitions to describe the memory types that we use in Linux/ARM. These definitions are carefully picked such that: 1. their LSBs match what is required for pre-ARMv6 CPUs. 2. they all have a unique encoding, including after modification by build_mem_type_table() (the result being that some have more than one combination.) Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Re-jig Linux PTE bits to allow room for 4 memory type bitsRussell King1-4/+4
Signed-off-by: Russell King <[email protected]>
2008-10-01[ARM] Convert set_pte_ext implementions to macrosRussell King18-402/+177
There are actually only four separate implementations of set_pte_ext. Use assembler macros to insert code for these into the proc-*.S files. Signed-off-by: Russell King <[email protected]>
2008-09-30[ARM] mm: move vmalloc= parsing to arch/arm/mm/mmu.cRussell King3-21/+22
There's no point scattering this around the tree, the parsing of the parameter might as well live beside the code which uses it. That also means we can make vmalloc_reserve a static variable. Signed-off-by: Russell King <[email protected]>
2008-09-30[ARM] mm: move validation of membanks to one placeRussell King3-12/+19
The newly introduced sanity_check_meminfo() function should be used to collect all validation of the meminfo array, which we have in bootmem_init(). Move it there. Signed-off-by: Russell King <[email protected]>
2008-09-30[ARM] 5272/1: remove conditional compilation in show_pte()Nicolas Pitre1-3/+2
The PTRS_PER_PMD != 1 condition can be evaluated with C code and optimized at compile time. Signed-off-by: Nicolas Pitre <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-09-30[ARM] 5271/1: get rid of pages_to_mb()Nicolas Pitre1-5/+0
There is no use of this in the whole tree. Signed-off-by: Nicolas Pitre <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-09-30[ARM] 5269/1: ARMv7: Use -march=armv7-a as compiler flagCatalin Marinas1-1/+1
The current -march=armv7a is not supported by mainline gcc. Cc: Paul Brook <[email protected]> Cc: Wei Zhong <[email protected]> Signed-off-by: Catalin Marinas <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-09-30[ARM] dma: fix some comments in dma-mapping.hRussell King1-8/+7
... to prevent people being mislead. Signed-off-by: Russell King <[email protected]>
2008-09-30[ARM] dma: don't touch cache on dma_*_for_cpu()Russell King2-11/+3
As per the dma_unmap_* calls, we don't touch the cache when a DMA buffer transitions from device to CPU ownership. Presently, no problems have been identified with speculative cache prefetching which in itself is a new feature in later architectures. We may have to revisit the DMA API later for these architectures anyway. Signed-off-by: Russell King <[email protected]>
2008-09-29[ARM] 5267/1: [AT91] Name conflict in mach-at91/leds.cAndrew Victor1-4/+4
The name of the platform device 'at91_pwm_leds' conflicts with the function at91_pwm_leds(). So rename the device 'at91_pwm_leds_device' to be more specific. Similarly rename 'at91_gpio_leds_device' for consistency. Signed-off-by: Andrew Victor <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-09-29[ARM] 5261/1: [AT91] Support for LEDs on Conitec ARM&EVA boardAndrew Victor1-1/+27
Add support for the LEDs on the Conitec ARM&EVA board. Signed-off-by: Andrew Victor <[email protected]> Signed-off-by: Russell King <[email protected]>
2008-09-29[ARM] dma: add validation of DMA paramsRussell King2-4/+15
Validate the direction argument like x86 does. In addition, validate the dma_unmap_* parameters against those passed to dma_map_* when using the DMA bounce code. Signed-off-by: Russell King <[email protected]>
2008-09-29[ARM] dma: coding style cleanupsRussell King2-88/+64
Signed-off-by: Russell King <[email protected]>
2008-09-29[ARM] dma: fix dmabounce dma_sync_xxx() implementationsRussell King2-101/+69
The dmabounce dma_sync_xxx() implementation have been broken for quite some time; they all copy data between the DMA buffer and the CPU visible buffer no irrespective of the change of ownership. (IOW, a DMA_FROM_DEVICE mapping copies data from the DMA buffer to the CPU buffer during a call to dma_sync_single_for_device().) Fix it by getting rid of sync_single(), moving the contents into the recently created dmabounce_sync_for_xxx() functions and adjusting appropriately. This also makes it possible to properly support the DMA range sync functions. Signed-off-by: Russell King <[email protected]>
2008-09-29[ARM] dma: use new dmabounce_sync_for_xxx() for dma_sync_single_xxx()Russell King2-98/+76
Signed-off-by: Russell King <[email protected]>
2008-09-29[ARM] dma: Reduce to one dma_sync_sg_* implementationRussell King3-38/+31
Signed-off-by: Russell King <[email protected]>
2008-09-25[ARM] dma: Reduce to one dma_map_sg()/dma_unmap_sg() implementationRussell King2-54/+16
No point having two of these; dma_map_page() can do all the work for us. Signed-off-by: Russell King <[email protected]>
2008-09-25[ARM] dma: provide a better dma_map_page() implementationRussell King2-1/+23
We can translate a struct page directly to a DMA address using page_to_dma(). No need to use page_address() followed by virt_to_dma(). Signed-off-by: Russell King <[email protected]>
2008-09-25[ARM] Update dma_map_sg()/dma_unmap_sg() APIRussell King3-125/+115
Update the ARM DMA scatter gather APIs for the scatterlist changes. Signed-off-by: Russell King <[email protected]>