aboutsummaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAge
* [ARM] 3860/1: Versatile PCI config byte accessesPaul Brook2006-09-27
| | | | | | | | | | | | The ARM Versatile board PCI config space read routines are broken for byte accesses. The access uses a byte read, so masking the bottom two bits of the address is wrong. I guess this is a cut/paste error from the the halfword code which uses aligned word access+shift+mask. Signed-off-by: Paul Brook <paul@codesourcery.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3859/1: Fix devicemaps_init() XIP_KERNEL odd 1MiB XIP_PHYS_ADDR ↵George G. Davis2006-09-27
| | | | | | | | | | | | | | translation error The ARM XIP_KERNEL map created in devicemaps_init() is wrong. The map.pfn is rounded down to an even 1MiB section boundary which results in va/pa translations errors when XIP_PHYS_ADDR starts on an odd 1MiB boundary and this causes the kernel to hang. This patch fixes ARM XIP_KERNEL translation errors for the odd 1MiB XIP_PHYS_ADDR boundary case. Signed-off-by: George G. Davis <gdavis@mvista.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3858/1: S3C2412: power management codeBen Dooks2006-09-27
| | | | | | | | Add S3C2412 power management code, and move the core register saving in from s3c2412.c Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3854/2: S3C2410 - add machine type for AML M5900 series (resubmitted)David Anders2006-09-27
| | | | | | | | | | | | Add the AML M5900 series to the list of supported machines in the arch/arm/mach-s3c2410 directory. This ensures the core peripherals are registered, and the timer source is configured. if selected in the kernel config the framebuffer registers and mtd partition information are set. This version of the patch has corrected formatting and removed the legacy procfs directory entry. Signed-off-by: David Anders <danders@amltd.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3838/1: ARM: DCC debug console support for ARM11Tony Lindgren2006-09-25
| | | | | | | | Adds support for CONFIG_DEBUG_ICEDCC for ARM11. Tested on ARM1136 (OMAP2420). Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] Cleanups for 4cc9bd2eaa1063c68341c1c00e66660adcfdf254Russell King2006-09-25
| | | | | | | | | - Document the meaning for OP_SCALAR, OP_SD and add OP_DD. - Formatting cleanups - Remove now redundant code for making compare instructions operate on scalar values. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3789/4: Fix VFP emulation to ignore VECITR for scalar instructionGen FUKATSU2006-09-25
| | | | | | | | | | | | | VECITR in Floating-Point Exception register indicates the number of remaining short vector iterations after a potential exception was detected. In case of exception caused by scalar instructions, VECITR is NOT updated. Therefore emulation for VFP must ignore VECITR field and treat "veclen" as zero when recognizing scalar instructing. Signed-off-by: Gen Fukatsu <fukatsu.gen@jp.panasonic.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3792/2: Fix description of ZBOOT_ROM_BSSDan Fandrich2006-09-25
| | | | | | | | | | | The documentation for the ZBOOT_ROM_BSS config option describes it as "The base address of 64KiB of read/write memory in the target for the ROM-able zImage..." In actuality, it requires more than 100 KiB of space in addition to enough space to hold the decompressed kernel. This patch fixes the description in the Kconfig file. Signed-off-by: Dan Fandrich <dfandrich@intrinsyc.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3853/1: Fix flush_ptrace_access() thinko for nonaliasing VIPT cache caseGeorge G. Davis2006-09-25
| | | | | | | | | | Fix thinko in the flush_ptrace_access() "if (expr)" for the ARM VIPT non-aliasing cache case. We only need to flush cache when VM_EXEC is set in vma->vm_flags but "if (expr) always evaluates to true on UP systems for the ARM VIPT non-aliasing cache case. Signed-off-by: George G. Davis <gdavis@mvista.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3851/1: iop3xx: add io-data glantank supportLennert Buytenhek2006-09-25
| | | | | | | | Add support for the IO-Data GLAN Tank, from Martin Michlmayr. Signed-off-by: Martin Michlmayr <tbm@cyrius.com> Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3850/1: iop3xx: add thecus n2100 supportLennert Buytenhek2006-09-25
| | | | | | | Add support for the Thecus n2100 (80219-based.) Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3844/1: S3C24XX: update s3c2410_defconfigBen Dooks2006-09-25
| | | | | | | New s3c2410_defconfig, updated 2.6.18 Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3843/1: S3C24XX: Remove modfication lines from commentsBen Dooks2006-09-25
| | | | | | | | Remove the redundant Modification lines from the top of the files in arch/arm/mach-s3c2410 Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3842/1: S3C2412: Rename LCD deviceBen Dooks2006-09-25
| | | | | | | | The S3C2412 LCD controller is different enough to warrant renaming the platform device. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3841/1: S3C2412: Add new IDCODE 32412003Ben Dooks2006-09-25
| | | | | | | Add new code for the S3C2412 Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3840/1: S3C2412: Add machine VSTMSBen Dooks2006-09-25
| | | | | | | | Add new machine VSTMS Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Gleixner <tglx@linuxtronix.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] Update mach-typesRussell King2006-09-25
| | | | Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3834/1: iop3xx: remove per-board defconfigsLennert Buytenhek2006-09-25
| | | | | | | Remove the old per-board defconfigs. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3833/1: iop3xx: add per-mach defconfigsLennert Buytenhek2006-09-25
| | | | | | | | Add one defconfig for all iop32x boards and one defconfig for all iop33x boards. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3832/1: iop3xx: coding style cleanupLennert Buytenhek2006-09-25
| | | | | | | | | Since the iop32x code isn't iop321-specific, and the iop33x code isn't iop331-specfic, do a s/iop321/iop32x/ and s/iop331/iop33x/, and tidy up the code to conform to the coding style guidelines somewhat better. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3830/1: iop3xx: board support file cleanupLennert Buytenhek2006-09-25
| | | | | | | | | | | Revamp the iop3xx board support: move the support code for each iop board type into its own file, start using platform serial and platform physmap flash devices, switch to a per-board time tick rate, and get rid of the ARCH_EP80219 and STEPD config options by doing the relevant checks at run time. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3829/1: iop3xx: optimise irq entry macrosLennert Buytenhek2006-09-25
| | | | | | | | Squeeze three instructions out of the iop32x irq demuxer, and nine out of the iop33x irq demuxer by using the hardware vector generator. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3828/1: iop3xx: remove useless loadsp macroLennert Buytenhek2006-09-25
| | | | | | | | The iop33x loadsp hunk in arch/arm/boot/compressed/head.S serves no purpose -- remove it. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3827/1: iop3xx: add common gpio moduleLennert Buytenhek2006-09-25
| | | | | | | Implement the gpio_line_{config,get,set} API for iop3xx. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3826/1: iop3xx: remove IOP3??_IRQ_OFS irq offsetLennert Buytenhek2006-09-25
| | | | | | | | Get rid of the unused IOP3??_IRQ_OFS irq offset define, start IRQ numbering from zero. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3825/1: iop3xx: use cp6 enable/disable macrosLennert Buytenhek2006-09-25
| | | | | | | | | | Add CP6 enable/disable sequences to the timekeeping code and the IRQ code. As a result, we can't depend on CP6 access being enabled when we enter get_irqnr_and_base anymore, so switch the latter over to using memory-mapped accesses for now. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3823/1: iop3xx: switch iop32x/iop33x over to shared time codeLennert Buytenhek2006-09-25
| | | | | | | | Switch the iop32x and iop33x code over to the common time implementation, and remove the (nearly identical) iop32x and iop33x time implementations. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3822/1: iop3xx: rewrite time handlingLennert Buytenhek2006-09-25
| | | | | | | | Merge and rewrite the iop32x/iop33x time code to do lost jiffy tracking properly, and put the result in plat-iop/time.c. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3821/1: iop3xx: switch iop32x/iop33x over to shared pci codeLennert Buytenhek2006-09-25
| | | | | | | | Switch the iop32x and iop33x code over to the common PCI implementation, and remove the (nearly identical) iop32x and iop33x PCI implementations. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3820/1: iop3xx: factor out shared pci codeLennert Buytenhek2006-09-25
| | | | | | | Merge the iop32x PCI code and iop33x PCI code into plat-iop/pci.c. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3819/1: iop3xx: factor out shared i2c codeLennert Buytenhek2006-09-25
| | | | | | | | Move the i2c bits shared between iop32x and iop33x to plat-iop/i2c.c and include/asm-arm/hardware/iop3xx.h. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3818/1: iop3xx: introduce arch/arm/plat-iop for shared iop32x/iop33x codeLennert Buytenhek2006-09-25
| | | | | | | | Introduce the arch/arm/plat-iop directory, for code shared between the iop32x and iop33x, and move the common memory map setup bits there. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3817/1: iop3xx: split the iop3xx mach into iop32x and iop33xLennert Buytenhek2006-09-25
| | | | | | | | | Split the iop3xx mach type into iop32x and iop33x -- split the config symbols, and move the code in the mach-iop3xx directory to the mach-iop32x and mach-iop33x directories. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3816/1: iop3xx: rename config symbolsLennert Buytenhek2006-09-25
| | | | | | | | Rename CONFIG_ARCH_IOP321 to CONFIG_ARCH_IOP32X and CONFIG_ARCH_IOP331 to CONFIG_ARCH_IOP33X. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3836/1: S3C24XX: Clear both EINT and INT status before sleepBen Dooks2006-09-25
| | | | | | | | | | Clear both the EINT and INT status before going to sleep, otherwise we may end up being woken by something that was not set in our wakeup map. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3806/2: S3C2412: Fix GPIO VA when only S3C2412 selectedBen Dooks2006-09-25
| | | | | | | | | | | | The s3c24xx_va_gpio2 variable is only used when the S3C2412 and another cpu-type is being used in the kernel. This patch ensures it is not set when it is not being used. Fixes bug report by Thomas Gleixner. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3803/2: S3C24XX: PM split S3C2410 out of core pmBen Dooks2006-09-25
| | | | | | | | | Remove the S3C2410 specific items out of the core PM code. Add sysdev driver for all the S3C24XX series that used the S3C2410 PM code. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3800/2: S3C2412: DMA channel mappingsBen Dooks2006-09-25
| | | | | | | DMA channel mappings for the S3C2312 Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3814/1: move 80200 dma_inv_range() erratum check out of lineLennert Buytenhek2006-09-25
| | | | | | | | | | | | | | | On stepping A0/A1 of the 80200, invalidating D-cache by line doesn't clear the dirty bits, which means that if we invalidate a dirty line, the dirty data can still be written back to memory later on. To work around this, dma_inv_range() on these two processors is implemented as dma_flush_range() (i.e. do a clean D-cache line before doing the invalidate D-cache line.) For this, we currently have a processor ID check in xscale_dma_inv_range(), but a better solution is to add a separate cache_fns and proc_info for A0/A1 80200. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3813/1: prevent >= 4G /dev/mem mmap()Lennert Buytenhek2006-09-25
| | | | | | | | | | | | Prevent userland from mapping in physical address regions >= 4G by checking for that in valid_mmap_phys_addr_range(). Unfortunately, we cannot override valid_mmap_phys_addr_range() without also overriding valid_phys_addr_range(), so copy drivers/char/mem.c's version of valid_phys_addr_range() over to arch/arm/mm/mmap.c as well. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3811/1: ep93xx: add cirrus logic edb9312 supportLennert Buytenhek2006-09-25
| | | | | | | Add Cirrus Logic EDB9312 support. Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3802/1: S3C24XX: PM tidy up cache flushingBen Dooks2006-09-25
| | | | | | | | | | | | | | Change to using flush_cache_all() in pm.c and also remove the need to flush the cache in the PM code. This changes the sleep.S code to have an entry to store the registers for resume, and then a second entry (after the caches are cleaned) to do the suspend and resume. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3801/1: S3C24XX: Move IRQ PM out of pm.cBen Dooks2006-09-25
| | | | | | | | | | | | | | | | Seperate the IRQ power management code out of the pm.c file, and add it to the relevant system class devices. Also make the suspend and resume code take notice of the fact these registers can be moved by compile time code. Add fix from Ilya Yanok to also save the INTSUBMSK over sleep. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3799/1: S3C2442: DMA channel mappingsBen Dooks2006-09-25
| | | | | | | DMA channel mappings for the S3C2442 Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3798/1: S3C2440: DMA channel mappingsBen Dooks2006-09-25
| | | | | | | S3C2440 DMA channel mappings Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3797/1: S3C2410: DMA channel mappingsBen Dooks2006-09-25
| | | | | | | DMA channel mappings for the S3C2410 Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3796/1: S3C24XX: Add per-cpu DMA channel mapperBen Dooks2006-09-25
| | | | | | | | | | | | | Allow each CPU type in the S3C24XX range to select the DMA channel mapping it supports. We change the DMA registration to use an virtual channel number that the DMA system will allocate to a hardware channel at request time. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] 3759/2: Remove uses of %?Daniel Jacobowitz2006-09-20
| | | | | | | | | | | | | | | | | | | | | | | Patch from Daniel Jacobowitz The ARM kernel has several uses of asm("foo%?"). %? is a GCC internal modifier used to output conditional execution predicates. However, no version of GCC supports conditionalizing asm statements. GCC 4.2 will correctly expand %? to the empty string in user asms. Earlier versions may reuse the condition from the previous instruction. In 'if (foo) asm ("bar%?");' this is somewhat likely to be right... but not reliable. So, the only safe thing to do is to remove the uses of %?. I believe the tlbflush.h occurances were supposed to be removed before, based on the comment about %? not working at the top of that file. Old versions of GCC could omit branches around user asms if the asm didn't mark the condition codes as clobbered. This problem hasn't been seen on any recent (3.x or 4.x) GCC, but it could theoretically happen. So, where %? was removed a cc clobber was added. Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] Optimise VFP thread notify function a littleRussell King2006-09-20
| | | | | | | | The common case for the thread notifier is a context switch. Tell gcc that this is the most likely condition so it can optimise the function for this case. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] Add ARM irqtrace supportRussell King2006-09-20
| | | | | | This adds support for irqtrace for lockdep on ARM. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>