i80321reg.h

Max N. Boyarov m.boyarov at bsd.by
Thu Jun 1 05:47:14 PDT 2006


>>>>> "OH" == Olivier Houchard writes:

 OH>  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 :)
 >> 

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

 It's work :))))

 http://ncd0.bsd.by/arm/freebsd-arm-ep80219.log


-- 
Best regards, Max N. Boyarov
BSD.by Team.
E-mail: m.boyarov at bsd.by
Minsk, Republic of Belarus
http://bsd.by


More information about the freebsd-arm mailing list