Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Sep 2011 09:08:42 +1000
From:      Mattia Rossi <mrossi@swin.edu.au>
To:        Naoyuki Tai <ntai@smartfruit.com>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: GlobalScale DreamPlug + FreeBSD 8.2 release
Message-ID:  <4E791CFA.7080703@swin.edu.au>
In-Reply-To: <op.v1324co3i1oka3@luxor.smartfruit.com>
References:  <4E782686.6070500@smartfruit.com> <20110920160544.b8d6d969.ray@dlink.ua> <op.v131qha6i1oka3@luxor.smartfruit.com> <20110920173523.4043c0be.ray@dlink.ua> <op.v1324co3i1oka3@luxor.smartfruit.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 21/09/11 00:42, Naoyuki Tai wrote:
> On Tue, 20 Sep 2011 10:35:23 -0400, Aleksandr Rybalko <ray@dlink.ua> wrote:
>
>> On Tue, 20 Sep 2011 10:12:07 -0400
>> "Naoyuki Tai" <ntai@smartfruit.com> wrote:
>>
>>>> On Tue, 20 Sep 2011 09:05:44 -0400, Aleksandr Rybalko <ray@dlink.ua>
>>>> wrote:
>>>>
>>>> > On Tue, 20 Sep 2011 01:37:10 -0400
>>>> > Naoyuki Tai <ntai@smartfruit.com> wrote:
>>>> >
>>>> >>> Hello,
>>>> >>>
>>>> >>> I'm new to the FreeBSD/arm, bought a DreamPlug from GlobalScale,
>>>> >>> hoping to turn it into a FreeBSD file server.
>>>> >>>
>>>> >>> I followed the "http://wiki.freebsd.org/FreeBSDMarvell", and
>>>> >>> created kernel.bin. After giving it a "go", it hangs.
>>>> >>>
>>>> >>> I must have built the kernel.bin wrong but I have no clue as to
>>>> >>> what I did wrong.
>>>> >>> Any clue/help is appreciated.
>>>> >>>
>>>> >>> Thanks!
>>>> >>>
>>>> >>> -- Tai
>>>> >>>
>>>> >>> U-Boot 2011.06-02334-g8f495d9-dirty (May 31 2011 - 02:06:26)
>>>> >>> Marvell-DreamPlug
>>>> >>>
>>>> >>> SoC: Kirkwood 88F6281_A0
>>>> >>> CPU running @ 1200Mhz L2 running @ 400Mhz
>>>> >>> SysClock = 400Mhz , TClock = 200Mhz
>>>> >>> DRAM: 512 MiB
>>>> >>> SF: Detected MX25L1606 with page size 256, total 1 MiB
>>>> >>> In: serial
>>>> >>> Out: serial
>>>> >>> Err: serial
>>>> >>> Net: egiga0, egiga1
>>>> >>> 88E1116 Initialized on egiga0
>>>> >>> 88E1116 Initialized on egiga1
>>>> >>> Hit any key to stop autoboot: 0
>>>> >>> Marvell>> setenv serverip 192.168.10.3
>>>> >>> Marvell>> setenv ipaddr 192.168.10.55
>>>> >>> Marvell>> tftpboot 6400000 arm/kernel.bin
>>>> >>> Using egiga0 device
>>>> >>> TFTP from server 192.168.10.3; our IP address is 192.168.10.55
>>>> >>> Filename 'arm/kernel.bin'.
>>>> >>> Load address: 0x6400000
>>>> >>> Loading:
>>>> >>> #################################################################
>>>> >>> #################################################################
>>>> >>> #################################################################
>>>> >>> ############################
>>>> >>> done
>>>> >>> Bytes transferred = 3272884 (31f0b4 hex)
>>>> >>> Marvell>> go 0x6400000
>>>> >>> ## Starting application at 0x06400000 ...
>>>> >>>
>>>> >
>>>> > Hi,
>>>> >
>>>> > Did you try address 0x900000 instead of 6400000?
>>>> >
>>>> > WBW
>>>>
>>>> I tried 90000 and it works.
>>>> Thanks.
>>>>
>>>> I don't understand the memory space allocation. 640000 is used
>>>> for the linux, and I imagined that's the base address for kernel.
>>>>
>>>> Where can I learn the reason why it's 90000?
>>
>> 0x00000000 is physical memory location, so if MMU turned off, memory
>> operations not translated (virtual <--> physical). Physical memory
>> location may vary between different ARM CPUs, IIRC.
>> But for Kirkwood - this is true.
>>
>> And also important which base we set in kernel while compiling,
>> because code may start to work on every location, but first jump will
>> call some black hole :)
>>
>>
>>>> Thanks!
>>>>
>>>> -- Tai
>
>
> Got it. It is mentioned in
>
> /usr/src/sys/arm/mv/kirkwood/std.kirkwood
>
> makeoptions KERNPHYSADDR=0x00900000
>
> Thanks.
>

Good to know, I have a dreamplug as well, but didn't have the time to 
tinker with it so far. As I see it, the dreamplug has 2 major problems 
which might make FreeBSD on it unusable for my purposes:

a) the SPI flash is only 1MB, which means 300K are used for uboot, and 
there are only 700K left for the kernel. I've not been able to get a 
FreeBSD kernel under 1MB, even without any non crucial options in it.

What's the workaroound for that?

b) NAND support. World needs to reside on the NAND flash. Does that 
already work?

I would love to be just a bit behind and to hear people come up and say: 
no it's all solved :-)

Mat



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