OpenWrt Forum Archive

Topic: ralink rt5350 Micro board

The content of this topic has been archived on 21 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

ayyar rt5350 board


Board: Ralink APSoC DRAM:  32 MB
relocate_code Pointer at: 81fb4000
******************************
Software System Reset Occurred
******************************
spi_wait_nsec: 42
spi device id: c2 20 17 c2 20 (2017c220)
find flash: MX25L6405D
raspi_read: from:30000 len:1000
.*** Warning - bad CRC, using default environment

============================================
Ralink UBoot Version: 4.1.0.0
--------------------------------------------
ASIC 5350_MP (Port5<->None)
DRAM_CONF_FROM: Boot-Strapping
DRAM_TYPE: SDRAM
DRAM_SIZE: 256 Mbits
DRAM_WIDTH: 16 bits
DRAM_TOTAL_WIDTH: 16 bits
TOTAL_MEMORY_SIZE: 32 MBytes
Flash component: SPI Flash
Date:Jan 10 2013  Time:23:42:54
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384

##### The CPU freq = 360 MHZ ####
estimate memory size =32 Mbytes

Please choose the operation:
   1: Load system code to SDRAM via TFTP.
   2: Load system code then write to Flash via TFTP.
   3: Boot system code via Flash (default).
   4: Entr boot command line interface.
   7: Load Boot Loader code then write to Flash via Serial.
   9: Load Boot Loader code then write to Flash via TFTP.
0
   
3: System Boot system code via Flash.
## Booting image at bc050000 ...
raspi_read: from:50000 len:40
.   Image Name:   MIPS OpenWrt Linux-3.7.9
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    916174 Bytes = 894.7 kB
   Load Address: 80000000
   Entry Point:  80000000
raspi_read: from:50040 len:dface
..............   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80000000) ...
## Giving linux memsize in MB, 32

Starting kernel ...

[    0.000000] Linux version 3.7.9 (abdennaby@aYYari) (gcc version 4.6.4 20121210 (prerelease) (Linaro GCC 4.6-2012.12) ) #2 Sat Fe3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU revision is: 0001964c (MIPS 24KEc)
[    0.000000] Ralink RT5350 id:1 rev:3 running at 360.00 MHz
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line:  board=AYYAR console=ttyS1,57600 mtdparts=spi0.0:192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)r2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] __ex_table already sorted, skipping sort
[    0.000000] Writing ErrCtl register=00004460
[    0.000000] Readback ErrCtl register=00004460
[    0.000000] Memory: 29632k/32768k available (1970k kernel code, 3136k reserved, 472k data, 180k init, 0k highmem)
[    0.000000] SLUB: Genslabs=9, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:48
[    0.000000] console [ttyS1] enabled, bootconsole disabled
[    0.000000] console [ttyS1] enabled, bootconsole disabled
[    0.010000] Calibrating delay loop... 239.61 BogoMIPS (lpj=1198080)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.080000] Mount-cache hash table entries: 512
[    0.090000] NET: Registered protocol family 16
[    0.100000] MIPS: machine is AYYAR
[    0.130000] bio: create slab <bio-0> at 0
[    0.140000] Switching to clocksource MIPS
[    0.150000] NET: Registered protocol family 2
[    0.160000] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
[    0.180000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.190000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.200000] TCP: reno registered
[    0.210000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.220000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.230000] NET: Registered protocol family 1
[    0.280000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.290000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.320000] msgmni has been set to 57
[    0.320000] io scheduler noop registered
[    0.330000] io scheduler deadline registered (default)
[    0.340000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.360000] serial8250: ttyS0 at MMIO 0x10000500 (irq = 13) is a 16550A
[    0.370000] serial8250: ttyS1 at MMIO 0x10000c00 (irq = 20) is a 16550A
[    0.390000] ramips-spi ramips-spi.0: master is unqueued, this is deprecated
[    0.410000] m25p80 spi0.0: mx25l6405d (8192 Kbytes)
[    0.420000] 6 cmdlinepart partitions found on MTD device spi0.0
[    0.430000] Creating 6 MTD partitions on "spi0.0":
[    0.440000] 0x000000000000-0x000000030000 : "u-boot"
[    0.450000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.460000] 0x000000040000-0x000000050000 : "factory"
[    0.480000] 0x000000050000-0x000000130000 : "kernel"
[    0.490000] 0x000000130000-0x000000800000 : "rootfs"
[    0.510000] mtd: partition "rootfs" set to be root filesystem
[    0.520000] mtd: partition "rootfs_data" created automatically, ofs=3E0000, len=420000
[    0.530000] 0x0000003e0000-0x000000800000 : "rootfs_data"
[    0.550000] 0x000000050000-0x000000800000 : "firmware"
[    0.570000] ramips-wdt ramips-wdt: timeout value must be 0 < timeout <= 35, using 35
[    0.590000] TCP: cubic registered
[    0.600000] NET: Registered protocol family 17
[    0.610000] 8021q: 802.1Q VLAN Support v1.8
[    0.630000] VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
[    0.650000] Freeing unused kernel memory: 180k freed
[    5.330000] input: gpio-keys-polled as /devices/platform/gpio-keys-polled/input/input0
[    5.710000] Button Hotplug driver version 0.4.1
- preinit -
Press the [f] key and hit [enter] to enter failsafe mode
- regular preinit -
[    9.430000] jffs2: notice: (358) jffs2_build_xattr_subsystem: complete building xattr subsystem, 20 of xdatum (1 unchecked, 19 o.
switching to jffs2
- init -

Please press Enter to activate this console. [   12.770000] Compat-drivers backport release: compat-drivers-2013-01-21-1
[   12.790000] Backport based on wireless-testing.git master-2013-02-22
[   12.800000] compat.git: wireless-testing.git
[   12.850000] cfg80211: Calling CRDA to update world regulatory domain
[   12.860000] cfg80211: World regulatory domain updated:
[   12.870000] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[   12.890000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[   12.900000] cfg80211:   (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[   12.920000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[   12.930000] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[   12.950000] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[   13.850000] usbcore: registered new interface driver usbfs
[   13.860000] usbcore: registered new interface driver hub
[   13.880000] usbcore: registered new device driver usb
[   14.610000] phy0 -> rt2x00lib_request_eeprom_file: Info - Loading EEPROM data from 'soc_wmac.eeprom'.
[   14.680000] phy0 -> rt2x00_set_chip: Info - Chipset detected - rt: 5350, rf: 5350, rev: 0500.
[   14.760000] PPP generic driver version 2.4.2
[   15.070000] ip_tables: (C) 2000-2006 Netfilter Core Team
[   15.370000] NET: Registered protocol family 24
[   15.400000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[   16.410000] ehci-platform ehci-platform: Generic Platform EHCI Controller
[   16.420000] ehci-platform ehci-platform: new USB bus registered, assigned bus number 1
[   16.470000] ehci-platform ehci-platform: irq 26, io mem 0x101c0000
[   16.500000] ehci-platform ehci-platform: USB 2.0 started, EHCI 1.00
[   16.510000] hub 1-0:1.0: USB hub found
[   16.520000] hub 1-0:1.0: 1 port detected
[   16.550000] nf_conntrack version 0.5.0 (465 buckets, 1860 max)
[   17.350000] dwc_otg: version 2.72a 24-JUN-2008
[   22.510000] device eth0.1 entered promiscuous mode
[   22.520000] device eth0 entered promiscuous mode
[   22.540000] br-lan: port 1(eth0.1) entered forwarding state
[   22.550000] br-lan: port 1(eth0.1) entered forwarding state
[   23.240000] ramips-wdt: timeout value 60 must be 0 < timeout <= 35, using 35
[   24.550000] br-lan: port 1(eth0.1) entered forwarding state
[   28.580000] device wlan0 entered promiscuous mode
[   28.670000] br-lan: port 2(wlan0) entered forwarding state
[   28.680000] br-lan: port 2(wlan0) entered forwarding state
[   30.680000] br-lan: port 2(wlan0) entered forwarding state



Hi all.
I have a problem with all GPIO and LED  in  ON mode. can anyone help me for resolving the problem?.

Hi,

It looks like an interesting little board... From what I can see in the logs, it has 4MB Flash/32MB SDRAM.

Can you give us more details: where did you purchase it, at what price? Do you have pinout, schematic, manuals, etc?

Regarding your problem, can you provide more information: what firmware do you run, which patches... What is the problem exactly: you can't drive GPIOs because they are all declared as LEDs?

That is an interesting board.  Hope there is a model available with 8MB flash. 

On the row of pin headers at the bottom to the right of the USB connection I can make out "I2C" and "SCLK" and "SD", but can't read many of the rest of the labels.  I think perhaps SPI is brought out.  Can you provide a higher resolution photograph of those labels.

I see from the log that console is assigned to ttyS1--is ttyS0 brought out anywhere?

Is there a datasheet available?

My fault: this baby has 8MB Flash, not 4MB as I stated above!

Please tell us where to get it!!!

thank you for interesting
Here is the schema of gpio.
Micro board

I'm doing the documentation

(Last edited by ayyari on 23 Feb 2013, 17:06)

if not configure the gpio in this manner,  all GPIO start in HIGH state. to start them in default LOW I need to change uboot?.

the micro board in a few weeks will be on sale.

static struct gpio ayyar_gpios[] = {
    { 1,    GPIOF_IN,        "GPIO 1" },
    { 2,    GPIOF_IN,        "GPIO 2" },
    { 7,    GPIOF_OUT_INIT_LOW,    "GPIO 7" },
    { 8,    GPIOF_OUT_INIT_LOW,    "GPIO 8" },
    { 9,    GPIOF_OUT_INIT_LOW,    "GPIO 9" },
    { 10,    GPIOF_OUT_INIT_LOW,    "GPIO 10" },
    { 11,    GPIOF_OUT_INIT_LOW,    "GPIO 11" },
    { 12,    GPIOF_OUT_INIT_LOW,    "GPIO 12" },
    { 13,    GPIOF_OUT_INIT_LOW,    "GPIO 13" },
    { 14,    GPIOF_OUT_INIT_LOW,    "GPIO 14" },
};

images of rear . flash/ram
ayyar back

Thanks for the response.  The pinout descriptions and latest photo seem to be of the "Ralink 802.11n AP Router Module Board AWM002".  Are you, or is your company, designing the board that the module plugs into?

This looks like a very nice board to act like a "little computer" (including wifi), and it should be useful for many tasks.

I'm not expert by any means, but I would not think that uboot would be setting the GPIOs high.  To test that, if you interrupt the boot by pressing "4", are the GPIOs high at that point?  It would make much more sense for them to be initially low, or floating.

(Last edited by lizby on 23 Feb 2013, 18:22)

I agree with you. in the uboot.  the gpio are set to HIGH.
is possible to patch it in LOW mode?

Initializing GPIOs with no specific purpose to OUTPUTs is stupid!

It is better to define them as TriState if possible, (so they are disconnected from incoming signals) or INPUTs if not possible, so that they don't provoke any disaster upon reboot: just imagine one of the GPIO declared as output is connected to a switch triggering the launch of a balistic missile wink

Then, in the hardware board design, you can still fix the default state for each GPIO if required by using pull-up or pull-down resistors.

lizby wrote:

Thanks for the response.  The pinout descriptions and latest photo seem to be of the "Ralink 802.11n AP Router Module Board AWM002".  Are you, or is your company, designing the board that the module plugs into?

Yeah, this is AsiaRF's AWM002 module!

lizby wrote:

This looks like a very nice board to act like a "little computer" (including wifi), and it should be useful for many tasks.

It could have been designed to be a little bit more compact by using dual-Ethernet jacks and magnetics or even integrated MagJacks.

Switch S1 is labeled "GETWAY/APCLIENT" instead of "GATEWAY/APCLIENT" smile

It could be made even more interesting by adding an AU6350MGL USB hub/SDCard combo chip to get a microSD card to mount as a FS and up to 3 USB host ports.

As usual, I would be surprised to see that the module or the main board are RoHS/CE/FCC compliant.

And of course, it all depends on the price... Getting both the module and the main board for < 30USD is the real challenge!

Squonk wrote:

Initializing GPIOs with no specific purpose to OUTPUTs is stupid!

the initialization of the GPIO have been set as PCM, I2S, I2C.

Squonk wrote:

Then, in the hardware board design, you can still fix the default state for each GPIO if required by using pull-up or pull-down resistors.

I'm no expert on the subject. but I hope it can be resolved through software

ayyari wrote:
Squonk wrote:

Initializing GPIOs with no specific purpose to OUTPUTs is stupid!

the initialization of the GPIO have been set as PCM, I2S, I2C.

No, you should let the user decide! Even if you can label the corresponding GPIO on the PCB for their recommended function, their application is up to the user, so let them as inputs, then provide a way to switch to the desired configuration: what if I want a full UART, i.e. no PCM/I2S on the multiplexed pins?

ayyari wrote:
Squonk wrote:

Then, in the hardware board design, you can still fix the default state for each GPIO if required by using pull-up or pull-down resistors.

I'm no expert on the subject. but I hope it can be resolved through software

Yes, but again, the user will put pull-up/pull-down resistors as required by the application, but the software should not force a GPIO to output in U-Boot or in the kernel: this should be up to the user, maybe using a web-based config tool.

this ralink microboard is very good.
i want to buy 1 to play around
anybody can tell me how to order this in USA?

More interesting if you share the SDK files big_smile

The discussion might have continued from here.