Subject: Re: switched to strongARM and 160 Mb and Debian 2.2 doesn't boot

From: [email-masked]
Date: Mon, 28 Aug 2000 17:49:36 -0400

Russell King wrote:
> is probably what you were meaning, and yes, it still fits in the 0xc0000000
> to 0xcfffffff space.  But what about the vmalloc area, when you've got all
> the banks used and full (ie 256MB of memory)?
>

Just for the record, According to the SA1110 Advance Developer Manual each of
the four SDRAM banks in an SA1110 can contain 128 MB of RAM (using 32M x 8, or
64M x 16, or 64M x 4 components) for a total of 512MB of memory.  I'm not saying
you'd want to do this, but that it is technically possible using commercially
available parts.

For example:
     Using 4 Samsung K4S560832A 32Mx8 components yields 128MB bank w/32 bit bus
     Using 4 Samsung K4S560432A 64Mx4 components yields 128MB bank w/16 bit bus

Enjoy,
Erik

unsubscribe: body of `unsubscribe linux-arm-kernel' to [email-masked]

---

From: George France <[email-masked]>
Date: Mon, 28 Aug 2000 18:26:36 -0400

Thank you, Erik,

The patch works. :-)

Best Regards,

--George

George France,      [email-masked]
Cambridge Research Laboratory, Compaq Computer Corporation
One Cambridgecenter    MS: CRL
Cambridge, MA 02142 USA

> -----Original Message-----
> From: Erik Mouw [mailto:[email-masked]]
> Sent: Monday, August 28, 2000 6:21 PM
> To: [email-masked]
> Cc: [email-masked]; [email-masked]; [email-masked];
> [email-masked]; [email-masked];
> [email-masked]
> Subject: Re: switched to strongARM and 160 Mb and Debian 2.2 doesn't
> boot
> 
> 
> On Mon, 28 Aug 2000 21:42:48 +0100 (BST), Russell King - ARM 
> Linux Admin wrote:
> > J.D. Bakker writes:
> > Not quite correct, but:
> > 
> > #define __virt_to_phys(x)   (((x) & 0xf3ffffff) | ((x) & 
> 0x0c000000) << 1)
> > #define __phys_to_virt(x)   (((x) & 0xe7ffffff) | ((x) & 
> 0x18000000) >> 1)
> > 
> This patch allows 64MB/bank; tested on the LART, YMMV.
> Oh, and #include <vmalloc-dislaimer>.
> 
> --------------------------------------------------------------------
> diff -urN 
> linux-2.4.0-test6-rmk5-np2-vanilla/include/asm-arm/arch-sa1100
> /memory.h 
> linux-2.4.0-test6-rmk5-np2/include/asm-arm/arch-sa1100/memory.h
> --- 
> linux-2.4.0-test6-rmk5-np2-vanilla/include/asm-arm/arch-sa1100
> /memory.h Thu Jan 13 22:30:31 2000
> +++ 
> linux-2.4.0-test6-rmk5-np2/include/asm-arm/arch-sa1100/memory.
> h Mon Aug 28 23:02:36 2000
> @@ -29,10 +29,11 @@
>  #define __phys_to_virt__is_a_macro
>  
>  /*
> - * The following gives a maximum memory size of 128MB (32MB 
> in each bank).
> + * The following gives a maximum memory size of 256MB (64MB 
> in each bank).
>   */
> -#define __virt_to_phys(x)  (((x) & 0xf9ffffff) | ((x) & 
> 0x06000000) << 2)
> -#define __phys_to_virt(x)  (((x) & 0xe7ffffff) | ((x) & 
> 0x18000000) >> 2)
> +#define __virt_to_phys(x)   (((x) & 0xf3ffffff) | ((x) & 
> 0x0c000000) << 1)
> +#define __phys_to_virt(x)   (((x) & 0xe7ffffff) | ((x) & 
> 0x18000000) >> 1)
> +
>  
>  /*
>   * Virtual view <-> DMA view memory address translations
> diff -urN 
> linux-2.4.0-test6-rmk5-np2-vanilla/include/asm-arm/arch-sa1100
> /mmzone.h 
> linux-2.4.0-test6-rmk5-np2/include/asm-arm/arch-sa1100/mmzone.h
> --- 
> linux-2.4.0-test6-rmk5-np2-vanilla/include/asm-arm/arch-sa1100
> /mmzone.h Thu Aug 24 12:52:38 2000
> +++ 
> linux-2.4.0-test6-rmk5-np2/include/asm-arm/arch-sa1100/mmzone.
> h Mon Aug 28 23:02:37 2000
> @@ -20,9 +20,9 @@
>  extern pg_data_t sa1100_node_data[];
>  
>  /*
> - * 32MB max in each bank, must fit with __virt_to_phys() & 
> __phys_to_virt()
> + * 64MB max in each bank, must fit with __virt_to_phys() & 
> __phys_to_virt()
>   */
> -#define NODE_MAX_MEM_SHIFT 25
> +#define NODE_MAX_MEM_SHIFT 26
>  #define NODE_MAX_MEM_SIZE  (1<<NODE_MAX_MEM_SHIFT)
>  
>  /*
> --------------------------------------------------------------------
> 
> > You need to move stuff at 0xd0000000 out of the way at least.
> 
> OK, so where is a good place? (Is the memory map on ARM linux 
> somewhere
> defined?)
> 
> 
> Erik
> 
> -- 
> J.A.K. (Erik) Mouw, Information and Communication Theory 
> Group, Department
> of Electrical Engineering, Faculty of Information Technology 
> and Systems,
> Delft University of Technology, PO BOX 5031,  2600 GA Delft, 
> The Netherlands
> Phone: +31-15-2783635  Fax: +31-15-2781843  Email: 
> [email-masked]
> WWW: http://www-ict.its.tudelft.nl/~erik/
> 
> 
> 
> 
>