Arcadyan ARV752DPW
The ARV752DPW is a combined ADSL/VOIP/SIP/UMTS/3G-enabled WLAN router and home PBX device, primarily sold as “Easybox 802” by Vodafone Germany. It was also sold in the past by German fixed-line phone company Arcor, prior to the aquisition of Arcor by Vodafone.
In the so called “open” or user-defined configuration mode whith the firmware by Vodafone, the device can suit as a standalone UMTS/3G network router in combination with a compatible UMTS/3G USB modem, with any 3G network, the APN can be configured without any restrictions.
Major Release 23 is bricking the device do not upgrade GitHub Issue
Supported Versions
Major Release 23 is bricking the device do not upgrade GitHub Issue
Hardware Highlights
Installation
Requirements
- Linux e.g. Windows with Ubuntu VM or as a LiveCD boot
- USB - TTL Adapter (General explanation)
Steps
- Open up device and connect serial cable for serial console → Open up and connect cable (General explanation)
- Back up original firmware for bad times → Backup
-
- Boot U-Boot from RAM → Temporary U-Boot
- Flash U-Boot to flash memory → Permanent U-Boot
- Set up OpenWrt → OpenWrt (General explanation)
- Boot OpenWrt from RAM for testing functionality → Temporary OpenWrt
- Flash OpenWrt to flash memory → Permanent OpenWrt
The device was not thoroughly tested with OpenWrt. Do not follow this information here if you do not have a backup device, as you could end up with a bricked device. You have been warned.
Open up and connect cable
General explanation:
- Connect the USB to TTL serial adapter to the serial header
- The serial header is located in the middle of the PCB
- 3 cables need to be connected, GND, TX and RX (do not connect any 3.3V or 5V)
- Pin 1 is marked with a small arrow near the serial header
- Serial connection speed is 115200 Baud 8N1
- Pin out
6 7 8 9 10 [ ][ ][ ][ ][ ] [ ]Rx Tx [ ]Gnd 1 2 3 4 5
Board Info structure
ARV752DPW22 # bdinfo boot_params = 0x83EA9F68 memstart = 0x80000000 memsize = 0x04000000 flashstart = 0xB0000000 flashsize = 0x00800000 flashoffset = 0x00000000 ethaddr = 00:01:02:03:04:05 ip_addr = 192.168.1.1 baudrate = 115200 bps ARV752DPW22 #
Layout of the original Flash Image
If you select [E] Erase Flash
in the original bootloader (brnboot) you can see the original flash layout
[DANUBE Boot]:E ERASE Flash --------------------------------------- Area Address Length --------------------------------------- [0] Boot 0xB0000000 128K [1] Configuration 0xB0020000 256K [2] None 0xB0060000 64K [3] Special Area 0xB0070000 64K [4] Primary Setting 0xB0080000 64K [5] Code Image 0 0xB0090000 3776K [6] Code Image 1 0xB0440000 3776K [7] Boot Params 0xB07F0000 64K [8] Flash Image 0xB0000000 8192K --------------------------------------- Enter area to ERASE: **ESC pressed**
Backup
Please backup your original firmware!
Tools
I will use brntool to explain the backup here.
As an alternative you could use brndumper to save the original firmware (If you prefer a graphical interface, brndumper is probably better for you).
brntool
- According to the readme of brntool
- A successful flash block read will output the address and size of the block while a botched one (a byte or more gets lost in the serial port) will output '!' and retry. Even so, unless in a hurry, I'd recommend to at least dump twice and compare the dumps, just to be on the safe side.
- A memory dump of the original firmware is done in about one hour
- You should dump the original firmware at least twice (as recommended by the author of brntool), so the whole backup process takes about two hours.
- Download the small python script https://raw.githubusercontent.com/rvalles/brntool/master/brntool.py
- Install the python package pyserial https://pyserial.readthedocs.io/en/latest/pyserial.html#installation
- Enter the “Administrator Mode” of the DANUBE bootloader (OEM bootloader) of your device
- Connect to the serial header (Open up and connect cable)
- Open a terminal and type
screen /dev/ttyUSB0 115200
- Power on the device and quickly press the space bar 3 times
- Enter the “Administration Mode” in the DANUBE bootloader by typing an exclamation mark
!
- You should see something like this
Press Space Bar 3 times to enter command mode ...123 Yes, Enter command mode ... [DANUBE Boot]:! Enter Administrator Mode ! ====================== [#] Set Serial Number [2] Use Normal Firmware [3] Use ART-Testing Firmware [9] Taggle ART Firmware Enable/Disable [A] Set MAC Address [E] Erase Flash [G] Run Runtime Code [H] Set Options [M] Upload to Memory [P] Print Boot Params [R] Read from Memory [T] Memory Test [U] Upload to Flash [V] Set Board Version [W] Write to Memory [Y] Go to Memory [Z] Dump DDR Ram Register [0] Primary = Image 0 [1] Primary = Image 1 ====================== [DANUBE Boot]:
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- With the serial connection closed, you can now dump the original firmware
- Dump the orginal firmware by typing
python3 brntool.py --read=ARV752DPW_1.dump --addr=0xB0000000 --verbose --size=0x800000
0xB0000000 is the starting address of flash memory
- Now you should have a file called “ARV752DPW_1.dump”
- Restart the device and enter the “Administrator Mode” again, so you can dump the original firmware the second time
- Dump the orginal firmware a second time by typing
python3 brntool.py --read=ARV752DPW_2.dump --addr=0xB0000000 --verbose --size=0x800000
- Now you should have a file called “ARV752DPW_2.dump”
- List both files by typing
ls -l ARV752DPW_*.dump
You should see two files listed, if this is not the case please rerun the backup process
**Example output:** -rw-r--r--. 1 root root 8388608 12. Feb 23:32 ARV752DPW_1.dump -rw-r--r--. 1 root root 8388608 13. Feb 00:58 ARV752DPW_2.dump
- Check if the files have any difference by typing
diff ARV752DPW_1.dump ARV752DPW_2.dump
You should see no output, if this is not the case please rerun the backup process
- Compare both files by typing
cmp ARV752DPW_1.dump ARV752DPW_2.dump
You should see no output, if this is not the case please rerun the backup process
- Finally we generate the md5 hash of both files. Type:
md5sum ARV752DPW_*
You should see the hashes of both files, please compare them. If they are not the same, please perform the backup process again
**Example output:** b245fc54da24db7a81bb915e968453f8 ARV752DPW_1.dump b245fc54da24db7a81bb915e968453f8 ARV752DPW_2.dump
- If everything is ok you will end with two identical files
- You now have a full backup of the original firmware
Restore backup
You need a working U-Boot bootloader running in RAM
- Make sure your U-Boot bootloader is working
- Get the size of the baackup by typing in your linux terminal
printf "%x\n" `stat -c "%s" "<backup file>"`
- Uploading backup to RAM
- Quick way: xmodem
- Calculate crc32 checksum of the backup by typing
crc32 <backup file>
Maybe requires additional package e.g. for Ubuntu install package
libarchive-zip-perl
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- Start the xmodem upload mode of your device by typing
loadx
- Close the serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Upload the backup from your local computer to the RAM of the device by typing
sx <backup file> </dev/ttyUSB0 >/dev/ttyUSB0
Maybe requires additional package e.g. for Ubuntu install package
lrzsz
- After the transfer is complete, open a serial console again by typing
screen /dev/ttyUSB0 115200
- Open the menu again by hitting
[ENTER]
- Slow way: write-to-uboot.py
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- You should see the U-Boot command line
ARV752DPW #
- If not, hit
[ENTER]
If nothing happens and the serial console is not responding, reboot your device and load the temporary U-Boot again.
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Download the Python script https://raw.githubusercontent.com/Yemtex/OpenWrt_Arcadyan-ARV752DPW/main/write-to-uboot.py
- Old version, does not work with python3 http://blog.galax.is/files/802/write-to-uboot.py
- Transfer your image to your device via serial connection by using the downloaded Python script. Type
python3 write-to-uboot.py --serial=/dev/ttyUSB0 --write=<backup file> --addr=0x81000000 --verbose
- The output of the executed script shows what to do next
**Example output** File successfully written. You should run command 'crc32 81000000 2e974' on the modem and the result must be f6901891.
- Open a serial console if not already open by typing
screen /dev/ttyUSB0 115200
- Calculate the crc32 checksum of the uploaded image by typing
crc32 81000000 <size of image>
Replace
<size of image>
with your calculated size - The result should be exactly the same as your previously calculated checksum
If the checksum is not the same, the uploaded image is corrupted. Please try to upload it again. - Unprotect the sectors by typing
protect off all
- Erase the flash memory by typing
erase all
- Copy the uploaded backup from RAM to flash memory by typing
cp.b 0x81000000 0xb0000000 <size of image>
Replace
<size of image>
with your calculated size - Calculate the crc32 checksum of the copied image by typing
crc32 b0000000 <size of image>
Replace
<size of image>
with your calculated size - Protect all sectors by typing
protect on all
- Reboot device by typing
reset
U-Boot Bootloader
General explanation:
U-Boot version | Purpose |
---|---|
u-boot-..._brn | Meant to be loaded from brnboot (stock bootloader) as a 2nd stage bootloader into RAM |
u-boot-..._nor | Meant to be flashed onto flash memory as main bootloader (at 0xB0000000), overwriting orignal bootloader |
u-boot-..._ram | Meant to be uploaded via UART by serial if nor_bootloader got bricked, for rescue purposes |
The installation of the U-Boot bootloader is recommended and requires two steps. This will overwrite the original “Danube” bootloader.
- Booting U-Boot from RAM as a second stage bootloader
- Flashing U-Boot permanently as the main bootloader
Temporary U-Boot
Beware, this method will not survive a reboot and you will have to start again.
We are uploading and running the U-Boot bootloader of RAM.
The sole purpose is to test the functionality.
- Download latest U-Boot brn version
- Releases → Latest stable version → targets → lantiq → xway → u-boot-arv752dpw_brn → Download u-boot.bin
- If the latest version doesn't work, use this working version https://downloads.openwrt.org/releases/23.05.2/targets/lantiq/xway/u-boot-arv752dpw_brn/u-boot.bin
- Rename the .bin file to
brn_u-boot.bin
- Enter the “Administrator Mode” of the DANUBE bootloader (OEM bootloader) of your device
- Connect to the serial header (Open up and connect cable)
- Open a terminal and type
screen /dev/ttyUSB0 115200
- Power on the device and quickly press the space bar 3 times
- Enter the “Administration Mode” in the DANUBE bootloader by typing an exclamation mark
!
- You should see something like this:
Press Space Bar 3 times to enter command mode ...123 Yes, Enter command mode ... [DANUBE Boot]:! Enter Administrator Mode ! ====================== [#] Set Serial Number [2] Use Normal Firmware [3] Use ART-Testing Firmware [9] Taggle ART Firmware Enable/Disable [A] Set MAC Address [E] Erase Flash [G] Run Runtime Code [H] Set Options [M] Upload to Memory [P] Print Boot Params [R] Read from Memory [T] Memory Test [U] Upload to Flash [V] Set Board Version [W] Write to Memory [Y] Go to Memory [Z] Dump DDR Ram Register [0] Primary = Image 0 [1] Primary = Image 1 ====================== [DANUBE Boot]:
- Set your device into memory upload mode by choosing
[M] Upload to Memory
- Select the default destination address by hitting
[ENTER]
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Upload the brn U-boot image from your local computer to the RAM of the device by typing
sx brn_u-boot.bin </dev/ttyUSB0 >/dev/ttyUSB0
Maybe requires additional package e.g. for Ubuntu install package
lrzsz
You need to be quick, if the command fails try again - After the transfer is complete, open your serial connection again by typing
screen /dev/ttyUSB0 115200
- Open the menu again by hitting
[ENTER]
- Run the U-Boot bootloader from RAM by choosing
[Y] Go to Memory
- Select the default memory address by hitting
[ENTER]
- Quickly, hit any key to stop U-Boot's autoboot
- You should see something like this
[DANUBE Boot]:Y Go to Memory Address: (default:0x80002000) : 0x Jump to address 0x80 U-Boot 2013.10-openwrt4 (Nov 14 2023 - 23:44:59) ARV752DPW Board: Arcadyan ARV752DPW SoC: Lantiq Danube-S v1.3 CPU: 333.333 MHz IO: 166.667 MHz BUS: 83.333 MHz BOOT: NOR DRAM: 64 MiB Flash: 8 MiB Using default environment In: serial Out: serial Err: serial Net: rtl8306_probe: chipid ffff, chipver ff, chiptype 3 Board Net Initialization Failed ltq-eth Hit any key to stop autoboot: 0 ARV752DPW #
- Check if the bootloader works
- Type
help
- Type
version
ARV752DPW # version U-Boot 2013.10-openwrt4 (Nov 14 2023 - 23:44:59) ARV752DPW mips-openwrt-linux-musl-gcc (OpenWrt GCC 12.3.0 r23630-842932a63d) 12.3.0 GNU ld (GNU Binutils) 2.40.0 ARV752DPW #
- Type
printenv
ARV752DPW # printenv addconsole=setenv bootargs $bootargs console=$consoledev,$baudrate addeth=setenv bootargs $bootargs ethaddr=$ethaddr addip=setenv bootargs $bootargs ip=$ipaddr:$serverip::::$netdev:off addmachtype=setenv bootargs $bootargs machtype=ARV752DPW baudrate=115200 bootcmd=bootm ${kernel_addr} bootdelay=2 consoledev=ttyLTQ1 ethact=ltq-eth ethaddr=00:01:02:03:04:05 ipaddr=192.168.1.1 kernel_addr=0xB0040000 load-uboot-nor=tftpboot u-boot.bin load-uboot-norspl=tftpboot u-boot.ltq.norspl load-uboot-norspl-lzma=tftpboot u-boot.ltq.lzma.norspl load-uboot-norspl-lzo=tftpboot u-boot.ltq.lzo.norspl loadaddr=0x81000000 netdev=eth0 serverip=192.168.1.2 stderr=serial stdin=serial stdout=serial update-uboot-nor=run load-uboot-nor write-uboot-nor write-uboot-nor=protect off 0xB0000000 +$filesize && erase 0xB0000000 +$filesize && cp.b $fileaddr 0xB0000000 $filesize Environment size: 904/8188 bytes ARV752DPW #
- If the bootloader does not work, try another version, see first step
- If the bootloader seems to work, continue
Permanent U-Boot
I flashed U-Boot, now TFTP is not working anymore
Calm down, you can upload everything you need via a serial connection
The next steps will overwrite the original bootloader of the device
- Running temporary U-Boot bootloader is recommended
- Writing to flash memory is also possible with the original Danube bootloader, but not as safe as with the U-Boot Bootloader.
- Download latest U-Boot nor version
- Releases → Latest stable version → targets → lantiq → xway → u-boot-arv752dpw_nor/ → Download u-boot.bin
- If the latest version doesn't work, use this working version https://downloads.openwrt.org/releases/23.05.2/targets/lantiq/xway/u-boot-arv752dpw_nor/u-boot.bin
- Rename the .bin file to
nor_u-boot.bin
- Make sure your temporary U-Boot bootloader is running and working
- Get the size of the nor U-Boot image by typing in your linux terminal
printf "%x\n" `stat -c "%s" "nor_u-boot.bin"`
- Uploading U-Boot nor image to RAM
- Quick way: xmodem
- Calculate crc32 checksum of the nor U-Boot image by typing
crc32 nor_u-boot.bin
Maybe requires additional package e.g. for Ubuntu install package
libarchive-zip-perl
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- Start the xmodem upload mode of your device by typing
loadx
- Close the serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Upload the nor U-boot image from your local computer to the RAM of the device by typing
sx nor_u-boot.bin </dev/ttyUSB0 >/dev/ttyUSB0
Maybe requires additional package e.g. for Ubuntu install package
lrzsz
- After the transfer is complete, open a serial console again by typing
screen /dev/ttyUSB0 115200
- Open the menu again by hitting
[ENTER]
- Slow way: write-to-uboot.py
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- You should see the U-Boot command line
ARV752DPW #
- If not, hit
[ENTER]
If nothing happens and the serial console is not responding, reboot your device and load the temporary U-Boot again.
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Download the Python script https://raw.githubusercontent.com/Yemtex/OpenWrt_Arcadyan-ARV752DPW/main/write-to-uboot.py
- Old version, does not work with python3 http://blog.galax.is/files/802/write-to-uboot.py
- Transfer your image to your device via serial connection by using the downloaded Python script. Type
python3 write-to-uboot.py --serial=/dev/ttyUSB0 --write=nor_u-boot.bin --addr=0x81000000 --verbose
- The output of the executed script shows what to do next
**Example output** File successfully written. You should run command 'crc32 81000000 2e974' on the modem and the result must be f6901891.
- Open a serial console if not already open by typing
screen /dev/ttyUSB0 115200
- Calculate the crc32 checksum of the uploaded image by typing
crc32 81000000 <size of image>
Replace
<size of image>
with your calculated size - The result should be exactly the same as your previously calculated checksum
If the checksum is not the same, the uploaded image is corrupted. Please try to upload it again. - Unprotect the sectors where U-Boot is stored by typing
protect off 0xb0000000 +<size of image>
Replace
<size of image>
with your calculated size - Erase the flash memory by typing
erase 0xb0000000 +<size of image>
Replace
<size of image>
with your calculated size - Copy the uploaded nor U-Boot image from RAM to flash memory by typing
cp.b 0x81000000 0xb0000000 <size of image>
Replace
<size of image>
with your calculated size - Calculate the crc32 checksum of the copied image by typing
crc32 b0000000 <size of image>
Replace
<size of image>
with your calculated size - Protect the U-Boot sectors by typing
protect on 0xb0000000 +<size of image>
Replace
<size of image>
with your calculated size - U-Boot Bootloader is now permanently installed. Reboot device by typing
reset
Fix U-Boot CRC Warning
Question:
I have ported U-Boot to a custom board. It seems to boot OK, but it prints:
Warning - bad CRC, using default environment
Why?
Answer:
Most probably everything is OK. The message is printed because the flash sector or ERPROM containing the environment variables has never been initialized yet. The message will go away as soon as you save the envrionment variables using the saveenv
command.
UART u-boot (bricked Device only)
This method is intended for rescue purposes (bricked device). Use this method with absolute caution.
The pads can be found on the backside of the PCB near the LEDs
- Download the latest U-boot ram version
- Releases → Latest stable version → targets → lantiq → xway → u-boot-arv752dpw_ram → Download u-boot.asc
- If the latest version doesn't work, use this working version https://downloads.openwrt.org/releases/23.05.2/targets/lantiq/xway/u-boot-arv752dpw_ram/u-boot.asc
- Connect to the serial console connectors (Serial)
- Open a terminal
- Type:
screen /dev/ttyUSB0 115200
- Short-circuit R80 and bring +3.3 V on the left side of R65 (see picture), while powering on the device.
- You should see something like this:
ROM VER: 1.0.3 CFG 04 Read EEPROMX X UART
- Close your serial connection by pressing the key combination in the terminal:
[CTRL] + [A] then [K] then [Y] to confirm exit
- Jumpstart your device by sending the downloaded u-boot file via serial connnection to your device. Type:
cat u-boot.asc > /dev/ttyUSB0 && screen /dev/ttyUSB0 115200
- After the file is transmitted, u-boot bootloader should load.
Beware, u-boot is being currently loaded only in the RAM.
Powering off your device will kill your u-boot, you will need to start again with this procedure.
To restore u-boot completely, upload u-boot via your serial connection and write it back to flash memory using the u-boot instructions above (LINK)
OpenWrt flash layout
root@OpenWrt:~# cat /proc/mtd dev: size erasesize name mtd0: 00010000 00002000 "uboot" mtd1: 00010000 00010000 "u-boot-env" mtd2: 007d0000 00010000 "firmware" mtd3: 002633e1 00010000 "kernel" mtd4: 0056cc1f 00010000 "rootfs" mtd5: 00110000 00010000 "rootfs_data" mtd6: 00010000 00010000 "board_config"
OpenWrt
General explanation:
The installation of OpenWrt requires two steps. The original firmware will be overwritten.
- Booting OpenWrt from RAM to test functionality
- Flashing OpenWrt permanently to flash memory
Temporary OpenWrt
- Download the latest OpenWrt initramfs-kernel
- Releases → Latest stable version → targets → lantiq → xway → Download arcadyan_arv752dpw-initramfs-kernel.bin
- If the latest version doesn't work, use this working version https://downloads.openwrt.org/releases/22.03.6/targets/lantiq/xway/openwrt-22.03.6-lantiq-xway-arcadyan_arv752dpw-initramfs-kernel.bin
- Get the size of the initramfs-kernel OpenWrt image by typing in your linux terminal
printf "%x\n" `stat -c "%s" "<initramfs-kernel bin file>"`
Replace <initramfs-kernel bin file>
The result is needed later - Connect to the serial header (Open up and connect cable)
- Upload the initramfs-kernel image to RAM
- First quick way: xmodem
- Calculate crc32 checksum of the OpenWrt initramfs-kernel image by typing
crc32 <initramfs-kernel bin file>
Replace <initramfs-kernel bin file>
Maybe requires additional package e.g. for Ubuntu install packagelibarchive-zip-perl
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- Start the xmodem upload mode of your device by typing
loadx
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Upload the OpenWrt initramfs-kernel image from your local computer to the RAM of the device by typing
sx <initramfs-kernel bin file> </dev/ttyUSB0 >/dev/ttyUSB0
Replace <initramfs-kernel bin file>
Maybe requires additional package e.g. for Ubuntu install packagelrzsz
- After the transfer is complete, open your serial connection again by typing
screen /dev/ttyUSB0 115200
- Open the menu again by hitting
[ENTER]
- Second quick Way: tftp
- Connect
LAN 1
of device with your computer- You can also use a USB Ethernet adapter
- Download a tftp server, e.g. Tftpd64 on Windows (General explanation)
- For Tftpd64: Browse to the folder with the image in it
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- Get the client IP and server IP by typing
printenv
ARV752DPW22 # printenv addconsole=setenv bootargs $bootargs console=$consoledev,$baudrate addeth=setenv bootargs $bootargs ethaddr=$ethaddr addip=setenv bootargs $bootargs ip=$ipaddr:$serverip::::$netdev:off addmachtype=setenv bootargs $bootargs machtype=ARV752DPW22 baudrate=115200 bootcmd=bootm ${kernel_addr} bootdelay=2 consoledev=ttyLTQ1 ethact=ltq-eth ethaddr=<redacted> ipaddr=192.168.1.1 kernel_addr=0xB0040000 load-uboot-nor=tftpboot u-boot.bin load-uboot-norspl=tftpboot u-boot.ltq.norspl load-uboot-norspl-lzma=tftpboot u-boot.ltq.lzma.norspl load-uboot-norspl-lzo=tftpboot u-boot.ltq.lzo.norspl loadaddr=0x81000000 netdev=eth0 serverip=192.168.1.2 stderr=serial stdin=serial sial update-uboot-nor=run load-tdout=seruboot-nor write-uboot-nor write-uboot-nor=protect off 0xB0000000 +$filesize && erase 0xB0000000 +$filesize && cp.b $fileaddr 0xB0000000 $filesize Environment size: 906/8188 bytes ARV752DPW22 #
- ipaddr is the IP of the device (serving as the client, who is pulling the image from the server)
- serverip is the IP of the NIC of your computer
- Set the IP of your computer's NIC to the server IP e.g.
192.168.1.2
- Start your tftp server on your computer
- Calculate crc32 checksum of the OpenWrt initramfs-kernel image in a seperate Linux terminal by typing
crc32 <initramfs-kernel bin file>
Replace <initramfs-kernel bin file>
Maybe requires additional package e.g. for Ubuntu install packagelibarchive-zip-perl
- Write the OpenWrt initramfs-kernel image to RAM by typing
tftpboot 0x81000000 <initramfs-kernel bin file>
Replace <initramfs-kernel bin file>
- Slow way: write-to-uboot.py
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- You should see the U-Boot command line
ARV752DPW #
- If not, hit
[ENTER]
If nothing happens and the serial console is not responding, reboot your device.
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Download the Python script https://raw.githubusercontent.com/Yemtex/OpenWrt_Arcadyan-ARV752DPW/main/write-to-uboot.py
- Old version, does not work with python3 http://blog.galax.is/files/802/write-to-uboot.py
- Transfer your image to your device via serial connection by using the downloaded Python script. Type for example
python3 write-to-uboot.py --serial=/dev/ttyUSB0 --write=<initramfs-kernel bin file> --addr=0x81000000 --verbose
Replace <initramfs-kernel bin file>
- The output of the executed script shows what to do next
**Example output** File successfully written. You should run command 'crc32 81000000 4f3fe7' on the modem and the result must be a0a76a18.
- Open a serial console if not already open by typing
screen /dev/ttyUSB0 115200
- Calculate the crc32 checksum of the uploaded image by typing
crc32 81000000 <size of image>
Replace
<size of image>
with your calculated size - The result should be exactly the same as your previously calculated checksum
If the checksum is not the same, the uploaded image is corrupted. Please try to upload it again. - Check if uploaded image is recognized as OpenWrt by typing
iminfo 0x81000000
If the image has no header, there is no output
If the image is not recognized, the uploaded image is corrupted. Upload it again. - Boot uploaded image by typing
bootm
- Check if OpenWrt works as expected e.g. web interface LuCi
Permanent OpenWrt
Work in Progress
Use the older Wiki page please
The next steps will overwrite the original firmware of the device
Major Release 23 is bricking the device do not upgrade GitHub Issue
The next steps are very similar to the 'Temporary OpenWrt' section
- Before writing OpenWrt finally into flash memory, please test if first with Temporary OpenWrt
- Download the latest OpenWrt squash
- Releases → Latest stable version → targets → lantiq → xway → Download arcadyan_arv752dpw-squashfs-sysupgrade.bin
- If the latest version doesn't work, use this working version https://downloads.openwrt.org/releases/22.03.6/targets/lantiq/xway/openwrt-22.03.6-lantiq-xway-arcadyan_arv752dpw-squashfs-sysupgrade.bin
- Get the size of the squashfs-sysupgrade OpenWrt image by typing in your linux terminal
printf "%x\n" `stat -c "%s" "<squashfs-sysupgrade bin file>"`
Replace <squashfs-sysupgrade bin file>
The result is needed later - Connect to the serial header (Open up and connect cable)
- Upload the squashfs-sysupgrade image to RAM
- First quick way: xmodem
- Calculate crc32 checksum of the OpenWrt squashfs-sysupgrade image by typing
crc32 <squashfs-sysupgrade bin file>
Replace <squashfs-sysupgrade bin file>
Maybe requires additional package e.g. for Ubuntu install packagelibarchive-zip-perl
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- Start the xmodem upload mode of your device by typing
loadx
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Upload the OpenWrt squashfs-sysupgrade image from your local computer to the RAM of the device by typing
sx <squashfs-sysupgrade bin file> </dev/ttyUSB0 >/dev/ttyUSB0
Replace <squashfs-sysupgrade bin file>
Maybe requires additional package e.g. for Ubuntu install packagelrzsz
- After the transfer is complete, open your serial connection again by typing
screen /dev/ttyUSB0 115200
- Open the menu again by hitting
[ENTER]
- Second quick Way: tftp
- Connect
LAN 1
of device with your computer- You can also use a USB Ethernet adapter
- Download a tftp server, e.g. Tftpd64 on Windows (General explanation)
- For Tftpd64: Browse to the folder with the image in it
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- Get the client IP and server IP by typing
printenv
ARV752DPW22 # printenv addconsole=setenv bootargs $bootargs console=$consoledev,$baudrate addeth=setenv bootargs $bootargs ethaddr=$ethaddr addip=setenv bootargs $bootargs ip=$ipaddr:$serverip::::$netdev:off addmachtype=setenv bootargs $bootargs machtype=ARV752DPW22 baudrate=115200 bootcmd=bootm ${kernel_addr} bootdelay=2 consoledev=ttyLTQ1 ethact=ltq-eth ethaddr=<redacted> ipaddr=192.168.1.1 kernel_addr=0xB0040000 load-uboot-nor=tftpboot u-boot.bin load-uboot-norspl=tftpboot u-boot.ltq.norspl load-uboot-norspl-lzma=tftpboot u-boot.ltq.lzma.norspl load-uboot-norspl-lzo=tftpboot u-boot.ltq.lzo.norspl loadaddr=0x81000000 netdev=eth0 serverip=192.168.1.2 stderr=serial stdin=serial sial update-uboot-nor=run load-tdout=seruboot-nor write-uboot-nor write-uboot-nor=protect off 0xB0000000 +$filesize && erase 0xB0000000 +$filesize && cp.b $fileaddr 0xB0000000 $filesize Environment size: 906/8188 bytes ARV752DPW22 #
- ipaddr is the IP of the device (serving as the client, who is pulling the image from the server)
- serverip is the IP of the NIC of your computer
- Set the IP of your computer's NIC to the server IP e.g.
192.168.1.2
- Start your tftp server on your computer
- Calculate crc32 checksum of the OpenWrt squashfs-sysupgrade image in a seperate Linux terminal by typing
crc32 <squashfs-sysupgrade bin file>
Replace <squashfs-sysupgrade bin file>
Maybe requires additional package e.g. for Ubuntu install packagelibarchive-zip-perl
- Write the OpenWrt squashfs-sysupgrade image to RAM by typing
tftpboot 0x81000000 <squashfs-sysupgrade bin file>
Replace <squashfs-sysupgrade bin file>
- Slow way: write-to-uboot.py
- Open a serial console by typing
screen /dev/ttyUSB0 115200
- You should see the U-Boot command line
ARV752DPW #
- If not, hit
[ENTER]
If nothing happens and the serial console is not responding, reboot your device.
- Close your serial connection by pressing the key combination in the terminal
[CTRL] + [A] then [K] then [Y] to confirm exit
- Download the Python script https://raw.githubusercontent.com/Yemtex/OpenWrt_Arcadyan-ARV752DPW/main/write-to-uboot.py
- Old version, does not work with python3 http://blog.galax.is/files/802/write-to-uboot.py
- Transfer your image to your device via serial connection by using the downloaded Python script. Type for example
python3 write-to-uboot.py --serial=/dev/ttyUSB0 --write=<squashfs-sysupgrade bin file> --addr=0x81000000 --verbose
Replace <squashfs-sysupgrade bin file>
- The output of the executed script shows what to do next
**Example output** File successfully written. You should run command 'crc32 81000000 4f3fe7' on the modem and the result must be a0a76a18.
- Open a serial console if not already open by typing
screen /dev/ttyUSB0 115200
- Calculate the crc32 checksum of the uploaded image by typing
crc32 81000000 <size of image>
Replace
<size of image>
with your calculated size - The result should be exactly the same as your previously calculated checksum
If the checksum is not the same, the uploaded image is corrupted. Please try to upload it again. - Unprotect the sectors by typing
protect off 0xB0040000 +<size of image>
Replace
<size of image>
with your calculated size - Erase the flash memory by typing
erase 0xB0040000 +<size of image>
Replace
<size of image>
with your calculated size - Copy the uploaded OpenWrt squashfs-sysupgrade image from RAM to flash memory by typing
cp.b 0x81000000 0xb0040000 <size of image>
Replace
<size of image>
with your calculated size - Calculate the crc32 checksum of the copied image by typing
crc32 b0040000 <size of image>
Replace
<size of image>
with your calculated size - Protect the sectors by typing
protect on 0xB0040000 +<size of image>
Replace
<size of image>
with your calculated size - Check if uploaded image is recognized as OpenWrt by typing
iminfo 0xB0040000
If the image has no header, there is no output
If the image is not recognized, the uploaded image is corrupted. Upload it again. - Boot uploaded image by rebooting the device
reset
- Check if OpenWrt works as expected e.g. web interface LuCi
Pictures
Building
I am new to openwrt and want to build the firmware for this device. There are no build instructions yet so I will add them here while I am experimenting with build. --- JPT1 2016/04/29 15:16
- Follow this https://wiki.openwrt.org/doc/howto/buildroot.exigence but probably fetch 15.5 branch:
git clone git:git.openwrt.org/15.05/openwrt.git
- when running
make menuconfig
select the following:- Target System:
lantiq
- Target Profile:
Easybox 802 - ARV752DPW
- optional: usb-2.0 drivers, printer and usb-storage?
- optional: filesystem drivers?
- Ralink RT2860 PCI is reported not to work in 15.5 (see above). wireless drivers are already selected, firmware is available. so this seems to be a runtime problem. maybe this helps in trouble shooting: https://wireless.wiki.kernel.org/en/users/drivers/rt2800pci
- Boot Loaders:
uboot-lantiq-arv752dpw_brn
or other formats depending on how you are gonna install the firmware (see above)
make
- find your firmware images in
bin/lantiq
FXS/FXO
There are some parts for telephony on the PCB. This parts are currently not supported.
Links
- Sip client for infineon danube based routers running openwrt: http://code.google.com/p/danube-voip/
- Some research on university of Freiburg germany (german): http://lab.ks.uni-freiburg.de/issues/515
- A “map” of the PCB: http://lab.ks.uni-freiburg.de/attachments/download/431/baugruppen.jpg
Parts
ISDN
- XHFC-2SU ISDN 3409 or XHFC-2SU ISDN 3109
- http://www.colognechip.com/isdn/controllers/frame-xhfc-2su.htm (Datasheet/Linux driver)
NTBA
- PEF80902
POTS
- Si3011
- Si3050
Additional information
Hardware
Architecture: | MIPS |
Target: | ifxmips / lantiq |
Vendor: | Arcadyan |
Bootloader: | brnboot |
System-On-Chip: | Infineon/Lantiq Xway Danube |
CPU Speed: | 333 Mhz |
Flash chip: | Macronix MX 29LV640EBTI-70G |
Flash size: | 8 MiB |
RAM chip: | PSC A3S12D40ETP |
RAM size: | 64 MiB (DDR400 SDRAM) |
USB: | 3x USB2.0 (one of these ports is connected with a grey cable) |
WAN: | 1x RJ45 |
MODEM: | ADSL (G.992.1 & T1.413, V2), ADSL2 (G.992.3), ADSL2+ (G.992.5) |
Ethernet: | Realtek RTL8306G, 4x LAN 100MBit/s |
Wireless: | Ralink RT2860T, 802.11n 300MBit/s 2.4 GHz 2 antennas |
Phone: | 3x FXS ( 2x TAE ports which provide POTS via a SIP gateway), ISDN S0 |
ISDN: | XHFC-2SU |
Serial: | yes |
JTAG: | no |
Buttons: | power switch, WPS button, reset button |
Power: | external PSU, 15V DC, 1,6A (25W max, 16W typical) polarity: -(+) |
CPU
root@OpenWrt:~# cat /proc/cpuinfo system type : Danube rev 1.5 machine : Arcor 802 processor : 0 cpu model : MIPS 24KEc V4.1 BogoMIPS : 221.18 wait instruction : yes microsecond timers : yes tlb_entries : 16 extra interrupt vector : yes hardware watchpoint : yes, count: 4, address/irw mask: [0x0ffc, 0x0ffc, 0x0ffb, 0x0ffb] isa : mips1 mips2 mips32r1 mips32r2 ASEs implemented : mips16 dsp Options implemented : tlb 4kex 4k_cache 32fpr prefetch mcheck ejtag llsc perf_cntr_intr_bit perf shadow register sets : 1 kscratch registers : 0 package : 0 core : 0 VCED exceptions : not available VCEI exceptions : not available
Wifi
root@OpenWrt:~# iwinfo wlan0 info wlan0 ESSID: "<redacted name>" Access Point: <redacted mac address> Mode: Master Channel: 5 (2.432 GHz) HT Mode: HT20 Center Channel 1: 5 2: unknown Tx-Power: 20 dBm Link Quality: 61/70 Signal: -49 dBm Noise: unknown Bit Rate: 108.3 MBit/s Encryption: WPA2 PSK (CCMP) Type: nl80211 HW Mode(s): 802.11b/g/n Hardware: 1814:0601 1814:2860 [Generic MAC80211] TX power offset: unknown Frequency offset: unknown Supports VAPs: yes PHY name: phy0
DSL configuration
Working DSL setup:
config atm-bridge 'atm' option vpi '1' option vci '32' option encaps 'llc' option payload 'bridged' config interface 'wan' option ifname 'nas0' option proto 'pppoe' option username '24235@eveundeve.de' option password '7046107807' option ipv6 '0' option pppd_options 'debug kdebug 2 lcp-max-terminate 0 ipcp-max-terminate 0' option keepalive 0 option mtu 1500 config interface 'wan6' option ifname '@wan' option proto 'dhcpv6' config adsl 'dsl' option annex 'b' option firmware '/lib/firmware/adsl.bin'
Switch configuration
Ports 1-4 are the ports on the back of the device.
root@OpenWrt:~# swconfig dev switch0 show Global attributes: enable_vlan: 0 trunk: 0 trunk_sel: 0 Port 0: pvid: 0 link: port:0 link:down Port 1: pvid: 1 link: port:1 link:up speed:100baseT full-duplex auto Port 2: pvid: 2 link: port:2 link:down Port 3: pvid: 3 link: port:3 link:down Port 4: pvid: 4 link: port:4 link:down Port 5: pvid: 5 link: port:5 link:up speed:100baseT full-duplex VLAN 0: vid: 0 ports: 0 5t VLAN 1: vid: 1 ports: 1 5t VLAN 2: vid: 2 ports: 2 5t VLAN 3: vid: 3 ports: 3 5t VLAN 4: vid: 4 ports: 4 5t VLAN 5: vid: 5 ports: 0 1 2 3 4
Flash space
root@OpenWrt:~# df -h Filesystem Size Used Available Use% Mounted on /dev/root 4.5M 4.5M 0 100% /rom tmpfs 27.7M 236.0K 27.4M 1% /tmp /dev/mtdblock5 1.1M 264.0K 824.0K 24% /overlay overlayfs:/overlay 1.1M 264.0K 824.0K 24% / tmpfs 512.0K 0 512.0K 0% /dev
PCI bus
root@OpenWrt:~# lspci -v 00:0e.0 Network controller: Ralink corp. RT2800 802.11n PCI Subsystem: Ralink corp. Device 2860 Flags: bus master, 66MHz, slow devsel, latency 64, IRQ 135 Memory at 18000000 (32-bit, non-prefetchable) [size=64K] Memory at <unassigned> (32-bit, non-prefetchable) [size=2] Memory at <unassigned> (32-bit, non-prefetchable) [size=2] Memory at <unassigned> (32-bit, non-prefetchable) [size=2] Memory at <unassigned> (32-bit, non-prefetchable) [size=2] Memory at <unassigned> (32-bit, non-prefetchable) [size=2] Expansion ROM at <unassigned> [disabled] [size=2] Capabilities: [40] Power Management version 3 Kernel driver in use: rt2800pci lspci: Unable to load libkmod resources: error -12
USB bus
root@OpenWrt:~# lsusb -t /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ifxusb_hcd/1p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M root@OpenWrt:~# lsusb Bus 001 Device 002: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
OpenWrt 22.03.6 boot log
root@OpenWrt:~# dmesg [ 0.000000] Linux version 5.10.201 (builder@buildhost) (mips-openwrt-linux-musl-gcc (OpenWrt GCC 11.2.0 r20265-f85a79bcb4) 11.2.0, GNU ld (GNU Binutils) 2.37) #0 Sat Nov 25 18:18:57 2023 [ 0.000000] SoC: Danube rev 1.5 [ 0.000000] printk: bootconsole [early0] enabled [ 0.000000] CPU0 revision is: 00019641 (MIPS 24KEc) [ 0.000000] MIPS: machine is Arcor 802 [ 0.000000] Initrd not found or empty - disabling initrd [ 0.000000] Primary instruction cache 16kB, VIPT, 4-way, linesize 32 bytes. [ 0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x0000000003ffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x0000000003ffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000003ffffff] [ 0.000000] On node 0 totalpages: 16384 [ 0.000000] Normal zone: 144 pages used for memmap [ 0.000000] Normal zone: 0 pages reserved [ 0.000000] Normal zone: 16384 pages, LIFO batch:3 [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 0.000000] pcpu-alloc: [0] 0 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 16240 [ 0.000000] Kernel command line: console=ttyLTQ0,115200 [ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes, linear) [ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes, linear) [ 0.000000] Writing ErrCtl register=00018000 [ 0.000000] Readback ErrCtl register=00018000 [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 55412K/65536K available (6503K kernel code, 632K rwdata, 828K rodata, 1236K init, 209K bss, 10124K reserved, 0K cma-reserved) [ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 0.000000] NR_IRQS: 256 [ 0.000000] CPU Clock: 333MHz [ 0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 11467562657 ns [ 0.000021] sched_clock: 32 bits at 166MHz, resolution 6ns, wraps every 12884901885ns [ 0.008125] Calibrating delay loop... 221.18 BogoMIPS (lpj=1105920) [ 0.094304] pid_max: default: 32768 minimum: 301 [ 0.099445] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.106639] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.120116] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build [ 0.139161] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.148943] futex hash table entries: 256 (order: -1, 3072 bytes, linear) [ 0.155924] pinctrl core: initialized pinctrl subsystem [ 0.171388] NET: Registered protocol family 16 [ 0.177596] thermal_sys: Registered thermal governor 'step_wise' [ 0.200381] pinctrl-xway 1e100b10.pinmux: Init done [ 0.257069] dma-xway 1e104100.dma: Init done - hw rev: 3, ports: 5, channels: 20 [ 0.266144] PCI host bridge /fpi@10000000/pci@e105400 ranges: [ 0.271889] MEM 0x0000000018000000..0x0000000019ffffff [ 0.277066] IO 0x000000001ae00000..0x000000001affffff [ 0.378480] usbcore: registered new interface driver usbfs [ 0.384125] usbcore: registered new interface driver hub [ 0.389481] usbcore: registered new device driver usb [ 0.397645] PCI host bridge to bus 0000:00 [ 0.401626] pci_bus 0000:00: root bus resource [mem 0x18000000-0x19ffffff] [ 0.408648] pci_bus 0000:00: root bus resource [io 0x1ae00000-0x1affffff] [ 0.415503] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0] [ 0.422427] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff] [ 0.431975] pci 0000:00:0e.0: [1814:0601] type 00 class 0x028000 [ 0.437970] pci 0000:00:0e.0: reg 0x10: [mem 0xffff0000-0xffffffff] [ 0.444331] pci 0000:00:0e.0: PME# supported from D0 D3hot D3cold [ 0.452992] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00 [ 0.459510] pci 0000:00:0e.0: BAR 0: assigned [mem 0x18000000-0x1800ffff] [ 0.489580] clocksource: Switched to clocksource MIPS [ 0.497834] NET: Registered protocol family 2 [ 0.502709] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear) [ 0.511618] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear) [ 0.520090] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.527649] TCP bind hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.534852] TCP: Hash tables configured (established 1024 bind 1024) [ 0.541511] UDP hash table entries: 256 (order: 0, 4096 bytes, linear) [ 0.547948] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear) [ 0.555718] NET: Registered protocol family 1 [ 0.560156] PCI: CLS 0 bytes, default 32 [ 0.574895] gptu: totally 6 16-bit timers/counters [ 0.579897] gptu: misc_register on minor 63 [ 0.583989] gptu: succeeded to request irq 126 [ 0.588487] gptu: succeeded to request irq 127 [ 0.593128] gptu: succeeded to request irq 128 [ 0.597515] gptu: succeeded to request irq 129 [ 0.602130] gptu: succeeded to request irq 130 [ 0.606547] gptu: succeeded to request irq 131 [ 0.617787] lantiq,vmmc 1f107000.vmmc: requested GPIO 465 [ 0.623177] lantiq,vmmc 1f107000.vmmc: reserved 1MB at 0x(ptrval) [ 0.638133] workingset: timestamp_bits=14 max_order=14 bucket_order=0 [ 0.659811] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.665505] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. [ 0.678362] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252) [ 0.691169] 1e100c00.serial: ttyLTQ0 at MMIO 0x1e100c00 (irq = 112, base_baud = 0) is a lantiq,asc [ 0.700171] printk: console [ttyLTQ0] enabled [ 0.708518] printk: bootconsole [early0] disabled [ 0.720113] lantiq nor flash device: 00800000 at 10000000 [ 0.724308] ltq_nor: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x0000c2 Chip ID 0x0022cb [ 0.733416] Amd/Fujitsu Extended Query Table at 0x0040 [ 0.738292] Amd/Fujitsu Extended Query version 1.1. [ 0.743236] number of CFI chips: 1 [ 0.746520] 4 fixed-partitions partitions found on MTD device ltq_nor [ 0.754201] Creating 4 MTD partitions on "ltq_nor": [ 0.757559] 0x000000000000-0x000000010000 : "uboot" [ 0.780573] 0x000000010000-0x000000020000 : "u-boot-env" [ 0.786808] 0x000000020000-0x0000007f0000 : "firmware" [ 0.796381] 2 uimage-fw partitions found on MTD device firmware [ 0.800859] 0x000000020000-0x0000002833e1 : "kernel" [ 0.805553] mtd: partition "kernel" doesn't end on an erase/write block -- force read-only [ 0.816123] 0x0000002833e1-0x0000007f0000 : "rootfs" [ 0.819545] mtd: partition "rootfs" doesn't start on an erase/write block boundary -- force read-only [ 0.833958] mtd: setting mtd4 (rootfs) as root device [ 0.837591] 1 squashfs-split partitions found on MTD device rootfs [ 0.843624] 0x0000006e0000-0x0000007f0000 : "rootfs_data" [ 0.851298] 0x0000007f0000-0x000000800000 : "board_config" [ 0.959216] Registering RTL8306SDM switch with Chip ID: 0x5988, version: 0x0000 [ 0.965083] Realtek RTL8306S 1e180000.etop-ffffffff:00: attached PHY driver [Realtek RTL8306S] (mii_bus:phy_addr=1e180000.etop-ffffffff:00, irq=POLL) [ 0.989185] NET: Registered protocol family 10 [ 1.021502] Segment Routing with IPv6 [ 1.023928] NET: Registered protocol family 17 [ 1.028158] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this. [ 1.040682] 8021q: 802.1Q VLAN Support v1.8 [ 1.088041] VFS: Mounted root (squashfs filesystem) readonly on device 31:4. [ 1.101413] Freeing unused kernel memory: 1236K [ 1.104436] This architecture does not have kernel memory protection. [ 1.110775] Run /sbin/init as init process [ 1.114625] with arguments: [ 1.114637] /sbin/init [ 1.114648] with environment: [ 1.114660] HOME=/ [ 1.114673] TERM=linux [ 3.136223] init: Console is alive [ 3.138982] init: - watchdog - [ 6.674154] kmodloader: loading kernel modules from /etc/modules-boot.d/* [ 7.000522] dwc2 1e101000.usb: supply vusb_d not found, using dummy regulator [ 7.006621] dwc2 1e101000.usb: supply vusb_a not found, using dummy regulator [ 7.054324] dwc2 1e101000.usb: DWC OTG Controller [ 7.057663] dwc2 1e101000.usb: new USB bus registered, assigned bus number 1 [ 7.064515] dwc2 1e101000.usb: irq 62, io mem 0x1e101000 [ 7.072014] hub 1-0:1.0: USB hub found [ 7.075872] hub 1-0:1.0: 1 port detected [ 7.088772] kmodloader: done loading kernel modules from /etc/modules-boot.d/* [ 7.105366] init: - preinit - [ 7.315964] dwc2 1e101000.usb: Mode Mismatch Interrupt: currently in Host mode [ 7.321731] dwc2 1e101000.usb: Mode Mismatch Interrupt: currently in Host mode [ 8.212124] usb 1-1: new high-speed USB device number 2 using dwc2 [ 8.216981] dwc2 1e101000.usb: Mode Mismatch Interrupt: currently in Host mode [ 8.223868] dwc2 1e101000.usb: Mode Mismatch Interrupt: currently in Host mode [ 8.831572] hub 1-1:1.0: USB hub found [ 8.834040] hub 1-1:1.0: 4 ports detected [ 9.400304] random: procd: uninitialized urandom read (4 bytes read) [ 10.197747] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [ 10.359781] random: crng init done [ 14.991812] jffs2: notice: (433) jffs2_build_xattr_subsystem: complete building xattr subsystem, 36 of xdatum (6 unchecked, 25 orphan) and 38 of xref (25 dead, 0 orphan) found. [ 15.010830] mount_root: switching to jffs2 overlay [ 15.022187] overlayfs: upper fs does not support tmpfile. [ 15.056235] urandom-seed: Seeding with /etc/urandom.seed [ 15.708299] procd: - early - [ 15.710555] procd: - watchdog - [ 16.820947] procd: - watchdog - [ 16.826698] procd: - ubus - [ 17.182252] procd: - init - [ 20.956414] kmodloader: loading kernel modules from /etc/modules.d/* [ 22.082450] IFXOS, Version 1.7.1 (c) Copyright 2009, Lantiq Deutschland GmbH [ 22.126201] Lantiq TAPI device driver, version 3.13.0.2, (c) 2001-2010 Lantiq Deutschland GmbH [ 22.158604] NET: Registered protocol family 8 [ 22.161578] NET: Registered protocol family 20 [ 22.210493] PPP generic driver version 2.4.2 [ 22.234461] IFX MEI Version 5.00.00 [ 22.285260] Infineon CPE API Driver version: DSL CPE API V3.24.4.4 [ 22.343541] Loading modules backported from Linux version v5.15.92-0-ge515b9902f5f [ 22.349551] Backport generated by backports.git v5.15.92-1-0-gdfe0f60c [ 22.407826] Lantiq MIPS24KEc MPS driver, version 2.2.2.5, (c) 2006-2010 Lantiq Deutschland GmbH [ 22.415091] request_timer(3, 0x000001AE, 1)... [ 22.415131] successful! [ 22.422380] Lantiq VMMC device driver, version 1.9.0.3, (c) 2006-2010 Lantiq Deutschland GmbH [ 22.533036] NET: Registered protocol family 24 [ 23.571063] rt2800pci 0000:00:0e.0: enabling device (0000 -> 0002) [ 23.577105] rt2800pci 0000:00:0e.0: loaded eeprom from mtd device "board_config" [ 23.583060] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 2860, rev 0103 detected [ 23.590788] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0001 detected [ 23.597354] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 23.900521] kmodloader: done loading kernel modules from /etc/modules.d/* [ 34.140805] urngd: v1.0.2 started. [ 89.651038] br-lan: port 1(eth0) entered blocking state [ 89.654770] br-lan: port 1(eth0) entered disabled state [ 89.660954] device eth0 entered promiscuous mode [ 89.709994] br-lan: port 1(eth0) entered blocking state [ 89.713735] br-lan: port 1(eth0) entered forwarding state [ 90.689781] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready [ 99.613809] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2860.bin' [ 100.339924] ieee80211 phy0: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.40 [ 100.510107] br-lan: port 2(wlan0) entered blocking state [ 100.513943] br-lan: port 2(wlan0) entered disabled state [ 100.520306] device wlan0 entered promiscuous mode [ 102.689857] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 102.695265] br-lan: port 2(wlan0) entered blocking state [ 102.699960] br-lan: port 2(wlan0) entered forwarding state [37501.027372] ieee80211 phy0: rt2x00lib_rxdone_read_signal: Warning - Frame received with unrecognized signal, mode=0x0001, signal=0x010c, type=4
OpenWrt 18.06.01 boot log
root@OpenWrt:~# dmesg [ 0.000000] Linux version 4.9.120 (buildbot@builds-03.infra.lede-project.org) (gcc version 7.3.0 (OpenWrt GCC 7.3.0 r7102-3f3a2c9) ) #0 Thu Aug 16 07:51:15 2018 [ 0.000000] SoC: Danube rev 1.3 [ 0.000000] bootconsole [early0] enabled [ 0.000000] CPU0 revision is: 00019641 (MIPS 24KEc) [ 0.000000] MIPS: machine is Arcor 802 [ 0.000000] Determined physical RAM map: [ 0.000000] memory: 04000000 @ 00000000 (usable) [ 0.000000] Initrd not found or empty - disabling initrd [ 0.000000] Primary instruction cache 16kB, VIPT, 4-way, linesize 32 bytes. [ 0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x0000000003ffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x0000000003ffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000003ffffff] [ 0.000000] On node 0 totalpages: 16384 [ 0.000000] free_area_init_node: node 0, pgdat 804aab44, node_mem_map 810078a0 [ 0.000000] Normal zone: 128 pages used for memmap [ 0.000000] Normal zone: 0 pages reserved [ 0.000000] Normal zone: 16384 pages, LIFO batch:3 [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 0.000000] pcpu-alloc: [0] 0 [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256 [ 0.000000] Kernel command line: console=ttyLTQ0,115200 [ 0.000000] PID hash table entries: 256 (order: -2, 1024 bytes) [ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) [ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) [ 0.000000] Writing ErrCtl register=0004000f [ 0.000000] Readback ErrCtl register=0004000f [ 0.000000] Memory: 58648K/65536K available (3983K kernel code, 172K rwdata, 620K rodata, 1224K init, 218K bss, 6888K reserved, 0K cma-reserved) [ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 0.000000] NR_IRQS:256 [ 0.000000] CPU Clock: 333MHz [ 0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 11467562657 ns [ 0.000022] sched_clock: 32 bits at 166MHz, resolution 6ns, wraps every 12884901885ns [ 0.007966] Calibrating delay loop... 221.18 BogoMIPS (lpj=442368) [ 0.050587] pid_max: default: 32768 minimum: 301 [ 0.055570] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.062114] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.079689] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.089387] futex hash table entries: 256 (order: -1, 3072 bytes) [ 0.095653] pinctrl core: initialized pinctrl subsystem [ 0.103291] NET: Registered protocol family 16 [ 0.115919] pinctrl-xway 1e100b10.pinmux: Init done [ 0.122468] dma-xway 1e104100.dma: Init done - hw rev: 3, ports: 5, channels: 20 [ 0.183257] Can't analyze schedule() prologue at 803e16b0 [ 0.190016] PCI host bridge /fpi@10000000/pci@E105400 ranges: [ 0.195723] MEM 0x0000000018000000..0x0000000019ffffff [ 0.200991] IO 0x000000001ae00000..0x000000001affffff [ 0.255669] usbcore: registered new interface driver usbfs [ 0.261303] usbcore: registered new interface driver hub [ 0.266726] usbcore: registered new device driver usb [ 0.272360] PCI host bridge to bus 0000:00 [ 0.276409] pci_bus 0000:00: root bus resource [mem 0x18000000-0x19ffffff] [ 0.283335] pci_bus 0000:00: root bus resource [io 0x1ae00000-0x1affffff] [ 0.290277] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0] [ 0.297130] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff] [ 0.305218] pci 0000:00:0e.0: [1814:0601] type 00 class 0x028000 [ 0.305293] pci 0000:00:0e.0: reg 0x10: [mem 0xffff0000-0xffffffff] [ 0.305468] pci 0000:00:0e.0: PME# supported from D0 D3hot D3cold [ 0.305957] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00 [ 0.306025] pci 0000:00:0e.0: BAR 0: assigned [mem 0x18000000-0x1800ffff] [ 0.322936] clocksource: Switched to clocksource MIPS [ 0.330462] NET: Registered protocol family 2 [ 0.336718] TCP established hash table entries: 1024 (order: 0, 4096 bytes) [ 0.343682] TCP bind hash table entries: 1024 (order: 0, 4096 bytes) [ 0.350074] TCP: Hash tables configured (established 1024 bind 1024) [ 0.356662] UDP hash table entries: 256 (order: 0, 4096 bytes) [ 0.362486] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes) [ 0.369204] NET: Registered protocol family 1 [ 0.373628] PCI: CLS 0 bytes, default 32 [ 0.379701] gptu: totally 6 16-bit timers/counters [ 0.384668] gptu: misc_register on minor 63 [ 0.388816] gptu: succeeded to request irq 126 [ 0.393316] gptu: succeeded to request irq 127 [ 0.397829] gptu: succeeded to request irq 128 [ 0.402343] gptu: succeeded to request irq 129 [ 0.406857] gptu: succeeded to request irq 130 [ 0.411374] gptu: succeeded to request irq 131 [ 0.422614] lantiq,vmmc 1f103000.vmmc: requested GPIO 465 [ 0.427971] lantiq,vmmc 1f103000.vmmc: reserved 1MB at 0x03a00000 [ 0.435828] Crashlog allocated RAM at address 0x3f00000 [ 0.444506] workingset: timestamp_bits=30 max_order=14 bucket_order=0 [ 0.467913] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.473689] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. [ 0.511288] io scheduler noop registered [ 0.515147] io scheduler deadline registered (default) [ 0.521562] 1e100c00.serial: ttyLTQ0 at MMIO 0x1e100c00 (irq = 112, base_baud = 0) is a lantiq,asc [ 0.530538] console [ttyLTQ0] enabled [ 0.537640] bootconsole [early0] disabled [ 0.547185] lantiq nor flash device: 00800000 at 10000000 [ 0.551457] ltq_nor: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x0000c2 Chip ID 0x0022cb [ 0.560418] Amd/Fujitsu Extended Query Table at 0x0040 [ 0.565422] Amd/Fujitsu Extended Query version 1.1. [ 0.570279] number of CFI chips: 1 [ 0.573635] 4 fixed-partitions partitions found on MTD device ltq_nor [ 0.579824] Creating 4 MTD partitions on "ltq_nor": [ 0.584583] 0x000000000000-0x000000010000 : "uboot" [ 0.596501] 0x000000010000-0x000000020000 : "uboot_env" [ 0.604196] 0x000000020000-0x0000007f0000 : "firmware" [ 0.653102] 2 uimage-fw partitions found on MTD device firmware [ 0.657559] 0x000000020000-0x0000001a0828 : "kernel" [ 0.665491] 0x0000001a0828-0x0000007f0000 : "rootfs" [ 0.672940] mtd: device 4 (rootfs) set to be root filesystem [ 0.677249] 1 squashfs-split partitions found on MTD device rootfs [ 0.683142] 0x0000004a0000-0x0000007f0000 : "rootfs_data" [ 0.692284] 0x0000007f0000-0x000000800000 : "board_config" [ 0.703742] libphy: Fixed MDIO Bus: probed [ 0.727881] libphy: ltq_mii: probed [ 0.829148] Registering RTL8306SDM switch with Chip ID: 0x5988, version: 0x0000 [ 0.835028] Realtek RTL8306S 1e180000.etop-ffffffff:00: attached PHY driver [Realtek RTL8306S] (mii_bus:phy_addr=1e180000.etop-ffffffff:00, irq=-1) [ 0.849870] wdt 1f8803f0.watchdog: Init done [ 0.859130] NET: Registered protocol family 10 [ 0.874695] NET: Registered protocol family 17 [ 0.877820] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this. [ 0.890285] 8021q: 802.1Q VLAN Support v1.8 [ 0.916596] VFS: Mounted root (squashfs filesystem) readonly on device 31:4. [ 0.929898] Freeing unused kernel memory: 1224K [ 0.932996] This architecture does not have kernel memory protection. [ 1.139594] random: fast init done [ 2.856497] init: Console is alive [ 2.859012] init: - watchdog - [ 5.320054] kmodloader: loading kernel modules from /etc/modules-boot.d/* [ 5.644848] dwc2 1e101000.ifxhcd: requested GPIO 464 [ 5.685181] dwc2 1e101000.ifxhcd: DWC OTG Controller [ 5.688795] dwc2 1e101000.ifxhcd: new USB bus registered, assigned bus number 1 [ 5.695854] dwc2 1e101000.ifxhcd: irq 62, io mem 0x00000000 [ 5.703486] hub 1-0:1.0: USB hub found [ 5.706521] hub 1-0:1.0: 1 port detected [ 5.712210] kmodloader: done loading kernel modules from /etc/modules-boot.d/* [ 5.722264] init: - preinit - [ 7.055263] dwc2 1e101000.ifxhcd: Mode Mismatch Interrupt: currently in Host mode [ 7.061271] dwc2 1e101000.ifxhcd: Mode Mismatch Interrupt: currently in Host mode [ 7.335085] usb 1-1: new high-speed USB device number 2 using dwc2 [ 7.339990] dwc2 1e101000.ifxhcd: Mode Mismatch Interrupt: currently in Host mode [ 7.347066] dwc2 1e101000.ifxhcd: Mode Mismatch Interrupt: currently in Host mode [ 7.396139] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready [ 7.430214] random: procd: uninitialized urandom read (4 bytes read) [ 7.564875] hub 1-1:1.0: USB hub found [ 7.567437] hub 1-1:1.0: 4 ports detected [ 8.371657] random: crng init done [ 8.419176] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [ 11.300457] jffs2: notice: (382) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found. [ 11.321692] mount_root: switching to jffs2 overlay [ 11.407239] urandom-seed: Seeding with /etc/urandom.seed [ 11.778360] procd: - early - [ 11.780193] procd: - watchdog - [ 12.599284] procd: - watchdog - [ 12.602031] procd: - ubus - [ 12.859550] procd: - init - [ 13.940286] kmodloader: loading kernel modules from /etc/modules.d/* [ 13.951813] IFXOS, Version 1.5.19 (c) Copyright 2009, Lantiq Deutschland GmbH [ 13.972894] Lantiq TAPI device driver, version 3.13.0.2, (c) 2001-2010 Lantiq Deutschland GmbH [ 13.989102] NET: Registered protocol family 8 [ 13.992053] NET: Registered protocol family 20 [ 14.033937] tun: Universal TUN/TAP device driver, 1.6 [ 14.037579] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com> [ 14.054201] PPP generic driver version 2.4.2 [ 14.071922] ip6_tables: (C) 2000-2006 Netfilter Core Team [ 14.096882] IFX MEI Version 5.00.00 [ 14.119198] Loading modules backported from Linux version wt-2017-11-01-0-gfe248fc2c180 [ 14.125697] Backport generated by backports.git v4.14-rc2-1-31-g86cf0e5d [ 14.151655] Lantiq MIPS24KEc MPS driver, version 2.2.2.5, (c) 2006-2010 Lantiq Deutschland GmbH [ 14.158861] request_timer(3, 0x000001AE, 1)... [ 14.163035] successful! [ 14.165715] Lantiq VMMC device driver, version 1.9.0.3, (c) 2006-2010 Lantiq Deutschland GmbH [ 14.181719] ip_tables: (C) 2000-2006 Netfilter Core Team [ 14.203701] nf_conntrack version 0.5.0 (1024 buckets, 4096 max) [ 14.297994] NET: Registered protocol family 24 [ 14.340170] xt_time: kernel timezone is -0000 [ 14.497210] PCI: Enabling device 0000:00:0e.0 (0000 -> 0002) [ 14.502771] rt2800pci 0000:00:0e.0: loaded eeprom from mtd device "board_config" [ 14.508731] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 2860, rev 0103 detected [ 14.516254] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0001 detected [ 14.524481] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 14.706199] kmodloader: done loading kernel modules from /etc/modules.d/* [ 38.064209] br-lan: port 1(eth0) entered blocking state [ 38.068057] br-lan: port 1(eth0) entered disabled state [ 38.074062] device eth0 entered promiscuous mode [ 38.109000] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready [ 39.075256] br-lan: port 1(eth0) entered blocking state [ 39.079063] br-lan: port 1(eth0) entered forwarding state [ 39.084807] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready [ 46.855996] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2860.bin' [ 47.131358] ieee80211 phy0: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.40 [ 47.290019] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 47.334032] br-lan: port 2(wlan0) entered blocking state [ 47.337953] br-lan: port 2(wlan0) entered disabled state [ 47.344265] device wlan0 entered promiscuous mode [ 50.414464] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 50.419880] br-lan: port 2(wlan0) entered blocking state [ 50.424554] br-lan: port 2(wlan0) entered forwarding state
Old boot log
root@OpenWrt:~# dmesg [ 0.000000] Linux version 3.18.23 (buildbot@builder1) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r47269) ) #1 Sun Jan 31 12:02:45 CET 2016 [ 0.000000] SoC: Danube rev 1.3 [ 0.000000] bootconsole [early0] enabled [ 0.000000] CPU0 revision is: 00019641 (MIPS 24KEc) [ 0.000000] MIPS: machine is ARV752DPW - Arcor 802 [ 0.000000] Determined physical RAM map: [ 0.000000] memory: 04000000 @ 00000000 (usable) [ 0.000000] Initrd not found or empty - disabling initrd [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x00000000-0x03ffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x00000000-0x03ffffff] [ 0.000000] Initmem setup node 0 [mem 0x00000000-0x03ffffff] [ 0.000000] On node 0 totalpages: 16384 [ 0.000000] free_area_init_node: node 0, pgdat 804262f0, node_mem_map 81006ea0 [ 0.000000] Normal zone: 128 pages used for memmap [ 0.000000] Normal zone: 0 pages reserved [ 0.000000] Normal zone: 16384 pages, LIFO batch:3 [ 0.000000] Primary instruction cache 16kB, VIPT, 4-way, linesize 32 bytes. [ 0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 0.000000] pcpu-alloc: [0] 0 [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256 [ 0.000000] Kernel command line: console=ttyLTQ0,115200 init=/etc/preinit [ 0.000000] PID hash table entries: 256 (order: -2, 1024 bytes) [ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) [ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) [ 0.000000] Writing ErrCtl register=00040007 [ 0.000000] Readback ErrCtl register=00040007 [ 0.000000] Memory: 60144K/65536K available (3433K kernel code, 151K rwdata, 768K rodata, 172K init, 194K bss, 5392K reserved) [ 0.000000] NR_IRQS:256 [ 0.000000] CPU Clock: 333MHz [ 0.036000] Calibrating delay loop... 221.18 BogoMIPS (lpj=442368) [ 0.036000] pid_max: default: 32768 minimum: 301 [ 0.040000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.044000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.052000] pinctrl core: initialized pinctrl subsystem [ 0.060000] NET: Registered protocol family 16 [ 0.072000] pinctrl-xway 1e100b10.pinmux: Init done [ 0.076000] dma-xway 1e104100.dma: Init done - hw rev: 3, ports: 5, channels: 20 [ 0.084000] PCI host bridge /fpi@10000000/pci@E105400 ranges: [ 0.088000] MEM 0x0000000018000000..0x0000000019ffffff [ 0.092000] IO 0x000000001ae00000..0x000000001affffff [ 0.108000] usbcore: registered new interface driver usbfs [ 0.112000] usbcore: registered new interface driver hub [ 0.116000] usbcore: registered new device driver usb [ 0.120000] PCI host bridge to bus 0000:00 [ 0.124000] pci_bus 0000:00: root bus resource [mem 0x18000000-0x19ffffff] [ 0.128000] pci_bus 0000:00: root bus resource [io 0xffffffff] [ 0.132000] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff] [ 0.136000] pci 0000:00:0e.0: [1814:0601] type 00 class 0x028000 [ 0.136000] pci 0000:00:0e.0: reg 0x10: [mem 0xffff0000-0xffffffff] [ 0.136000] pci 0000:00:0e.0: PME# supported from D0 D3hot D3cold [ 0.136000] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00 [ 0.136000] pci 0000:00:0e.0: BAR 0: assigned [mem 0x18000000-0x1800ffff] [ 0.140000] Switched to clocksource MIPS [ 0.144000] NET: Registered protocol family 2 [ 0.152000] TCP established hash table entries: 1024 (order: 0, 4096 bytes) [ 0.160000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes) [ 0.164000] TCP: Hash tables configured (established 1024 bind 1024) [ 0.172000] TCP: reno registered [ 0.176000] UDP hash table entries: 256 (order: 0, 4096 bytes) [ 0.180000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes) [ 0.188000] NET: Registered protocol family 1 [ 0.192000] PCI: CLS 0 bytes, default 32 [ 0.192000] gptu: totally 6 16-bit timers/counters [ 0.196000] gptu: misc_register on minor 63 [ 0.200000] gptu: succeeded to request irq 126 [ 0.208000] gptu: succeeded to request irq 127 [ 0.212000] gptu: succeeded to request irq 128 [ 0.216000] gptu: succeeded to request irq 129 [ 0.220000] gptu: succeeded to request irq 130 [ 0.224000] gptu: succeeded to request irq 131 [ 0.236000] lantiq,vmmc 1f103000.vmmc: requested GPIO 465 [ 0.240000] lantiq,vmmc 1f103000.vmmc: reserved 1MB at 0x03a00000 [ 0.248000] ralink,eeprom ralink_eep: using RT2860.eeprom as eeprom [ 0.256000] futex hash table entries: 256 (order: -1, 3072 bytes) [ 0.268000] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.272000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. [ 0.312000] msgmni has been set to 117 [ 0.320000] io scheduler noop registered [ 0.324000] io scheduler deadline registered (default) [ 0.332000] 1e100c00.serial: ttyLTQ0 at MMIO 0x1e100c00 (irq = 112, base_baud = 0) is a lantiq,asc [ 0.340000] console [ttyLTQ0] enabled [ 0.348000] bootconsole [early0] disabled [ 0.356000] lantiq nor flash device: 00800000 at 10000000 [ 0.360000] ltq_nor: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x00007f Chip ID 0x0022cb [ 0.372000] Amd/Fujitsu Extended Query Table at 0x0040 [ 0.376000] Amd/Fujitsu Extended Query version 1.1. [ 0.380000] number of CFI chips: 1 [ 0.384000] 4 ofpart partitions found on MTD device ltq_nor [ 0.388000] Creating 4 MTD partitions on "ltq_nor": [ 0.392000] 0x000000000000-0x000000010000 : "uboot" [ 0.400000] 0x000000010000-0x000000020000 : "uboot_env" [ 0.404000] 0x000000020000-0x0000007f0000 : "firmware" [ 0.476000] 2 uimage-fw partitions found on MTD device firmware [ 0.480000] 0x000000020000-0x0000001959b3 : "kernel" [ 0.484000] 0x0000001959b3-0x0000007f0000 : "rootfs" [ 0.492000] mtd: device 4 (rootfs) set to be root filesystem [ 0.496000] 1 squashfs-split partitions found on MTD device rootfs [ 0.500000] 0x0000004a0000-0x0000007f0000 : "rootfs_data" [ 0.572000] 0x0000007f0000-0x000000800000 : "board_config" [ 0.608000] libphy: ltq_mii: probed [ 0.700000] Registering RTL8306SDM switch with Chip ID: 0x5988, version: 0x0000 [ 0.704000] eth0: attached PHY [Realtek RTL8306S] (phy_addr=1e180000.etop-ff:00, irq=-1) [ 0.716000] wdt 1f8803f0.watchdog: Init done [ 0.724000] TCP: cubic registered [ 0.724000] NET: Registered protocol family 17 [ 0.728000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this. [ 0.740000] Bridge firewalling registered [ 0.744000] 8021q: 802.1Q VLAN Support v1.8 [ 0.756000] UBIFS error (pid 1): ubifs_mount: cannot open "ubi0:rootfs", error -19 [ 0.772000] VFS: Mounted root (squashfs filesystem) readonly on device 31:4. [ 0.780000] Freeing unused kernel memory: 172K (80445000 - 80470000) [ 3.512000] init: Console is alive [ 3.516000] init: - watchdog - [ 6.980000] IFXUSB: ifxusb_hcd: version 3.2 B110801 [ 7.484000] IFXUSB: USB core #0 soft-reset [ 7.688000] IFXUSB: USB core #0 soft-reset [ 7.692000] ifxusb_hcd ifxusb_hcd: IFX USB Controller [ 7.696000] ifxusb_hcd ifxusb_hcd: new USB bus registered, assigned bus number 1 [ 7.704000] ifxusb_hcd ifxusb_hcd: irq 62, io mem 0xbe101000 [ 7.712000] IFXUSB: Mode Mismatch Interrupt: currently in Host mode [ 7.716000] IFXUSB: Mode Mismatch Interrupt: currently in Host mode [ 7.724000] IFXUSB: Init: Power Port (0) [ 7.728000] hub 1-0:1.0: USB hub found [ 7.732000] hub 1-0:1.0: 1 port detected [ 7.736000] ifxusb_hcd ifxusb_hcd: requested GPIO 464 [ 7.996000] init: - preinit - [ 8.212000] usb 1-1: new high-speed USB device number 2 using ifxusb_hcd [ 8.468000] hub 1-1:1.0: USB hub found [ 8.468000] hub 1-1:1.0: 4 ports detected [ 8.476000] random: procd urandom read with 81 bits of entropy available [ 8.664000] random: nonblocking pool is initialized [ 12.092000] jffs2: notice: (293) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found. [ 12.112000] mount_root: switching to jffs2 overlay [ 12.152000] procd: - early - [ 12.152000] procd: - watchdog - [ 13.544000] procd: - ubus - [ 14.564000] procd: - init - [ 16.568000] IFXOS, Version 1.5.14 (c) Copyright 2009, Lantiq Deutschland GmbH [ 16.568000] M [ 16.616000] NET: Registered protocol family 10 [ 16.636000] Lantiq TAPI device driver, version 3.13.0.2, (c) 2001-2010 Lantiq Deutschland GmbH [ 16.652000] NET: Registered protocol family 8 [ 16.656000] NET: Registered protocol family 20 [ 16.672000] PPP generic driver version 2.4.2 [ 16.688000] ip6_tables: (C) 2000-2006 Netfilter Core Team [ 16.724000] IFX MEI Version 5.00.00 [ 16.744000] Infineon CPE API Driver version: DSL CPE API V3.24.4.4 [ 16.760000] Loading modules backported from Linux version master-2015-03-09-0-g141f155 [ 16.768000] Backport generated by backports.git backports-20150129-0-gdd4a670 [ 16.796000] Lantiq MIPS24KEc MPS driver, version 2.2.2.5, (c) 2006-2010 Lantiq Deutschland GmbH [ 16.804000] request_timer(3, 0x000001AE, 1)...successful! [ 16.808000] Lantiq VMMC device driver, version 1.9.0.3, (c) 2006-2010 Lantiq Deutschland GmbH [ 16.820000] ip_tables: (C) 2000-2006 Netfilter Core Team [ 16.840000] ATM1.0.26 ATM (A1) firmware version 0.17 [ 16.844000] ifxmips_atm: ATM init succeed [ 16.876000] nf_conntrack version 0.5.0 (942 buckets, 3768 max) [ 16.944000] NET: Registered protocol family 24 [ 17.008000] xt_time: kernel timezone is -0000 [ 17.120000] cfg80211: Calling CRDA to update world regulatory domain [ 17.124000] cfg80211: World regulatory domain updated: [ 17.128000] cfg80211: DFS Master region: unset [ 17.132000] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time) [ 17.144000] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A) [ 17.152000] cfg80211: (2457000 KHz - 2482000 KHz @ 20000 KHz, 92000 KHz AUTO), (N/A, 2000 mBm), (N/A) [ 17.160000] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A) [ 17.168000] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A) [ 17.176000] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s) [ 17.184000] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s) [ 17.192000] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A) [ 17.200000] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A) [ 17.436000] PCI: Enabling device 0000:00:0e.0 (0000 -> 0002) [ 17.440000] rt2800pci 0000:00:0e.0: failed to load eeprom property [ 17.444000] ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM data from 'RT2860.eeprom'. [ 17.456000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 2860, rev 0103 detected [ 17.464000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0001 detected [ 17.472000] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 34.404000] device eth0 entered promiscuous mode [ 34.420000] br-lan: port 1(eth0) entered forwarding state [ 34.424000] br-lan: port 1(eth0) entered forwarding state [ 36.428000] br-lan: port 1(eth0) entered forwarding state