Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 31 May 2006 23:37:52 +0200
From:      Olivier Houchard <mlfbsd@ci0.org>
To:        "Max N. Boyarov" <m.boyarov@bsd.by>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: i80321reg.h
Message-ID:  <20060531213752.GA98637@ci0.org>
In-Reply-To: <7hd5du3xdu.fsf@bsd.by>
References:  <7hodxe4132.fsf@bsd.by> <20060531170631.GA96970@ci0.org> <7hk6823yzj.fsf@bsd.by> <20060531175025.GA97299@ci0.org> <7hd5du3xdu.fsf@bsd.by>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, May 31, 2006 at 08:41:17PM +0300, Max N. Boyarov wrote:
> 
> >>>>> "OH" == Olivier Houchard writes:
> 
>  OH>  On Wed, May 31, 2006 at 08:06:40PM +0300, Max N. Boyarov wrote:
>  >> 
>  >> >>>>> "OH" == Olivier Houchard writes:
>  >> 
>  >>  OH>  On Wed, May 31, 2006 at 07:21:21PM +0300, Max N. Boyarov wrote:
>  >>  >> 
>  >>  >> Hi!
>  >>  >> 
>  >>  >> What document should I read in order to understand
>  >>  >> how to calculate the defines that are used in i80321reg.h ?
>  >>  >> 
>  >> 
>  >>  OH> Hi Max,
>  >> Hi Olivier, 
>  >>  OH> I'm not sure I understand the question. However, those most of those values
>  >>  OH> come from the Intel 80321 I/O Processor developer's manual, available here :
>  >>  OH> http://www.intel.com/design/iio/manuals/273517.htm
>  >> 
>  >> Sorry for my english :). I meant, I do not know how freebsd works with virtual
>  >> memory, i.e. what address range is used for user applications, where kernel resides.
>  >> What would you recommend to read about that? Just for education purposes :) My concern 
>  >> is 80321 xcale port only (not generic).
>  >> 
> 
>  OH> No worries, my english isn't better :)
>  OH> Unfortunately I'm not sure there's something explaining this beside the code
>  OH> itself, so I'm gonna try to answer.
>  OH> Most of this is the same for every arm port, including the 80321.
>  OH> The interesting #define are mostly in sys/arm/include/vmparam.h
>  OH>  * The line between user space and kernel space
>  OH>  * Mappings >= KERNEL_BASE are constant across all processes
>  OH>  */
>  OH> #define KERNBASE                0xc0000000
> 
>  OH> So generally speaking, whatever is >= 0xc0000000 is kernelland, whatever is <
>  OH> is userland.
>  OH> In arm/xscale/iq31244_machdep.c (which should be usable for every i80321
>  OH> port, and thus has an unaccurate name), we map 0xfe800000 (IQ80321_OBIO_BASE),
>  OH> physical == virtual, to be able to use the UART early, 
>  OH> then we use the virtual address 0xfe400000 (IQ80321_IOW_VBASE) to map the ATU
>  OH> stuff and the CPU registers.
> 
>  OH> I'm still not sure I properly answer to your question:) Feel free to ask
>  OH>  for more.
> 
>  Many thanks, I shall continue to experiments with i80219 :)
> 

I'm very interested in i80219 support but have no hardware, please make me
know how it goes, I'd be more than happy to provide help.

Cheers,

Olivier



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060531213752.GA98637>