Re: Увеличение памяти на Zyxel Keenetik
Как теперь заставить его полноценно работать?, как вернуть ПО?
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Как теперь заставить его полноценно работать?, как вернуть ПО?
Не уверен, что ИСК ответит. Лучше в топике на ixbt спросить.
ИМХО нужно подключить консольный шнурок и смотреть загрузку, что происходит.
чем смотреть?
чем смотреть?
гипертерминалом, putty. Чем угодно. Установить параметры com такие - http://forum.ixbt.com/topic.cgi?id=14:54600-57#1831
Zyxmon, нет ли на OpenWrt какой-либо программы, чтобы вывести сведения о системе. Сверх задача - определить скорость, на которой работает память Кинетик-а.
dmidecode - есть в OpenWrt, но эта программа берет инфо из BIOS. Чтобы собрать заремарил в Makefile "DEPENDS:=@TARGET_x86", запустил:
/media/DISK_A1/system/root # dmidecode -t memory
# dmidecode 2.11
# No SMBIOS nor DMI entry point found, sorry.
Обидно.
Отредактировано vovic67 (2011-08-30 21:57:35)
Пробовал вот этот вариант http://zyxel.ru/kb/2146 неполучается пока к консоли присоединиться немогу, на днях попробую.
Семён, на всякий пожарный ссылка - в ней есть про использование консольного шнурка
http://habrahabr.ru/blogs/DIY/123699/
У кинетика есть "гребёнка" - паять, как для 620го не нужно.
эту гребенку я знаю она вся расписана ТХ, RX, это видно я боюсь смогу ли поднять его(вернуть к жизни, он признаки начал подавать но вдруг это огония, типа предсмертные судороги). Сам вряд ли смогу, я не силен в программировании я больше по паяльнику специализируюсь.
Семён, пока нужно посмотреть, что выводит при включении железка в консоль (если выводит).
Потом уже делать выводы - кто виноват софт или ...
Все ИМХО ес-но. Я как раз с паяльником не очень....
ну тогда я думаю не все потеряно, совмесно мы решим этот вопрос.
Ответ McMCC в ixbt
Ппроизводитель ставит Winbond W9825G6JH-6 для 64Мб, посмотрите даташит по этой ссылке http://www.winbond.com.tw/NR/rdonlyres/ … 25G6JH.pdf, подойдет любая на 166MHz/CL3... Загрузчик и ядро прошивки автоматически поймут 64Мб, другое дело, я не знаю перемычек на плате и нужны ли они вообще, и какие.
- Или "бъет" память.
- Или где-то нужно впаять нулевые резисторы (перемычки), первое, что приходит в голову - доходят ли 36 ножки модулей памяти до процессора.
--------------
Здесь http://avnetexpress.avnet.com/store/em/ … 4294943660 можно подбирать чипы памяти по параметрам, чтобы найти нужные нам аналоги.
Отредактировано vovic67 (2011-08-31 07:18:05)
Ответ McMCC в ixbt
Ппроизводитель ставит Winbond W9825G6JH-6 для 64Мб, посмотрите даташит по этой ссылке http://www.winbond.com.tw/NR/rdonlyres/ … 25G6JH.pdf, подойдет любая на 166MHz/CL3... Загрузчик и ядро прошивки автоматически поймут 64Мб, другое дело, я не знаю перемычек на плате и нужны ли они вообще, и какие.
- Или "бъет" память.
- Или где-то нужно впаять нулевые резисторы (перемычки), первое, что приходит в голову - доходят ли 36 ножки модулей памяти до процессора.
--------------
Здесь http://avnetexpress.avnet.com/store/em/ … 4294943660 можно подбирать чипы памяти по параметрам, чтобы найти нужные нам аналоги.
Но печатная плата разведена под 64 Мбайт задействован 12 адрес (36 нога ОЗУ) на обеих микросхемах. Это мной написано в самом начале. Обязательно память должна быть на 166мгц?
Сейчас попробовал подключиться к консоли ничего внятного не увидел 2 треугольника и собачка
Все что получил:
U-Boot 1.1.3 (Jun 25 2010 - 16:22:42)
Board: Ralink APSoC DRAM: 64 MB
relocate_code Pointer at: 83fb0000
flash_protect ON: from 0xBF000000 to 0xBF01CF83
flash_protect ON: from 0xBF030000 to 0xBF030FFF
============================================
Ralink UBoot Version: 3.3.1_ZyXEL
--------------------------------------------
ASIC 3052_MP2 (Port5<->None)
DRAM component: 256 Mbits SDR
DRAM bus: 32 bit
Total memory: 64 MBytes
Flash component: NOR Flash
Date:Jun 25 2010 Time:16:22:42
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384
##### The CPU freq = 384 MHZ ####
SDRAM bus set to 32 bit
SDRAM size = 64 Mbytes
Firmware test register status: 0x00000000
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.
9: Load Boot Loader code then write to Flash via TFTP.
0
3: System Boot system code via Flash.
## Booting image at bf050000 ...
Image Name: ZyXEL KEENETIC Series
Created: 2010-09-07 16:19:57 UTC
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 1124318 Bytes = 1.1 MB
Load Address: 80000000
Entry Point: 80000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80000000) ...
## Giving linux memsize in MB, 64
Starting kernel ...
LINUX started...
THIS IS ASIC
Linux version 2.6.23.17 (devolopers@zyxel.ru) (gcc version 4.1.2) #38 Tue Sep 7
20:19:50 MSD 2010
The CPU frequency set to 384 MHz
128M RAM Detected!
CPU revision is: 0001964c
Determined physical RAM map:
memory: 08000000 @ 00000000 (usable)
Built 1 zonelists in Zone order. Total pages: 32512
Kernel command line: console=ttyS1,57600n8 root=/dev/mtdblock4 rootfstype=squash
fs noinitrd
Primary instruction cache 32kB, physically tagged, 4-way, linesize 32 bytes.
Primary data cache 16kB, 4-way, linesize 32 bytes.
Synthesized TLB refill handler (20 instructions).
Synthesized TLB load handler fastpath (32 instructions).
Synthesized TLB store handler fastpath (32 instructions).
Synthesized TLB modify handler fastpath (31 instructions).
Cache parity protection disabled
cause = 10800028, status = 1100ff00
PID hash table entries: 512 (order: 9, 2048 bytes)
calculating r4koff... 0005dc00(384000)
CPU frequency 384.00 MHz
Using 192.000 MHz high precision timer.
console [ttyS1] enabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 126208k/131072k available (2921k kernel code, 4744k reserved, 430k data,
132k init, 0k highmem)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
Generic PHY: Registered new driver
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Time: MIPS clocksource has been installed.
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
fuse init (API version 7.8)
squashfs: version 3.0 (2006/03/15) Phillip Lougher
io scheduler noop registered
io scheduler deadline registered (default)
FLASH_API: MAN_ID=C2 DEV_ID=22CB SIZE=8MB
Ralink gpio driver initialized
HDLC line discipline: version $Revision: 4.8 $, maxframe=4096
N_HDLC line discipline registered.
Serial: 8250/16550 driver $Revision: 1.3 $ 2 ports, IRQ sharing disabled
serial8250: ttyS0 at I/O 0xb0000500 (irq = 37) is a 16550A
serial8250: ttyS1 at I/O 0xb0000c00 (irq = 12) is a 16550A
loop: module loaded
GDMA1_MAC_ADRH -- : 0x00000000
GDMA1_MAC_ADRL -- : 0x00000000
Ralink APSoC Ethernet Driver Initilization. v1.60 256 rx/tx descriptors allocat
ed, mtu = 1500!
NAPI enable, weight = 0, Tx Ring = 256, Rx Ring = 256
GDMA1_MAC_ADRH -- : 0x0000cc5d
GDMA1_MAC_ADRL -- : 0x4e4abd8d
PROC INIT OK!
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
MPPE/MPPC encryption/compression module registered
NET: Registered protocol family 24
PPPoL2TP kernel driver, V0.18.Zyxel
PPTP driver version 0.8.3.35
ralink flash device: 0x1000000 at 0xbf000000
Ralink SoC physically mapped flash: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
Creating 7 MTD partitions on "Ralink SoC physically mapped flash":
0x00000000-0x00030000 : "U-Boot"
0x00030000-0x00040000 : "U-Config "
0x00040000-0x00050000 : "RF-EEPROM"
0x00050000-0x00180000 : "Kernel"
0x00180000-0x005f0000 : "RootFS"
0x005f0000-0x00600000 : "Config"
0x00600000-0x00800000 : "Storage"
usbcore: registered new interface driver cdc_acm
drivers/usb/class/cdc-acm.c: v0.25:USB Abstract Control Model driver for USB mod
ems and ISDN adapters
usbcore: registered new interface driver usblp
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
drivers/usb/serial/usb-serial.c: USB Serial Driver core
drivers/usb/serial/usb-serial.c: USB Serial support registered for airprime
usbcore: registered new interface driver airprime
drivers/usb/serial/usb-serial.c: USB Serial support registered for FTDI USB Seri
al Device
usbcore: registered new interface driver ftdi_sio
drivers/usb/serial/ftdi_sio.c: v1.4.3:USB FTDI Serial Converters Driver
drivers/usb/serial/usb-serial.c: USB Serial support registered for GSM modem (1-
port)
usbcore: registered new interface driver option
drivers/usb/serial/option.c: USB Driver for GSM modems: v0.7.1
drivers/usb/serial/usb-serial.c: USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver
u32 classifier
Actions configured
Netfilter messages via NETLINK v0.30.
nf_conntrack version 0.5.0 (2048 buckets, 8192 max)
ctnetlink v0.93: registering with nfnetlink.
ip_tables: (C) 2000-2006 Netfilter Core Team
Type NAT: Restricted Cone
ClusterIP Version 0.8 loaded successfully
TCP bic registered
TCP cubic registered
TCP westwood registered
TCP highspeed registered
TCP hybla registered
TCP htcp registered
TCP vegas registered
TCP scalable registered
NET: Registered protocol family 1
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
decode /dev/mtdblock4
VFS: Mounted root (squashfs filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 132k freed
init started: BusyBox v1.8.2 (2010-07-22 18:30:20 MSD)
starting pid 640, tty '': '/etc/rc.sysinit'
Please press Enter to activate this console. CPU 0 Unable to handle kernel pagin
g request at virtual address 60006000, epc == 800725e4, ra == 80072744
Oops[#1]:
Cpu 0
$ 0 : 00000000 1100fc00 60006000 60006000
$ 4 : 81000000 8111fe40 87c06088 87c06000
$ 8 : 8039e880 8111b998 00000000 8113d8c0
$12 : 8113d980 00000000 0361d600 8113da40
$16 : 8039d410 00000000 8111fe40 00000000
$20 : 00024000 80370000 00200200 00100100
$24 : 00000000 2aaef0c0
$28 : 8112a000 8112bec0 00000008 80072744
Hi : 00000063
Lo : 3333334c
epc : 800725e4 Not tainted
ra : 80072744 Status: 1100fc02 KERNEL EXL
Cause : 0080000c
BadVA : 60006000
PrId : 0001964c
Modules linked in:
Process events/0 (pid: 4, threadinfo=8112a000, task=81120cb0)
Stack : 81120d00 8036ebb0 8001f48c 8001f428 8039d410 8039d400 00000008 80330000
80330000 80375ad0 80330000 00000000 00000000 80072744 81120d00 8036ebb0
8036eb58 81120cb0 8039e880 8111fe40 80370000 80073de8 80375ad0 80375ae0
81120df4 8032bb14 00000000 802d6bf8 8111ea80 80370000 efffffff 00000000
00000000 00000000 00000000 800398e8 8112bf80 00000000 00000000 00000000
...
Call Trace:[<8001f48c>][<8001f428>][<80072744>][<80073de8>][<802d6bf8>][<800398e
8>][<8003a844>][<8003f0b8>][<8003f5fc>][<8003a7c0>][<8003f0d4>][<80003ba4>][<800
03b94>]
Code: 8ce30004 8ce20000 8ca8004c <ac620000> ac430004 acf70000 acf60004 8ce2
000c 8e440014
что дальше делать?
По логу глядя, получилось увеличить память теперь осталось вернуть функциональность устройству.
скорее всего память работает, но не полноценно.
возможно лишь один чип (если запаянны два)
хотя может и шина быть 133, хоть и родные микросхемы на 166
вообще можно осцилом глянуть. если есть такая возможность
Семён, подправил Ваш пост - добавил тег [ code].
Как видим загрузчик поддерживает 64 метра.
ИМХО Или память сбоит, или ядро 64 метра не поддерживает.
Сейчас спрошу на ixbt у McMCC.
Только меня одного смущает вторая строка в этой записи:
The CPU frequency set to 384 MHz
128M RAM Detected!
д.б. 512, или я неправ.
Отредактировано vovic67 (2011-08-31 11:38:42)
д.б. 512, или я неправ.
Вроде должно быть 64.
Как мне написал sfstudio, автор wive-ng прошивок для ralink rt305x:
явно неверно рама отдетектилась ядром
Он предлагает это проверить и залить wive-ng-rtnl-2T2R-USB.
Ошибка в memory.c
Перед глазами исходников сейчас нет. Приведу то, что написал sfstudio.
1.
#if defined (CONFIG_RALINK_RT2880) || \
defined (CONFIG_RALINK_RT3352) || \
defined (CONFIG_RALINK_RT3052) || \
defined (CONFIG_RALINK_RT5350)
#define MAX_SDRAM_SIZE (64*1024*1024)
#define TEST_OFFSET 63
#elif defined (CONFIG_RALINK_RT2883) || \
defined (CONFIG_RALINK_RT3883)
#define MAX_SDRAM_SIZE (128*1024*1024)
#define TEST_OFFSET 127
#else
#define MAX_SDRAM_SIZE (64*1024*1024)
#define TEST_OFFSET 63
#endif
2.
before = ((unsigned long) &prom_init) & (TEST_OFFSET << 20);
offset = ((unsigned long) &prom_init) - before;
for (mem = before + (1 << 20); mem < (reg_mem << 20); mem += (1 << 20))
if (*(unsigned long *)(offset + mem) == *(unsigned long *)(prom_init))
{
mem -= before;
break;
}
3.
//This correct detect ram for some china routers..
if(memsize > MAX_SDRAM_SIZE){
memsize = MAX_SDRAM_SIZE;
}
if(memsize < MIN_SDRAM_SIZE){
memsize = MIN_SDRAM_SIZE;
}
Эт не совсем ошибка на самом деле.
Просто ограничиваем диапазон в котором производиться автодетект и смещение, плюс проверяем результаты детекта по изветным для чипа параметрам. Т.е. перестраховываемся. С чем связано такое поведение на некоторых железках выяснить не удалось, т.к. лично у меня не проявлялось.....
У себя на тенду ставил 133МГц модули самсунговские проблем не было. Правда 2*64 вместо 2*32, просто не было под рукой. Ессно отдетектилось 64 и заработало без вопросов
Добрый день, ув. сообщество
Решил присоединится к замечательному форму.
Мне кажется ошибка о которой сказал vovic67 - явно неправильный детект памяти, т.е. баг в прошивке который без McMCC не исправить. Тот код который привел Zyxmon, указывает на возможный фикс, хотя как он и написал это не фикс, а защитная заглушка для известных чипов. Кстати сам текст автодетекта странный, каким образом этот цикл может определить объем памяти, почему он не запрашивается у системы, если например сам загрузчик UBoot это делает отлично?
как он и написал это не фикс, а защитная заглушка для известных чипов.
В jabber мне по этому поводу sfstudio написал:
Да да, а в чём тайный смысл пытаться детектить больше чем чип умеет?
))
Семён, может быть попробую в выходные поискать автодетект памяти в исходниках прошивки Zyxel и собрать. Прошивка будет тогда старенькая. Остальное могут исправить только разработчики Zyxel.
Это в случае, если проблема с автодетектом памяти в ядре.
Семён, напишите какая прошивка была до перепайки. McMCC рекомендует ее обновить - http://forum.ixbt.com/topic.cgi?id=14:54600-58#1845
Ниже строк которые я приводил есть:
Memory: 126208k/131072k available (2921k kernel code, 4744k reserved, 430k data, 132k init, 0k highmem)
Ничего непонятно, подождем ответа McMCC, пойду в салон "МТС" рядом с домом, вдруг там есть шнурок с переходной микросхемой, тогда посмотрю лог загрузки у себя.
Упс, есть ответ, подожду.
Отредактировано vovic67 (2011-08-31 12:46:20)
На основе PunBB, при поддержке Informer Technologies, Inc.