summaryrefslogtreecommitdiffstats
path: root/arch/m68k/amiga/chipram.c
Commit message (Collapse)AuthorAgeFilesLines
* zorro: ZTWO_VADDR() should return "void __iomem *"Geert Uytterhoeven2013-11-261-1/+1
| | | | | | | | | | | ZTWO_VADDR() converts from physical to virtual I/O addresses, so it should return "void __iomem *" instead of "unsigned long". This allows to drop several casts, but requires adding a few casts to accomodate legacy driver frameworks that store "unsigned long" I/O addresses. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Chip RAM - Use lookup_resource()Geert Uytterhoeven2011-07-301-11/+11
| | | | | | | Replace a custom implementation (which doesn't lock the resource tree) by a call to lookup_resource() Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Chip RAM - Offset resource end by CHIP_PHYSADDRGeert Uytterhoeven2011-07-301-1/+1
| | | | | | | Technically, the end of Chip RAM should be offset by CHIP_PHYSADDR (which is zero). Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Chip RAM - Use resource_size() to fix off-by-one errorGeert Uytterhoeven2011-07-301-1/+1
| | | | Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Chip RAM - Change chipavail to an atomic_tGeert Uytterhoeven2011-07-301-6/+9
| | | | | | | While the core resource handling code is safe, our global counter must still be protected against concurrent modifications. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Chip RAM - Always allocate from the start of memoryGeert Uytterhoeven2011-07-301-20/+15
| | | | | | | | | | | As of commit 5df1abdbd37af2ae317a1c5b5944173284dc55d6 ('m68k/amiga: Fix "debug=mem"'), "debug=mem" no longer uses amiga_chip_alloc_res(), so we can remove the hack to prefer memory at the safe end. This allows to simplify the code and make amiga_chip_alloc() just call amiga_chip_alloc_res() internally. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Chip RAM - Convert from printk() to pr_*()Geert Uytterhoeven2011-07-301-20/+8
| | | | | | | | and fix a few formattings: - resource sizes are now resource_size_t, use %pR to make it future proof, - use %lu for unsigned long. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Chip RAM - Use tabs for indentationGeert Uytterhoeven2011-07-301-57/+61
| | | | Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* m68k/amiga: Reclaim Chip RAM for PPC exception handlersGeert Uytterhoeven2011-03-161-4/+0
| | | | | | | On m68k, it doesn't make sense to reserve memory for the PPC exception handlers, and APUS support is dead. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
* PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architecturesAndrea Righi2008-07-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On 32-bit architectures PAGE_ALIGN() truncates 64-bit values to the 32-bit boundary. For example: u64 val = PAGE_ALIGN(size); always returns a value < 4GB even if size is greater than 4GB. The problem resides in PAGE_MASK definition (from include/asm-x86/page.h for example): #define PAGE_SHIFT 12 #define PAGE_SIZE (_AC(1,UL) << PAGE_SHIFT) #define PAGE_MASK (~(PAGE_SIZE-1)) ... #define PAGE_ALIGN(addr) (((addr)+PAGE_SIZE-1)&PAGE_MASK) The "~" is performed on a 32-bit value, so everything in "and" with PAGE_MASK greater than 4GB will be truncated to the 32-bit boundary. Using the ALIGN() macro seems to be the right way, because it uses typeof(addr) for the mask. Also move the PAGE_ALIGN() definitions out of include/asm-*/page.h in include/linux/mm.h. See also lkml discussion: http://lkml.org/lkml/2008/6/11/237 [akpm@linux-foundation.org: fix drivers/media/video/uvc/uvc_queue.c] [akpm@linux-foundation.org: fix v850] [akpm@linux-foundation.org: fix powerpc] [akpm@linux-foundation.org: fix arm] [akpm@linux-foundation.org: fix mips] [akpm@linux-foundation.org: fix drivers/media/video/pvrusb2/pvrusb2-dvb.c] [akpm@linux-foundation.org: fix drivers/mtd/maps/uclinux.c] [akpm@linux-foundation.org: fix powerpc] Signed-off-by: Andrea Righi <righi.andrea@gmail.com> Cc: <linux-arch@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* cleanup after APUS removalAdrian Bunk2008-02-061-2/+0
| | | | | | | | | | | | | After the APUS removal, some code can be removed. Signed-off-by: Adrian Bunk <bunk@kernel.org> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Cc: Karsten Keil <kkeil@suse.de> Cc: James Bottomley <James.Bottomley@steeleye.com> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* m68k: kill arch/m68k/amiga/amiga_ksyms.cAdrian Bunk2008-02-051-0/+7
| | | | | | | | | | EXPORT_SYMBOL's belong to the actual code. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* [PATCH] m68k: replace kmalloc+memset with kzallocYan Burman2006-12-071-2/+1
| | | | | | | | | | Replace kmalloc+memset with kzalloc Signed-off-by: Yan Burman <burman.yan@gmail.com> Cc: Roman Zippel <zippel@linux-m68k.org> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Remove obsolete #include <linux/config.h>Jörn Engel2006-06-301-1/+0
| | | | | Signed-off-by: Jörn Engel <joern@wohnheim.fh-wedel.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
* Linux-2.6.12-rc2v2.6.12-rc2Linus Torvalds2005-04-161-0/+133
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
OpenPOWER on IntegriCloud