Want to learn the tomato source

Hi all,

I am very interested about the tomato firmware and like to understand  the source base. Can anybody please help me out regarding this?

I have already checked the blogs in this site. Thanks to Tathagata Das, I will download the source and try to compile it as mentioned in the blogs. I hope compilation will be through. Please let me know about the source code organization and from where to start.

Thanks in advance.

 

Discussion:

Tathagata Das on April 18, 2008 4:43 AM

Glad to know that you want to understand tomato source code base. However it will be very difficult to describe it in a thread. I will try to make a blog quickly on that. In the mean time if you have any specific query then please tell.

sarmi on April 24, 2008 5:22 AM

I am searching for the code of wireless and ethernet in drivers/net. But there is no code. where should I look for that?

Tathagata Das on April 24, 2008 10:56 PM

In general you can find network driver code under linux/driver/net path. However here Ethernet and wireless driver code are not put into that directories. You will find the source code of Ethernet driver in src/et/sys directory. Unfortunately there is no source code for wireless driver of WGR614L. You can only find the object code in src/wl/linux directory.

mona on April 25, 2008 1:28 AM

I have also downloaded the code... With this code every time I need to flash the image. Is there any other option which can reduce the debugging time?

SouvikGhosh on April 30, 2008 4:32 AM

you can run a image from RAM also.... for that you need to set one nvram variables.
1. Get into the CFE prompt. Execute the following commands -
'nvram set boot_wait=on'
'nvram commit'
2. reboot the router. Now the router will search for vmlinuz from 192.168.1.2.
3. So connect a host in the router's LAN side and set it's IP to 192.168.1.2
3. Run tftp server in this machine and place your vmlinuz in the /tftpboot folder.

Now the router will boot from vmlinuz file placed in 192.168.1.2

mona on May 2, 2008 12:56 AM

Thank you. This procedure is really helpful.

sarmi on May 2, 2008 3:51 AM

Could you please tell me what is nvram? Is it necessary to assign the host ip address 192.168.1.2? I have tried with other ip address. But its not working. It is only working when host ip address is set to 192.168.1.2.

kaustab on May 2, 2008 4:42 AM

Hi
I want to know about the steps we need to perform to boot the wgr614l board from flash. Will you tell me?

SouvikGhosh on May 6, 2008 4:49 AM

Non-volatile random access memory (NVRAM) is the general name used to describe any type of random access memory which does not lose its information when power is turned off.
To boot the image from flash you must set the host ip to 192.168.1.2. Because when the boot_wait os set to on, by default CFE searchs for vmlinuz from 192.168.1.2 and if it does not find anything then boots the flash image. So you need to assign this ip to the board if wish to boot from RAM.