miguelon | 1 Sep 11:50 2006
Picon

problem with flash_am29xxxxx.inl

Hi,
I'm working on a TaskIt Portux920T which mount an AMD/Spansion 
S29GL128M Flash memory. I've already obtained the right patch for this 
device (thanks Sato) but it still doesn't work. Therefore I had a look 
at the driver code and I discovered that the device id is not 
recognized because the driver reads from a wrong address.  Actually the 
problem is when the driver calls the FLASH_P2V macro:

f_s1 = FLASH_P2V(ROM+FLASH_Setup_Addr1);

First thing, when I see FLASH_P2V I think about something which change 
the physical address to a virtual address but actually the macro just 
does a double casting. Am I right or I miss something?
Second thing, in my case ROM is a pointer to 0x60000000 (the virtual 
address of the FLASH) and FLASH_Setup_Addr1 is  555 but if I print f_s1 
I obtain 0x60001554. The last bits are shifted by 2 but I need only a 
shift by one because in my case the A0 of the micro is connected to the 
A1 of the flash. I don't have clear how this shift is performed, maybe 
I'm missing something in the FLASH_P2V macro. Can someone help me?
Thanks

Michele

Naviga e telefona senza limiti con Tiscali     
Scopri le promozioni Tiscali adsl: navighi e telefoni senza canone Telecom

http://abbonati.tiscali.it/adsl/

--

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
(Continue reading)

Gary Thomas | 1 Sep 13:03 2006

Re: problem with flash_am29xxxxx.inl

miguelon <at> tiscali.it wrote:
> Hi,
> I'm working on a TaskIt Portux920T which mount an AMD/Spansion 
> S29GL128M Flash memory. I've already obtained the right patch for this 
> device (thanks Sato) but it still doesn't work. Therefore I had a look 
> at the driver code and I discovered that the device id is not 
> recognized because the driver reads from a wrong address.  Actually the 
> problem is when the driver calls the FLASH_P2V macro:
> 
> f_s1 = FLASH_P2V(ROM+FLASH_Setup_Addr1);
> 
> First thing, when I see FLASH_P2V I think about something which change 
> the physical address to a virtual address but actually the macro just 
> does a double casting. Am I right or I miss something?
> Second thing, in my case ROM is a pointer to 0x60000000 (the virtual 
> address of the FLASH) and FLASH_Setup_Addr1 is  555 but if I print f_s1 
> I obtain 0x60001554. The last bits are shifted by 2 but I need only a 
> shift by one because in my case the A0 of the micro is connected to the 
> A1 of the flash. I don't have clear how this shift is performed, maybe 
> I'm missing something in the FLASH_P2V macro. Can someone help me?
> Thanks

The layout of the device is described by some #define statements in your
xxx_flash.c file.  Look at this and how those definitions affect how
addresses within the FLASH are computed.

BTW, your device is connected in a non-standard fashion, so you may
have to modify how the macros work to get it to function properly.

--

-- 
(Continue reading)

Amitesh Singh | 4 Sep 08:07 2006
Picon

Can I change 'RedBoot Config' using MTD driver. ?

Hi all
  My Task is to set "Boot script" (RedBoot config) value via a linux
command.

As on RedBoot prompt,we set configurations using 'fconfig',is there any
Linux tool which does the same ?

 i tried to do it in my way.

# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00040000 00020000 "RedBoot"
mtd1: 00f80000 00020000 "unallocated"
mtd2: 00001000 00020000 "RedBoot config"
mtd3: 00020000 00020000 "FIS directory"

First i copied 'mtd2' using 'dd' and then changed the binary using 'hexedit'
(just changed Boot script).
Before booting,I unlocked RedBoot partitions.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
RedBoot> fis list
Name              FLASH addr  Mem addr    Length      Entry point
RedBoot           0x50000000  0x50000000  0x00040000  0x00000000
RedBoot config    0x50FC0000  0x50FC0000  0x00001000  0x00000000
FIS directory     0x50FE0000  0x50FE0000  0x00020000  0x00000000
RedBoot> fis unlock RedBoot
... Unlock from 0x50000000-0x50040000: ..
RedBoot> fis unlock "RedBoot config"
... Unlock from 0x50fc0000-0x50fc1000: .
RedBoot> fis unlock "FIS directory"
(Continue reading)

Dmitry Varakin | 4 Sep 09:05 2006
Picon

Some simple questitions

Hello!

I have questitions about eCos:
1. Is it possible to change MAC and IP addresses "on the fly". For
example, function like "set_mac_addr (eth0, my_mac)".
2. Can I have direct access to processor's registers from my user
application? Linux has "mmap()" function for that purpose.
3. Is it possible to unload RedBoot from RAM when my user application
is starting (to increase amount of free RAM)?
4. Where can I download the toolchain to compile eCos with cygwin?

Thanks for all answers!

--
Dmitry.

--

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

bob.koninckx | 4 Sep 09:22 2006

Re: Some simple questitions


>-----Original Message-----
>From: Dmitry Varakin [mailto:dvarakin <at> gmail.com]
>Sent: Monday, September 4, 2006 03:05 AM
>To: ecos-discuss <at> ecos.sourceware.org
>Subject: [ECOS] Some simple questitions
>
>Hello!
>
>I have questitions about eCos:
>1. Is it possible to change MAC and IP addresses "on the fly". For
>example, function like "set_mac_addr (eth0, my_mac)".

Don't think so. I am not 100% sure though

>2. Can I have direct access to processor's registers from my user
>application? Linux has "mmap()" function for that purpose.

eCos does not make the distinction between user and kernel space. Since everything runs in the same address
space, you can do something like

volatile cyg_uint32 * some_register = 0x12345678;

Or use the HAL_WRITE and HAL_READ macros.

>3. Is it possible to unload RedBoot from RAM when my user application
>is starting (to increase amount of free RAM)?

Why should redboot reside in RAM? Better let redboot live in ROM and load your application in RAM. If you app
will never return to redboot, you can use the very little amount of RAM used by redboot in your app. You'll
(Continue reading)

Andrew Lunn | 4 Sep 10:17 2006
Picon

Re: Some simple questitions

On Mon, Sep 04, 2006 at 07:22:46AM +0000, bob.koninckx <at> o-3s.com wrote:
> >2. Can I have direct access to processor's registers from my user
> >application? Linux has "mmap()" function for that purpose.
> 
> eCos does not make the distinction between user and kernel space. Since everything runs in the same
address space, you can do something like
> 
> volatile cyg_uint32 * some_register = 0x12345678;
> 
> Or use the HAL_WRITE and HAL_READ macros.

Using the HAL macros is the correcet way to do it. It ensures all the
volatiles are in the right place and any compiler reordering barriers
which are needed do get inserted.

      Andrew

--

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

Claudio Scordino | 4 Sep 12:34 2006
Picon

Re: Re: unable to execute linux kernel with Redboot

On Monday 04 September 2006 12:20, Claudio Scordino wrote:
> >>>>> Jan van de Wijdeven writes:
> >
> > Hi,
> > I'm unable to run a linux kernel from the Redboot bootloader. I'm
> > using a XScale board through a serial port.
> >
> > First I load the zImage into memory with the "load" command. Then I
> > give the "exec" command. This doesn't do anything and I have to reset
> > the board. I've been trying to find a solution and some people speak
> > of an entry point for the linux kernel. My redboot manual states this
> > to be 0xc0008000 for the SA1100, but since this processor is similar
> > to the XScale I tried that one.
> > Here's the command I give:
>
> 0xc0008000 is the kernel entry point, not the zImage entry port. And its
> wrong for XScale.
>
> RedBoot> exec 0xc0008000 -c "console=ttyS0,115200n8"
>
> > Using base address 0x00017c00 and length 0x000b1660
> >
> > Then nothing happens.
>
> No surprise.
>
> > Can anyone tell me what I'm doing wrong? The redboot manual doesn't
> > give me any more information.
>
> You need to find out where the zImage wants to be. This depends on the
(Continue reading)

Amitesh Singh | 4 Sep 13:14 2006
Picon

Re: unable to execute linux kernel with Redboot

Hi
 I am assuming that ur RootFS lives in RAM.
RedBoot>load -r -v -b 0x01600000
RedBot> load -r -v -b 0x00800000 ramdisk.gz
RedBoot> exec -b 0x01600000 -l 0x10000 -c "console=ttyS0,115200
root=/dev/ram0 initrd=0x00800000,8M mem=32M <at> 0x00000000"

Note: 8M is ur RamDisk size and 32M is ur SD RAM size.

Let me know if it works.

Best Regards
Amitesh Singh
http://www.amitesh.info

On 9/4/06, Claudio Scordino <cloud.of.andor <at> gmail.com> wrote:
> On Monday 04 September 2006 12:20, Claudio Scordino wrote:
> > >>>>> Jan van de Wijdeven writes:
> > >
> > > Hi,
> > > I'm unable to run a linux kernel from the Redboot bootloader. I'm
> > > using a XScale board through a serial port.
> > >
> > > First I load the zImage into memory with the "load" command. Then I
> > > give the "exec" command. This doesn't do anything and I have to reset
> > > the board. I've been trying to find a solution and some people speak
> > > of an entry point for the linux kernel. My redboot manual states this
> > > to be 0xc0008000 for the SA1100, but since this processor is similar
> > > to the XScale I tried that one.
> > > Here's the command I give:
(Continue reading)

Jürgen Lambrecht | 4 Sep 13:36 2006
Picon

Re: Some simple questitions

Dmitry Varakin wrote:
> Hello!
> 
> I have questitions about eCos:
> 1. Is it possible to change MAC and IP addresses "on the fly". For
> example, function like "set_mac_addr (eth0, my_mac)".
yes, I do it.
Please search through the mailing list. It was not that easy to find, but 
I did find it: see attach ims_eth.c; and in the comments you can find a 
link to the original contribution from Sébastien Couret

> 2. Can I have direct access to processor's registers from my user
> application? Linux has "mmap()" function for that purpose.
> 3. Is it possible to unload RedBoot from RAM when my user application
> is starting (to increase amount of free RAM)?
yes, I do.
As Bob K also says, I use romram mode because my resources are indeed that 
scarce.
for safety, I always start up with redboot, and then jump to the 
application that is compiled in romram mode; I only needed to do some 
changes in hal_platform_setup not to initialize the hardware again (define 
out that assembly code for that specific startup)

> 4. Where can I download the toolchain to compile eCos with cygwin?
> 
> Thanks for all answers!
> 
> -- 
> Dmitry.
> 
(Continue reading)

Alex Schuilenburg | 4 Sep 13:59 2006

[Fwd: sntp problem]

Forwarded to ecos-discuss

-------- Original Message --------
Subject: 	sntp problem
Date: 	Mon, 4 Sep 2006 19:53:35 +0800
From: 	毛勇强 <5329 <at> tenda.com.cn>
Reply-To: 	5329 <at> tenda.com.cn
Organisation: 	TENDA
To: 	Alex Schuilenburg <alexs <at> ecoscentric.com>
References: 	<200608221734071407106 <at> tenda.com.cn>
<44EAD73D.60607 <at> ecoscentric.com>

dear,
I want to use sntp in ecos,but i meet some troubles.
1 serv = getservbyname("sntp","udp");
CYG_ASSERT(serv,"getservbyname(sntp,udp)");
serv is null?
2 time(null)return 0?
3 where should i set the sntp_servers and ntp_num_servers.
------------------------------------------------------------------------
毛勇强
2006-09-04

--

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Gmane