Developing a stock firmware of MM6108-EKH01

Hey i am trying to build a stock firmware of MM6108-EKH01 but the firmware i was able to build from openwrt repository is not able to boot my device. I know the firmware of ekh01 is openly available and anyone would just ask me to directly use it but i am trying to get familiar with the build process and further try to develop something. so can anyone provide me with the source code of this EKH01-image. Or help me through building a stock image.
Thank you !

The source code is that OpenWrt repository.

The specific EKH01 image you have linked is 2.8.5, so make sure to check out that version tag if you’re trying to build that version specifically.

Serial logs of the boot sequence would be helpful to see where it is failing to boot. Back to back USB serial converters into the Pi and into your PC should enable you to see these logs.

Hi,

I followed the instructions and successfully built the stock OpenWrt (Morse 2.8.5) firmware for:

CONFIG_TARGET_bcm27xx=y
CONFIG_TARGET_bcm27xx_bcm2711=y
CONFIG_TARGET_bcm27xx_bcm2711_DEVICE_rpi-4=y

The image builds and boots correctly on the MM6108-EKH01. LuCI, SSH, and Ethernet are working (see attached screenshots). System shows:

  • Target: bcm27xx/bcm2711

  • Kernel: 5.15.167

  • Model (DT): Raspberry Pi 4 Model B Rev 1.5

However the Halow is not functional.

Issue

As i could make out, on the original factory firmware,

mmc1: new high speed SDIO card at address 0001
morse_sdio mmc1:0001:2: Loaded firmware …

ls /sys/bus/mmc/devices/
mmc0:aaaa mmc1:0001

On my rebuilt stock image:

  • mmc1 host exists

  • but no mmc1:0001 device appears

  • no morse_sdio binding

  • no wireless interface is created

So the system boots fine, but the MM6108 is not detected on the SDIO bus.

The /boot/overlays directory contains:

mm610x-spi.dtbo
mm810x-spi.dtbo
mm_wlan.dtbo
mmc.dtbo

I am also using the same distroconfig.txt as the original image.

Given that the original firmware enumerates the SDIO device correctly but the rebuilt stock image does not, could you advise:the way forward or where i am going wrong .
I have also attached the SS of the Luci UI.

@Skt please make sure to use morse_setup.sh in the README. This will configure your .config file correctly for the EKH01. The image you’re using won’t have the morse driver package installed nor will it be setup to load the correct overlay.

e.g.

./scripts/morse_setup.sh -i -b ekh-bcm2711
make -j8

Then make sure to flash the EKH01 SDIO image.

With our build system, you shouldn’t need to touch the .config file or make menuconfig at all. So the fact you’ve manually select rpi-4 as a device feels like something has gone wrong.

One point that might trip you up, in our README on GitHub it says to run

 ./scripts/morse_setup.sh -i -b ekh01

Did you run this before running make? This is what sets up the build system for you, and you should end up with the following in your .config

CONFIG_TARGET_DEVICE_bcm27xx_bcm2711_DEVICE_morse_ekh01=y
CONFIG_TARGET_DEVICE_bcm27xx_bcm2711_DEVICE_morse_ekh01v1=y
CONFIG_TARGET_DEVICE_bcm27xx_bcm2711_DEVICE_morse_ekh01v2=y
CONFIG_TARGET_DEVICE_bcm27xx_bcm2711_DEVICE_morse_ekh01-03=y
CONFIG_TARGET_DEVICE_bcm27xx_bcm2711_DEVICE_morse_ekh01-01=y