WRT1900AC v1 custom kernel discussion


I'm building a customized OpenWRT for my router (master branch with test kernel). I started from scratch; I didn't start from the default config.
I want to discuss a few things about the kernel support for hardware.

  1. Marvell Armada XP contains a hardware RTC. I would be useful to remember the time after a reboot, especially if internet is down. (On the previous router, I used a script to auto-reboot the router if the internet was down, just in case it was the router's fault.)
    In "make kernel_menuconfig" I selected both Marvell RTCs, but none of them work. Hardware RTC remains unavailable. Is it really not supported, or devicetree mislabeled it?

  2. Enabling PCI Express various options doesn't make any difference. Power management would be nice, I think.

  3. There is a marvell-cesa hardware crypto device. Appears to work. Does OpenWRT use it for anything? Accelerated OpenSSL? OpenVPN? Wireguard?

  4. There are two XOR devices. Are they used for anything?

  5. Should I enable power management in kernel?

  6. cpu-idle is marked as broken in devicetree. Why not remove it completely from the kernel?

  7. Look at the kernel boot parameters. Console parameter appears twice, identical, but with no separating space in between. The error might be in this patch: 300-mvebu-Mangle-bootloader-s-kernel-arguments.patch, but my C/C++ isn't good enough. Please have a look.

  8. While I tested various kernel options, I wrote a loooong boooring text document with all the options working and not working and what they do. Should I post it here? Anyone interested?

  9. Ethernet MAC address is random??

  10. There's a 32KB SPI flash/nand/nor/something... What is that?

  11. Not strictly related to kernel, but more about partitions. I remember a long time ago, when I had a 8/32 MB router, that "partitions" didn't exist. Both OpenWRT and DD-WRT would write kernel+rootfs while upgrading and on first boot it would "measure" the remaining space after root (squashfs) and format it as jffs / overlay. There were no problems with kernel size too big, partition size, etc. Why was this changed? It seems a lot more simple.


1 Like