Dreambox/Dreambox2 S922X device-tree experiments

  • @chewitt

    LibreELEC-AMLGX.arm-9.95.1-box.img.gz and also *10.0-nigthly* do not boot, they only freezes Box.

    I've tested nigthly with chainload: Image booting, only sound works, screen is black.

    I've build uboot for chainload from 2021.04

    I've got no idea how to patch u-boot.bin to enable screen.

    Other u-boot.ext from balbes150 could not handle lzo compressed Imgs.

    AMLGX.arm-9.95.1-box.log

    nightly.txt

  • I've built mainline-u-boot 2020.10 (config lzo). It boots chainloaded the Image with screen :)

    I've also built kernel module dreambox rc-keymaps (patch), and a dtb (patch).

    rc works, but system-RGB-LED (gpio-leds) is ignorimg DTB's configs.

    Very nice running Image!!

    • Official Post

    _emanuel_ Updated LibreELEC-AMLGX.arm-9.95.1-box.img.gz image has two device-tree files for dreambox one/two that I created earlier. Please test whether the LED/button bits work. There are no RC keymaps in the image - I can see the BSP kernel keymaps, but there are 4x maps. If you can explain which keymap is used in which box I will add them.

    See last four commits here: Commits · chewitt/linux · GitHub

  • I tried several settings from several dtbs, not even:

    turns the LED off.

    The keymaps function so far with the original assignment (got only the two new one, i could add more later)

    But now I'll test the Image: LibreELEC-AMLGX.arm-9.95.1-box.img.gz

    and give feedback later.

    By the way (my nigthly build), I've notice one issue: while updating via update tar, it extracts all the dtbs to the LIBREELEC's root (mmc 0), not in the dtb folder, where they are stored normaly?

  • still on, no changes at all.

  • Suddenly the Exit menu started without turning on, starting on and off going in a loop, see log attached.

    I also had this in my build when I gave the DTB the

  • This is all build in a chain of drivers hanging on the "fp-dev" driver,

    the Led is not listed in /sys/devices/platform/leds/ like in mainline.

    The main task of this fp-dev driver is the communication with the manufacturer boot loader: shutdown / reboot / standby / wakeup / ... The boot loader always gets the reboot result = boot loader (0x8), regardless of whether I have Android, LibreElec, ... Enter "shutdown -h now" always arrives reboot bootloader. Unless I'm using the original kernel with the fp-dev. That's why I built the Android and the CE with the original kernel in order to be able to use the drivers. I suspect that the original boot loader omitted the reboot result somewhere else.


    Here I looked for the GPIOs with an on-off hack driver and multimeter. :D

    Will flash the update

  • The build in remotes work great. :)

    LED - still fishing...

    • Official Post

    The fp-dev component sounds like an MCU so it's probably attached via i2c, but is also probably a custom part so you would need infos or sources from the manufacturer (or proper reverse-engineering skills) to figure it out.

    Do you have any high-resolution PCB photos? - is there an RTC chip and power cell attached? - I would expect yes (to support timed wake and record) but there is no mention of this in the vendor kernel device-tree or sources.

  • So I took a couple of nude photos, thank God the girl is still playing with me :saint:

    https://photos.app.goo.gl/7mGqKxuFeikQSaKBA


    By the way: I've also tested the Img on "dreamtv" (s905x2, u212) same manufacture, other vendor, android streaming box.

    it has a real problem with mmc 0, it can load kernel form it, but the later mount fails and the /dev/mmcblk0 does not exists only mmc 1 (emmc).

    • Official Post

    [ 2.298762] Run /init as init process

    ^ the boot log stops here because of the console ordering you've defined in boot params (the order matters):

    systemd.debug_shell=ttyAML0 console=ttyAML0,115200n8 console=tty0 <= correct ordering

    console=ttyAML0,115200n8 console=tty0 no_console_suspend systemd.debug_shell=ttyAML0 <= yours

    I also use boot=LABEL=LIBREELEC, disk=LABEL=STORAGE instead of UUIDs, so see if that makes a difference?