Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Mar 2009 13:47:26 +0100
From:      Sylvestre Gallon <ccna.syl@gmail.com>
To:        Arnar Mar Sig <antab@freebsd.org>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: Atmel at91sam9261-ek support.
Message-ID:  <164b4c9c0903240547k4d05cb09id6e5d919ffd1f9ff@mail.gmail.com>
In-Reply-To: <00675D70-A3F9-412F-BDB9-F9CF8C91D75A@freebsd.org>
References:  <164b4c9c0903231301p754eebb7k84ea2b22d7b60dc1@mail.gmail.com>  <8BC7AFF2-E0E1-4498-82E8-29C3F64C5E2E@FreeBSD.org> <164b4c9c0903240210v4d05770du1f02de26f42f6454@mail.gmail.com>  <00675D70-A3F9-412F-BDB9-F9CF8C91D75A@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Mar 24, 2009 at 1:16 PM, Arnar Mar Sig <antab@freebsd.org> wrote:
>
> On Mar 24, 2009, at 10:10 AM, Sylvestre Gallon wrote:
>
>
> Code is in p4:
> http://perforce.freebsd.org/depotTreeBrowser.cgi?FSPC=//depot/projects/avr32/src/sys/avr32/avr32&HIDEDEL=NO
>
> Note the driver dose not use KVA, instead it uses unmapped memory segment in
> avr32, but that only works for 5 of the 6 chips select so it will be needed
> later on.

Thanks I will take a look on it :)

>
>
> cpu_devs can be in hints, but i dont know about pmap_devmap. on avr32 all
> devices registers can be addressed without mmu lookups.
>

It is not a problem for the pmap_devmap because all at91 have the same
memory mapping :

|----------------------------------------| 0x0000 0000
|  Internal Memory Mapping  |
|----------------------------------------| 0x1000 0000
|             EBI 0                   |
|----------------------------------------| 0x2000 0000
|             EBI 1                   |
|----------------------------------------| 0x3000 0000
|             EBI ...                  |
|----------------------------------------| 0xX000 0000
|     Undifined (Abort)           |
|----------------------------------------| 0xF000 0000
|      Internal peripherals       |
|----------------------------------------| 0xFFFF FFFF

So we can have the same devmap for all at91 :

static const struct pmap_devmap at91_devmap[] = {
	/*
	 * Map the on-board devices VA == PA so that we can access them
	 * with the MMU on or off.
	 */
	{
		AT91_REGS_VA,
		AT91_REGS_PA,
		AT91_REGS_SIZE,
		VM_PROT_READ|VM_PROT_WRITE,
		PTE_NOCACHE,
	},
	{
		AT91_MEMS_VA,
		AT91_MEMS_PA,
		AT91_MEMS_SIZE,
		VM_PROT_READ|VM_PROT_WRITE,
		PTE_NOCACHE,
	},
	{
		0,
		0,
		0,
		0,
		0,
	}
};


-- 
Sylvestre Gallon (http://devsyl.blogspot.com)
Fifth Grade Student @ Epitech & Researcher @ LSE
R&D @ Rathaxes (http://www.rathaxes.org)



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