Support for Mikrotik RB3011UiAS-RM?

hi all,

I am curious if anyone has considered to port Lede onto the rack-mount RB3011 from Mikrotik (list price $179, e-shop price around 120 EUR (without VAT) at this moment.

It is a IPQ8064 device with 1GB or RAM, 128MB of NAND flash and 10 GigE ports (I suppose 2 switches with 5 ports each), external RJ45 serial console port. This has no WiFi. The main downside of this device (besides the RouterOS) is the fact that it uses an external power supply rather than built-in power supply and standard IEC socket, which in a rack is a bit of a bummer.

I am after something which is rack mounted, not too expensive ($200-ish), has at least 8 GigE ports and has a decent CPU (I am doing some forward error correction calculations which use a lot of CPU, so a decent CPU is a must). This is for video distribution (steady streams ~30 Mbit each, not too bad).

At this moment, I am using the UBNT ER (8 port non-SFP version) and the smaller ERLite as a desktop 3-port variant, but the IPQ8064 should give far more CPU power...

I know there are Lede supported devices based on the same IPQ8064, but I know other Mikrotik devices use proprietary bootloaders and other stuff making Lede / OpenWRT ports difficult.

Any ideas or suggestions for alternatives or anyone willing to join forces for supporting the RB3011?

Just search RB3011UiAS-2HnD-IN - it's planned for production. Also, see https://asp24.ru/obzory/obzor-marshrutizatora-mikrotik-rb3011uias-rm/ it contains image ( https://asp24.ru/images/companies/1/rb3011uias/rb3011_w_wifi.jpg ) with connected PCI-E WiFi board.

This is main problem. Also, who knows - bootloader is locked with qualcomm trustzone or not?

I can't see how integrate dtb blob into elf image format which loads bootloader.

Mikrotik hardware repair PDF

Wow! Useful... Thanks.

1 Like

First step would be to get all info possible from bootloader.
RB3011 has serial port enabled so you can access bootloader and get a lot of info there,also get the boot log.
Then there is a lot of info in GPL sources as it is only ipq806x device Mikrotik has.
It looks like LEDE would also need to control voltage regulator

1 Like
small teaser
RouterBOOT booter 3.35

RouterBOARD 3011UiAS

CPU frequency: 1400 MHz
  Memory size: 1024 MiB
    NAND size: 128 MiB

Press any key within 2 seconds to enter setup..
trying dhcp protocol.... OK
resolved mac address 8C:AE:4C:FE:00:3C
Gateway: 192.168.2.1
transfer started ............ transfer ok, time=1.45s
setting up elf image... OK
jumping to kernel code


U-Boot 2012.07 [local,local] (Sep 25 2017 - 13:48:12)

U-boot 2012.07 
DRAM:  1003 MiB
smem: get machine type from smem failed

Disabling watch dog!
bootpar: 0x41500100
cdp: machine id 0x0
cdp: SMEM init failed
smem: read flash type failed
cdp: get boot flash failed
NAND:  Register nand0
SF: Detected W25Q16 with page size 4 KiB, total 2 MiB
Register nand1
ipq_spi: page_size: 0x100, sector_size: 0x1000, size: 0x200000
130 MiB
*** Warning - readenv() failed, using default environment

In:    serial
Out:   serial
Err:   serial
Console init_r complete!
cdp: get part failed for 0:HLOS
cdp: get part failed for rootfs
Net:   Unknown flash type
MAC1 addr:0:3:7f:ba:db:1
athrs17_reg_init: complete
athrs17_vlan_config ...done
S17 inits done
MAC2 addr:0:3:7f:ba:db:2
MAC0 addr:0:3:7f:ba:db:0
MAC3 addr:0:3:7f:ba:db:3
Port:3 speed 10Mbps
eth0, eth1, eth2, eth3
Hit any key to stop autoboot:  0 
*** Warning: no boot file name; using 'C6120164.img'
Using eth1 device
TFTP from server 198.18.1.1; our IP address is 198.18.1.100
Filename 'C6120164.img'.
Load address: 0x41000000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         ###################################
done
Bytes transferred = 4323417 (41f859 hex)
   Image Name:   ARM LEDE Linux-4.9.51
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4323353 Bytes = 4.1 MiB
   Load Address: 43008000
   Entry Point:  43008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK
mtdparts variable not set, see 'help mtdparts'
no partitions defined

defaults:
mtdids  : nand0=sys,nand1=boot
mtdparts: mtdparts=boot:1792k(apq),256k@1792k(booter)
info: "mtdparts" not set

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.51 (lynxchaus@ppc) (gcc version 7.2.0 (LEDE GCC 7.2.0 r4902-3fbf3ab44f) ) #0 SMP Fri Sep 22 08:28:59 2017
[    0.000000] CPU: ARMv7 Processor [512f04d0] revision 0 (ARMv7), cr=10c5787d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] OF: fdt:Machine model: Qualcomm IPQ8064/RB3011
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] On node 0 totalpages: 245760
[    0.000000] free_area_init_node: node 0, pgdat c09e9040, node_mem_map ef878000
[    0.000000]   Normal zone: 1536 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 196608 pages, LIFO batch:31
[    0.000000]   HighMem zone: 49152 pages, LIFO batch:15
[    0.000000] percpu: Embedded 13 pages/cpu @ef844000 s21068 r8192 d23988 u53248
[    0.000000] pcpu-alloc: s21068 r8192 d23988 u53248 alloc=13*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 244224
[    0.000000] Kernel command line: console=ttyMSM0,115200n8 earlyprintk=serial,0x16640000,115200 debug
[    0.000000] Bootloader command line (ignored): console=ttyMSM0,115200n8 earlyprintk=serial,0x16640000,115200 debug initcall_debug
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 965932K/983040K available (3934K kernel code, 288K rwdata, 1324K rodata, 2432K init, 242K bss, 17108K reserved, 0K cma-reserved, 196608K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xf0800000 - 0xff800000   ( 240 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xf0000000   ( 768 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0208000 - 0xc05dfe30   (3936 kB)
[    0.000000]       .init : 0xc074c000 - 0xc09ac000   (2432 kB)
[    0.000000]       .data : 0xc09ac000 - 0xc09f42d8   ( 289 kB)
[    0.000000]        .bss : 0xc09f6000 - 0xc0a328e8   ( 243 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] clocksource: dg_timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 305801671480 ns
[    0.000007] sched_clock: 32 bits at 6MHz, resolution 160ns, wraps every 343597383600ns
[    0.007986] Switching to timer-based delay loop, resolution 160ns
[    0.014419] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.50 BogoMIPS (lpj=62500)
[    0.024478] pid_max: default: 32768 minimum: 301
[    0.029326] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.035853] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.043659] CPU: Testing write buffer coherency: ok
[    0.048156] Setting up static identity map for 0x422082c0 - 0x42208318
[    0.059797] Brought up 2 CPUs
[    0.061816] SMP: Total of 2 processors activated (25.00 BogoMIPS).
[    0.068164] CPU: All CPU(s) started in SVC mode.
[    0.075323] devtmpfs: initialized
[    0.090023] VFP support v0.3: implementor 51 architecture 64 part 4d variant 2 rev 0
[    0.096987] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.106788] futex hash table entries: 512 (order: 3, 32768 bytes)
[    0.112938] pinctrl core: initialized pinctrl subsystem
[    0.119547] NET: Registered protocol family 16
[    0.123292] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.161128] cpuidle: using governor ladder
[    0.192150] cpuidle: using governor menu
[    0.197282] qcom_rpm 108000.rpm: could not find pctldev for node /soc/pinmux@800000/i2c4_pinmux, deferring probe
[    0.226093] qcom-smem smem: SMEM is not initialized by SBL
[    0.230744] qcom-smem: probe of smem failed with error -22
[    0.273067] msm_bus_fabric_init_driver
[    0.277118] usbcore: registered new interface driver usbfs
[    0.281724] usbcore: registered new interface driver hub
[    0.287196] usbcore: registered new device driver usb
[    0.292198] pps_core: LinuxPPS API ver. 1 registered
[    0.297188] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.306487] PTP clock support registered
[    0.312312] clocksource: Switched to clocksource dg_timer
[    0.323004] NET: Registered protocol family 2
[    0.326945] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[    0.333680] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    0.340119] TCP: Hash tables configured (established 8192 bind 8192)
[    0.346595] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    0.352468] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    0.359133] NET: Registered protocol family 1
[    0.363425] PCI: CLS 0 bytes, default 64
[    2.574824] No memory allocated for crashlog
[    2.578523] workingset: timestamp_bits=30 max_order=18 bucket_order=0
[    2.595153] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    2.600040] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    2.618995] bounce: pool size: 64 pages
[    2.621892] io scheduler noop registered
[    2.626093] io scheduler deadline registered (default)
[    2.632679] gpio-export soc:gpio_export: 1 gpio(s) exported
[    2.641759] L2 @ QSB rate. Forcing new rate.
[    2.645422] L2 @ 384000 KHz
[    2.648127] CPU0 @ 800000 KHz
[    2.650986] CPU1 @ QSB rate. Forcing new rate.
[    2.655826] CPU1 @ 384000 KHz
[    2.662933] gsbi 12480000.gsbi: GSBI port protocol: 3 crci: 0
[    2.667953] gsbi 16200000.gsbi: GSBI port protocol: 6 crci: 0
[    2.673690] ERROR: could not get clock /soc/gsbi@16200000:iface(0)
[    2.679846] gsbi: probe of 16200000.gsbi failed with error -2
[    2.685873] gsbi 16300000.gsbi: GSBI port protocol: 6 crci: 0
[    2.691640] gsbi 1a200000.gsbi: GSBI port protocol: 3 crci: 0
[    2.698333] gsbi 16600000.gsbi: GSBI port protocol: 6 crci: 0
[    2.704880] tcsr 1a400000.syscon: setting usb port select = 3
[    2.710159] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    2.717875] msm_serial 16640000.serial: msm_serial: detected port #0
[    2.723591] msm_serial 16640000.serial: uartclk = 7372800
[    2.728835] 16640000.serial: ttyMSM0 at MMIO 0x16640000 (irq = 103, base_baud = 460800) is a MSM
[    2.737721] msm_serial: console setup o�[    2.742409] console [ttyMSM0] enabled
[    2.742409] console [ttyMSM0] enabled
[    2.748879] bootconsole [earlycon0] disabled
[    2.748879] bootconsole [earlycon0] disabled
[    2.757987] msm_serial: driver initialized
[    2.770618] loop: module loaded
[    2.773441] nand: device found, Manufacturer ID: 0x98, Chip ID: 0xa1
[    2.773487] nand: Toshiba NAND 128MiB 1,8V 8-bit
[    2.779180] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    2.783955] 2 ofpart partitions found on MTD device qcom_nand.0
[    2.791159] Creating 2 MTD partitions on "qcom_nand.0":
[    2.797056] 0x000000000000-0x000000800000 : "boot"
[    2.811984] random: fast init done
[    2.827642] 0x000000800000-0x000008000000 : "firmware"
[    3.181910] no rootfs found after FIT image in "firmware"
[    3.183155] spi_qup 1a280000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    3.187967] m25p80 spi32766.0: found s25fl016k, expected s25fl256s1
[    3.193560] m25p80 spi32766.0: s25fl016k (2048 Kbytes)
[    3.199540] 2 ofpart partitions found on MTD device spi32766.0
[    3.204796] Creating 2 MTD partitions on "spi32766.0":
[    3.210524] 0x000000000000-0x0000001c0000 : "ipq8064"
[    3.217928] 0x0000001c0000-0x000000200000 : "booter"
[    3.223994] libphy: GPIO Bitbanged MDIO: probed
[    3.272336] switch0: Atheros AR8337 rev. 2 switch registered on gpio-0
[    4.242869] libphy: GPIO Bitbanged MDIO: probed
[    4.287490] switch1: Atheros AR8337 rev. 2 switch registered on gpio-1
[    5.271223] libphy: Fixed MDIO Bus: probed
[    5.271268] libphy: mdio_driver_register: qca8k
[    5.297207] stmmac - user ID: 0x10, Synopsys ID: 0x37
[    5.297249]  Ring mode enabled
[    5.301247]  DMA HW capability register supported[    5.304512]  Enhanced/Alternate descriptors
[    5.309838]  Enabled extended descriptors
[    5.312897]  RX Checksum Offload Engine supported
[    5.316965]  COE Type 2
[    5.321648]  TX Checksum insertion supported
[    5.323985]  Wake-Up On Lan supported
[    5.328422]  Enable RX Mitigation via HW Watchdog Timer
[    5.348405] stmmac - user ID: 0x10, Synopsys ID: 0x37
[    5.348443]  Ring mode enabled
[    5.352439]  DMA HW capability register supported[    5.355693]  Enhanced/Alternate descriptors
[    5.361033]  Enabled extended descriptors
[    5.364066]  RX Checksum Offload Engine supported
[    5.368161]  COE Type 2
[    5.372936]  TX Checksum insertion supported
[    5.375104]  Wake-Up On Lan supported
[    5.379618]  Enable RX Mitigation via HW Watchdog Timer
[    5.405911] stmmac - user ID: 0x10, Synopsys ID: 0x37
[    5.405953]  Ring mode enabled
[    5.409947]  DMA HW capability register supported[    5.413008]  Enhanced/Alternate descriptors
[    5.418543]  Enabled extended descriptors
[    5.421503]  RX Checksum Offload Engine supported
[    5.425825]  COE Type 2
[    5.430352]  TX Checksum insertion supported
[    5.432698]  Wake-Up On Lan supported
[    5.437129]  Enable RX Mitigation via HW Watchdog Timer
[    5.457006] stmmac - user ID: 0x10, Synopsys ID: 0x37
[    5.457044]  Ring mode enabled
[    5.461041]  DMA HW capability register supported[    5.464116]  Enhanced/Alternate descriptors
[    5.469638]  Enabled extended descriptors
[    5.472695]  RX Checksum Offload Engine supported
[    5.476764]  COE Type 2
[    5.481448]  TX Checksum insertion supported
[    5.483776]  Wake-Up On Lan supported
[    5.488220]  Enable RX Mitigation via HW Watchdog Timer
[    5.493215] i2c /dev entries driver
[    5.498197] Calibration not found.
[    5.500303] qcom-tsens 900000.thermal-sensor: tsens calibration failed
[    5.505750] Speed bin: 0
[    5.510268] PVS bin: 1
[    5.515661] cpuidle: enable-method property 'qcom,kpss-acc-v1' found operations
[    5.515774] cpuidle: enable-method property 'qcom,kpss-acc-v1' found operations
[    5.523265] sdhci: Secure Digital Host Controller Interface driver
[    5.529630] sdhci: Copyright(c) Pierre Ossman
[    5.535980] sdhci-pltfm: SDHCI platform and OF driver helper
[    5.543124] NET: Registered protocol family 10
[    5.548717] NET: Registered protocol family 17
[    5.550738] 8021q: 802.1Q VLAN Support v1.8
[    5.554997] Registering SWP/SWPB emulation handler
[    5.576731] qcom_rpm 108000.rpm: RPM firmware 3.0.16777342
[    5.593751] s1a: Bringing 0uV into 1050000-1050000uV
[    5.594306] s1b: Bringing 0uV into 1050000-1050000uV
[    5.598264] s2a: Bringing 0uV into 800000-800000uV
[    5.603318] s2b: Bringing 0uV into 800000-800000uV
[    5.612218] of: dev_pm_opp_of_cpumask_add_table: couldn't find opp table for cpu:0, -19
[    5.613198] of: dev_pm_opp_of_cpumask_add_table: couldn't find opp table for cpu:1, -19
[�[    5.632085] Freeing unused kernel memory: 2432K
[    5.632105] This architecture does not have kernel memory protection.
[    5.641695] init: Console is alive
[    5.642110] init: - watchdog -
[    5.652357] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    5.654726] Button Hotplug driver version 0.4.1
[    5.665257] JFS: nTxBlock = 7565, nTxLock = 60522
[    5.669529] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    5.671556] SCSI subsystem initialized
[    5.676632] ehci-platform: EHCI generic platform driver
[    5.804202] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    5.804268] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    5.808800] xhci-hcd xhci-hcd.0.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x02010010
[    5.816312] xhci-hcd xhci-hcd.0.auto: irq 104, io mem 0x11000000
[    5.826062] hub 1-0:1.0: USB hub found
[    5.831128] hub 1-0:1.0: 1 port detected
[    5.835147] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    5.838720] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    5.844272] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    5.852506] hub 2-0:1.0: USB hub found
[    5.860032] hub 2-0:1.0: 1 port detected
[    5.864040] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    5.867547] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
[    5.873137] xhci-hcd xhci-hcd.1.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x02010010
[    5.880438] xhci-hcd xhci-hcd.1.auto: irq 105, io mem 0x10000000
[    5.890173] hub 3-0:1.0: USB hub found
[    5.895461] hub 3-0:1.0: 1 port detected
[    5.899251] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    5.903037] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
[    5.908404] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
[    5.916784] hub 4-0:1.0: USB hub found
[    5.924270] hub 4-0:1.0: 1 port detected
[    5.931821] input: gpio-keys as /devices/platform/gpio-keys/input/input0
[    5.934671] usbcore: registered new interface driver usb-storage
[    5.939570] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    5.947951] init: - preinit -
/bin/board_detect: line 12: Unsupported: not found
[    6.094521] eth0: device MAC address 00:03:7f:ba:db:00
[    6.105543] dwmac1000: Master AXI performs any burst length
[    6.105585] ipq806x-gmac-dwmac 37000000.ethernet eth0: IEEE 1588-2008 Advanced Timestamp supported
[    6.110142] ipq806x-gmac-dwmac 37000000.ethernet eth0: registered PTP clock
[    6.119204] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    7.182757] ipq806x-gmac-dwmac 37000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
[    7.182835] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[    9.208573] procd: - early -
[    9.208715] procd: - watchdog -                                           
[    9.881204] procd: - watchdog -                                           
[    9.881517] procd: - ubus -                                               
[    9.935192] procd: - init -                                               
Please press Enter to activate this console.                                                                                     
[   10.024732] kmodloader: loading kernel modules from /etc/modules.d/*                                                          
[   10.032794] device-mapper: ioctl: 4.35.0-ioctl (2016-06-23) initialised: dm-devel@redhat.com                                  
[   10.048793] ip6_tables: (C) 2000-2006 Netfilter Core Team                                                                     
[   10.074901] ip_tables: (C) 2000-2006 Netfilter Core Team                  
[   10.084216] nf_conntrack version 0.5.0 (15360 buckets, 61440 max)         
[   10.110983] xt_time: kernel timezone is -0000                             
[   10.113448] kmodloader: done loading kernel modules from /etc/modules.d/*
[   12.038811] dwmac1000: Master AXI performs any burst length
[   12.038854] ipq806x-gmac-dwmac 37000000.ethernet eth0: IEEE 1588-2008 Advanced Timestamp supported
[   12.047416] ipq806x-gmac-dwmac 37000000.ethernet eth0: registered PTP clock
[   12.054629] br-lan: port 1(eth0) entered blocking state
[   12.059070] br-lan: port 1(eth0) entered disabled state
[   12.064569] device eth0 entered promiscuous mode
[   12.080752] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   12.093264] eth1: device MAC address 00:03:7f:ba:db:01
[   12.094085] dwmac1000: Master AXI performs any burst length
[   12.097305] ipq806x-gmac-dwmac 37200000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[   12.108564] ipq806x-gmac-dwmac 37200000.ethernet eth1: registered PTP clock
[   12.111971] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[   13.105433] ipq806x-gmac-dwmac 37000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
[   13.106028] br-lan: port 1(eth0) entered blocking state
[   13.113406] br-lan: port 1(eth0) entered forwarding state
[   13.119873] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[   13.182770] ipq806x-gmac-dwmac 37200000.ethernet eth1: Link is Up - 1Gbps/Full - flow control off
[   13.182837] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready



BusyBox v1.27.2 () built-in shell (ash)

     _________
    /        /\      _    ___ ___  ___
   /  LE    /  \    | |  | __|   \| __|
  /    DE  /    \   | |__| _|| |) | _|
 /________/  LE  \  |____|___|___/|___|                      lede-project.org
 \        \   DE /
  \    LE  \    /  -----------------------------------------------------------
   \  DE    \  /    Reboot (SNAPSHOT, r4902-3fbf3ab44f)
    \________\/    -----------------------------------------------------------

=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@LEDE:/# [11341.832843] random: crng init done
2 Likes

Awesome,is your source tree on github?

Nope. It's not ready for anything. SFP not working, bootloader need shrinking to fit in boot partition.
USB working, LEDs - working.

1 Like

I am asking just to see the code.
I am really interested in that

Has there been any progress?

@LynxChaus Any progress?
I am really interested in your source, should have one extra RB3011 that will be moved out of production so I can work on it.

1 Like

Definitely interested, if you don't mind releasing what you've done so far.

Three years ago I wrote a program named kernel2minor.
This is an OpenWRT kernel packer to format that understandable to the RouterBOOT. And now, when you build a image of the OpenWRT for the Mikrotik(NOR or NAND flash), the OpenWRT uses this packer. I think, that in a new RB3011 you can also use the same packer! The RouterBOOT is still waiting for yaffs as a fs for kernel partition.

P.S:
Yes, and I, too, am going to take an rb3011 closer in 2-3 weeks. Now I’ll just bring to mind the firmware for a RB2011UiAS-RM.

I just recently started a SFP on RB2011UiAS-RM. The trick is that one of the LED outputs of the AR8327 switch chip actually controls the transistor which turns on the power to the SFP PHY !!!

Accordingly, to turn on the power to the PHY, you need to do something like this(value is 0x0230c300 instead of 0x0030c300):

static struct ar8327_led_cfg rb2011_ar8327_led_cfg = {
	.led_ctrl0 = 0xc731c731,
	.led_ctrl1 = 0x00000000,
	.led_ctrl2 = 0x00000000,
	.led_ctrl3 = 0x0230c300,
	.open_drain = false,
};

For the rest, the process of SFP(SGMII) initiating is the same as for RB2011, so see mach-rb2011.c for details.

And in the RB2011UiAS-RM. an I2C is connected to the SFP and through it you can read / write the EEPROM and get the DDM data:

insmod i2c-gpio-custom bus0=0,11,21
i2cdetect 0
i2cdump 0 0x50

Yes, I know - mikrotik's HW eng use atheros LED output as additional GPO lines. Stuppid idea but save $0.02 on additional GPIO extender IC.

Here is my first results:

RouterBOOT booter 6.43.7

RouterBOARD 3011UiAS

CPU frequency: 1400 MHz
  Memory size: 1024 MiB
    NAND size: 128 MiB

Press any key within 2 seconds to enter setup..
trying bootp protocol.... OK
Got IP address: 172.20.1.54
resolved mac address 0C:54:A5:45:C4:E9
Gateway: 172.20.1.1
transfer started ................. transfer ok, time=1.26s
setting up elf image... OK
jumping to kernel code


U-Boot 2012.07 [local,local] (Feb 08 2019 - 20:06:50)

DRAM:  1003 MiB
relocated board_init_r !!! OK !!!
smem: get machine type from smem failed
smem: read flash type failed
cdp: get boot flash failed
NAND:  0 MiB
MMC:   
smem: read flash type failed
*** Warning - readenv() failed, using default environment

PCI0 Link Intialized
PCI1 Link Intialized
PCI2 Link Intialized
In:    serial
Out:   serial
Err:   serial
cdp: get part failed for 0:HLOS
cdp: get part failed for rootfs
Net:   Unknown flash type
MAC0 addr:0:3:7f:ba:db:0
athrs17_reg_init: complete
athrs17_vlan_config ...done
S17c init  done
MAC2 addr:0:3:7f:ba:db:2
eth0, eth1
Hit "gl" key to stop booting:  0
MMC Device -504365062 not found
MMC Device -504365062 not found
bootipq: unsupported boot flash type
(IPQ) # setenv baudrate 115200
## Switch baudrate to 115200 bps andpress ENTER ...
(IPQ) # setenv ipaddr 172.20.1.3
(IPQ) # setenv netmask 255.255.255.0 
(IPQ) # setenv serverip 172.20.1.77
(IPQ) # setenv bootfile "/linux_t2.bin"
(IPQ) # setenv bootargs loglevel=8 earlycon=msm_serial_dm,0x16640000 console=ttyMSM0,115200
(IPQ) # tftpboot
Mac0 unit failed
Using eth1 device
TFTP from server 172.20.1.77; our IP address is 172.20.1.3
Filename '/linux_t2.bin'.
Load address: 0x44000000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ############################################
done
Bytes transferred = 5413407 (529a1f hex)
(IPQ) # bootm 0x44000000
   Image Name:   ARM OpenWrt Linux-4.14.97
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    5413343 Bytes = 5.2 MiB
   Load Address: 42208000
   Entry Point:  42208000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK
mtdids not defined, no default present
info: "mtdparts" not set

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.14.97 (root@adron-nout.yapic.net) (gcc version 7.4.0 (OpenWrt GCC 7.4.0 r9274-ab189
[    0.000000] CPU: ARMv7 Processor [512f04d0] revision 0 (ARMv7), cr=10c5787d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] OF: fdt: Machine model: Netgear Nighthawk X4 R7500v2
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] random: get_random_bytes called from start_kernel+0x88/0x408 with crng_init=0
[    0.000000] percpu: Embedded 15 pages/cpu @dda03000 s29324 r8192 d23924 u61440
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 121920
[    0.000000] Kernel command line: 
[    0.000000] Bootloader command line (ignored): 
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 473300K/491520K available (4753K kernel code, 152K rwdata, 1264K rodata, 4096K init, 228K )
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xde800000 - 0xff800000   ( 528 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xde000000   ( 480 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0208000 - 0xc07a4450   (5746 kB)
[    0.000000]       .init : 0xc0a00000 - 0xc0e00000   (4096 kB)
[    0.000000]       .data : 0xc0e00000 - 0xc0e261c0   ( 153 kB)
[    0.000000]        .bss : 0xc0e28000 - 0xc0e610d8   ( 229 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] clocksource: dg_timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 305801671480 ns
[    0.000006] sched_clock: 32 bits at 6MHz, resolution 160ns, wraps every 343597383600ns
[    0.000019] Switching to timer-based delay loop, resolution 160ns
[    0.000207] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.50 BogoMIPS (lpj=625)
[    0.000233] pid_max: default: 32768 minimum: 301
[    0.000364] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000382] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000960] CPU: Testing write buffer coherency: ok
[    0.001726] Setting up static identity map for 0x42300000 - 0x42300060
[    0.001880] Hierarchical SRCU implementation.
[    0.002621] smp: Bringing up secondary CPUs ...
[    0.004429] smp: Brought up 1 node, 2 CPUs
[    0.004447] SMP: Total of 2 processors activated (25.00 BogoMIPS).
[    0.004458] CPU: All CPU(s) started in SVC mode.
[    0.013840] VFP support v0.3: implementor 51 architecture 64 part 4d variant 2 rev 0
[    0.013996] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.014022] futex hash table entries: 512 (order: 3, 32768 bytes)
[    0.014129] pinctrl core: initialized pinctrl subsystem
[    0.015120] NET: Registered protocol family 16
[    0.015368] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.016753] cpuidle: using governor ladder
[    0.016820] cpuidle: using governor menu
[    0.032317] qcom-smem smem: SMEM is not initialized by SBL
[    0.032373] qcom-smem: probe of smem failed with error -22
[    0.037982] msm_bus_fabric_init_driver
[    0.039355] usbcore: registered new interface driver usbfs
[    0.039437] usbcore: registered new interface driver hub
[    0.039517] usbcore: registered new device driver usb
[    0.039579] pps_core: LinuxPPS API ver. 1 registered
[    0.039592] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.039626] PTP clock support registered
[    0.041286] clocksource: Switched to clocksource dg_timer
[    0.044774] NET: Registered protocol family 2
[    0.045282] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.045329] TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
[    0.045382] TCP: Hash tables configured (established 4096 bind 4096)
[    0.045477] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.045504] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.045684] NET: Registered protocol family 1
[    2.688506] No memory allocated for crashlog
[    2.688710] workingset: timestamp_bits=30 max_order=17 bucket_order=0
[    2.693611] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    2.693629] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    2.704133] io scheduler noop registered
[    2.704163] io scheduler deadline registered (default)
[    2.706166] qcom-pcie 1b500000.pci: 1b500000.pci supply vdda not found, using dummy regulator
[    2.706356] qcom-pcie 1b500000.pci: 1b500000.pci supply vdda_phy not found, using dummy regulator
[    2.706486] qcom-pcie 1b500000.pci: 1b500000.pci supply vdda_refclk not found, using dummy regulator
[    2.707484] OF: PCI: host bridge /soc/pci@1b500000 ranges:
[    2.707553] OF: PCI:    IO 0x0fe00000..0x0fefffff -> 0x0fe00000
[    2.707593] OF: PCI:   MEM 0x08000000..0x0fdfffff -> 0x08000000
[    3.739824] qcom-pcie 1b500000.pci: phy link never came up
[    3.741825] qcom-pcie 1b500000.pci: cannot initialize host
[    3.742679] qcom-pcie: probe of 1b500000.pci failed with error -110
[    3.743208] qcom-pcie 1b700000.pci: 1b700000.pci supply vdda not found, using dummy regulator
[    3.743348] qcom-pcie 1b700000.pci: 1b700000.pci supply vdda_phy not found, using dummy regulator
[    3.743505] qcom-pcie 1b700000.pci: 1b700000.pci supply vdda_refclk not found, using dummy regulator
[    3.744472] OF: PCI: host bridge /soc/pci@1b700000 ranges:
[    3.744534] OF: PCI:    IO 0x31e00000..0x31efffff -> 0x31e00000
[    3.744573] OF: PCI:   MEM 0x2e000000..0x31dfffff -> 0x2e000000
[    4.777867] qcom-pcie 1b700000.pci: phy link never came up
[    4.779832] qcom-pcie 1b700000.pci: cannot initialize host
[    4.780596] qcom-pcie: probe of 1b700000.pci failed with error -110
[    4.783896] L2 @ QSB rate. Forcing new rate.
[    4.784178] L2 @ 384000 KHz
[    4.784381] CPU0 @ 800000 KHz
[    4.784401] CPU1 @ QSB rate. Forcing new rate.
[    4.784680] CPU1 @ 384000 KHz
[    4.790634] gsbi 16600000.gsbi: GSBI port protocol: 6 crci: 0
[    4.792449] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    4.793647] msm_serial 16640000.serial: msm_serial: detected port #0
[    4.793794] msm_serial 16640000.serial: uartclk = 7372800
[    4.793923] 16640000.serial: ttyMSM0 at MMIO 0x16640000 (irq = 99, base_baud = 460800) is a MSM
[    4.793983] msm_serial: console setup on port #0
[    5.419153] console [ttyMSM0] enabled
[    5.424334] msm_serial: driver initialized
[    5.435410] loop: module loaded
[    5.437988] nand: device found, Manufacturer ID: 0x98, Chip ID: 0xa1
[    5.438041] nand: Toshiba NAND 128MiB 1,8V 8-bit
[    5.444097] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    5.448736] 9 fixed-partitions partitions found on MTD device qcom_nand.0
[    5.456053] Creating 9 MTD partitions on "qcom_nand.0":
[    5.462927] 0x000000000000-0x000000c80000 : "qcadata"
[    5.477109] random: fast init done
[    5.507444] 0x000000c80000-0x000001180000 : "APPSBL"
[    5.523933] 0x000001180000-0x000001200000 : "APPSBLENV"
[    5.526613] 0x000001200000-0x000001340000 : "art"
[    5.532957] 0x000001340000-0x000001480000 : "artbak"
[    5.537957] 0x000001480000-0x000001880000 : "kernel"
[    5.551453] 0x000001880000-0x000003480000 : "ubi"
[    5.638426] 0x000003480000-0x000007900000 : "netgear"
[    5.850440] 0x000007900000-0x000008000000 : "reserve"
[    5.874826] libphy: GPIO Bitbanged MDIO: probed
[    5.913594] switch0: Atheros AR8337 rev. 2 switch registered on gpio-0
[    6.794984] ar8327: qca,phy-rgmii-en is not specified
[    6.795566] libphy: Fixed MDIO Bus: probed
[    6.814792] ipq806x-gmac-dwmac 37200000.ethernet: PTP uses main clock
[    6.815265] stmmac - user ID: 0x10, Synopsys ID: 0x37
[    6.820234] ipq806x-gmac-dwmac 37200000.ethernet: Ring mode enabled
[    6.825385] ipq806x-gmac-dwmac 37200000.ethernet: DMA HW capability register supported
[    6.831345] ipq806x-gmac-dwmac 37200000.ethernet: Enhanced/Alternate descriptors
[    6.839424] ipq806x-gmac-dwmac 37200000.ethernet: Enabled extended descriptors
[    6.846952] ipq806x-gmac-dwmac 37200000.ethernet: RX Checksum Offload Engine supported
[    6.854013] ipq806x-gmac-dwmac 37200000.ethernet: COE Type 2
[    6.861885] ipq806x-gmac-dwmac 37200000.ethernet: TX Checksum insertion supported
[    6.867628] ipq806x-gmac-dwmac 37200000.ethernet: Wake-Up On Lan supported
[    6.875104] ipq806x-gmac-dwmac 37200000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    6.896215] ipq806x-gmac-dwmac 37400000.ethernet: PTP uses main clock
[    6.896550] stmmac - user ID: 0x10, Synopsys ID: 0x37
[    6.901762] ipq806x-gmac-dwmac 37400000.ethernet: Ring mode enabled
[    6.906689] ipq806x-gmac-dwmac 37400000.ethernet: DMA HW capability register supported
[    6.912854] ipq806x-gmac-dwmac 37400000.ethernet: Enhanced/Alternate descriptors
[    6.920752] ipq806x-gmac-dwmac 37400000.ethernet: Enabled extended descriptors
[    6.928395] ipq806x-gmac-dwmac 37400000.ethernet: RX Checksum Offload Engine supported
[    6.935426] ipq806x-gmac-dwmac 37400000.ethernet: COE Type 2
[    6.943328] ipq806x-gmac-dwmac 37400000.ethernet: TX Checksum insertion supported
[    6.949049] ipq806x-gmac-dwmac 37400000.ethernet: Wake-Up On Lan supported
[    6.956515] ipq806x-gmac-dwmac 37400000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    6.964337] i2c /dev entries driver
[    6.973114] Calibration not found.
[    6.975003] qcom-tsens 900000.thermal-sensor: tsens calibration failed
[    6.980101] Speed bin: 0
[    6.985076] PVS bin: 1
[    6.989488] cpuidle: enable-method property 'qcom,kpss-acc-v1' found operations
[    6.989943] cpuidle: enable-method property 'qcom,kpss-acc-v1' found operations
[    6.997859] sdhci: Secure Digital Host Controller Interface driver
[    7.004426] sdhci: Copyright(c) Pierre Ossman
[    7.010587] sdhci-pltfm: SDHCI platform and OF driver helper
[    7.017498] NET: Registered protocol family 10
[    7.022793] Segment Routing with IPv6
[    7.025120] NET: Registered protocol family 17
[    7.029340] 8021q: 802.1Q VLAN Support v1.8
[    7.033250] Registering SWP/SWPB emulation handler
[    7.054279] qcom_rpm 108000.rpm: RPM firmware 3.0.16777342
[    7.069246] s1a: supplied by regulator-dummy
[    7.069368] s1a: Bringing 0uV into 1050000-1050000uV
[    7.073106] s1b: supplied by regulator-dummy
[    7.077639] s1b: Bringing 0uV into 1050000-1050000uV
[    7.082264] s2a: supplied by regulator-dummy
[    7.086824] s2a: Bringing 0uV into 800000-800000uV
[    7.091354] s2b: supplied by regulator-dummy
[    7.095757] s2b: Bringing 0uV into 800000-800000uV
[    7.101594] thermal thermal_zone0: failed to read out thermal zone (-110)
[    7.110245] UBI: auto-attach mtd6
[    7.111486] ubi0: attaching mtd6
[    7.221283] random: crng init done
[    7.583555] ubi0: scanning is finished
[    7.583590] ubi0 error: ubi_read_volume_table: the layout volume was not found
[    7.586269] ubi0 error: ubi_attach_mtd_dev: failed to attach mtd6, error -22
[    7.593473] UBI error: cannot attach�[    7.607696] Freeing unused kernel memory: 4096K
[    7.659410] init: Console is alive
[    7.659656] init: - watchdog -
[    7.679093] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    7.683609] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    7.689907] SCSI subsystem initialized
[    7.697333] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.699427] ehci-platform: EHCI generic platform driver
[    7.705668] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.708563] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    7.714592] ohci-platform: OHCI generic platform driver
[    7.722848] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.782653] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.841524] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.845698] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    7.846646] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    7.852486] xhci-hcd xhci-hcd.0.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x0000000002010010
[    7.859771] xhci-hcd xhci-hcd.0.auto: irq 100, io mem 0x11000000
[    7.869787] hub 1-0:1.0: USB hub found
[    7.875418] hub 1-0:1.0: 1 port detected
[    7.879088] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    7.883059] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    7.888267] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0  SuperSpeed
[    7.896197] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.902612] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    7.909029] hub 2-0:1.0: USB hub found
[    7.917118] hub 2-0:1.0: 1 port detected
[    7.920813] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    7.924701] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
[    7.930070] xhci-hcd xhci-hcd.1.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x0000000002010010
[    7.937586] xhci-hcd xhci-hcd.1.auto: irq 101, io mem 0x10000000
[    7.947207] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.953621] hub 3-0:1.0: USB hub found
[    7.959116] hub 3-0:1.0: 1 port detected
[    7.963193] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    7.966998] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
[    7.972360] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0  SuperSpeed
[    7.980120] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    7.986635] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
[    7.993115] hub 4-0:1.0: USB hub found
[    8.001040] hub 4-0:1.0: 1 port detected
[    8.005147] ahci 29000000.sata: couldn't get PHY in node sata: -517
[    8.008790] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    8.018118] init: - preinit -
[    9.344449] ipq806x-gmac-dwmac 37400000.ethernet eth1: device MAC address a6:d4:09:c1:9c:05
[    9.344583] Generic PHY fixed-0:01: attached PHY driver [Generic PHY] (mii_bus:phy_addr=fixed-0:01, irq=POLL)
[    9.352489] dwmac1000: Master AXI performs any burst length
[    9.361744] ipq806x-gmac-dwmac 37400000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[    9.367156] ipq806x-gmac-dwmac 37400000.ethernet eth1: registered PTP clock
[    9.376634] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[    9.383468] ahci 29000000.sata: couldn't get PHY in node sata: -517
sendto(): Network unreachable
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   10.432549] ipq806x-gmac-dwmac 37400000.ethernet eth1: Link is Up - 1Gbps/Full - flow control off
[   10.432652] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[   12.599491] procd: - early -
[   12.599672] procd: - watchdog -
[   13.240974] procd: - watchdog -
[   13.241173] procd: - ubus -
[   13.295533] procd: - init -
Please press Enter to activate this console.
[   13.413076] kmodloader: loading kernel modules from /etc/modules.d/*
[   13.415879] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   13.424709] Loading modules backported from Linux version v4.19.7-0-g61c68f2a2af0
[   13.424740] Backport generated by backports.git v4.19.7-1-0-g148b072d
[   13.432553] ip_tables: (C) 2000-2006 Netfilter Core Team
[   13.441398] nf_conntrack version 0.5.0 (8192 buckets, 32768 max)
[   13.470471] usbcore: registered new interface driver r8152
[   13.484162] xt_time: kernel timezone is -0000
[   13.503208] PPP generic driver version 2.4.2
[   13.503669] NET: Registered protocol family 24
[   13.513962] kmodloader: done loading kernel modules from /etc/modules.d/*
[   18.206234] Generic PHY fixed-0:01: attached PHY driver [Generic PHY] (mii_bus:phy_addr=fixed-0:01, irq=POLL)
[   18.206986] dwmac1000: Master AXI performs any burst length
[   18.215225] ipq806x-gmac-dwmac 37400000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[   18.220600] ipq806x-gmac-dwmac 37400000.ethernet eth1: registered PTP clock
[   18.229697] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[   18.236888] ahci 29000000.sata: couldn't get PHY in node sata: -517
[   18.252750] br-lan: port 1(eth1.1) entered blocking state
[   18.252778] br-lan: port 1(eth1.1) entered disabled state
[   18.257305] device eth1.1 entered promiscuous mode
[   18.262577] device eth1 entered promiscuous mode
[   18.273005] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   18.278942] ipq806x-gmac-dwmac 37200000.ethernet eth0: device MAC address f2:6c:c2:3c:2b:fd
[   18.279072] Generic PHY fixed-0:00: attached PHY driver [Generic PHY] (mii_bus:phy_addr=fixed-0:00, irq=POLL)
[   18.287318] ahci 29000000.sata: couldn't get PHY in node sata: -517
[   18.391679] ipq806x-gmac-dwmac 37200000.ethernet: Failed to reset the dma
[   18.391709] ipq806x-gmac-dwmac 37200000.ethernet eth0: stmmac_hw_setup: DMA engine initialization failed
[   18.397449] ipq806x-gmac-dwmac 37200000.ethernet eth0: stmmac_open: Hw setup failed
[   19.291792] ipq806x-gmac-dwmac 37400000.ethernet eth1: Link is Up - 1Gbps/Full - flow control off
[   19.292383] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[   19.300111] br-lan: port 1(eth1.1) entered blocking state
[   19.305804] br-lan: port 1(eth1.1) entered forwarding state
[   19.312160] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready



BusyBox v1.30.0 () built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt SNAPSHOT, r9274-ab18540
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:/# 

1 Like

Now I plan to create a miniature elf boot loader(like lzma-loader on QCA platform) that will be launched by a RouterBOOT and prepare and launch a OpenWRT kernel.

@adron Awesome job.
I got my hands on RB450Gx4 which is IPQ4019 based RB, it has 2MB fo SPI-NOR for the bootloader and 512MB Toshiba RAW NAND.
So, I am facing same issues how to get images loaded and this one is especially tricky as GPL code has basic drivers but device specific stuff is located in "BIOS" according to Mikrotik so I pretty much gotta gues which pins are used for NAND.
So, gotta take a full dump of the SPI NOR first.

How did you get you U-boot loaded and do you maybe have sources for WIP publicly available?

Hello. For RB-3011 I use this U-Boot: Gl-Inet U-Boot. It is made for ipq-4xxx and requires aditional developerment for a ipq-806x CPUs. If anyone is interested, I can share my changes.
In a week I will also have a RB450Gx4, so my little bootloader will do both for RB-3011 and for RB450Gx4 too. And of course its source will be open.

Thats my version of U-Boot for RB-3011: uboot-ipq806x