Bring the build to libreelec community

I used Vim_Marshmallow_Root_170603.7z and its u-boot as I don’t have 170303 version here, but i guess that is minimum u-boot version required right @Gouwa?

Anyway have same boot output while booting @kszaq libreelec build.

....
[    0.021087@0] console [tty0] enabled
[    0.024672@0] bootconsole [earlycon0] disabled
domain-0 init dvfs: 4

@Gouwa source code of this version should be 8.0.2b.
And Khadas VIM device tree can be found here.

Does it go further if you set hdmimode to 1080p60hz?

@kszaq i have that mode (default mit u-boot) but it stays on same line. Here you can find complete log . Line 28 shows hdmimode.
While in u-boot i see on TV (FullHD 50" Panasonic) VIM logo, as soon i write “run update” as @Gouwa wrote in his instruction screen goes black, nothing on it.

I think I might have found the issue with my device tree, if anyone can redownload and try I’d be grateful: http://kszaq.libreelec.tv/s905/device_trees/gxl_p212_2g_kvim.dtb

Hi, kszaq:
I downloaded the new DTB with new issue:

  • Got the VIM logo displayed when update the new DTB, but still can’t boot into LibreELEC
  • full printing is here

It seem that the configuration of USB/OTG cause the problem which I also met before:

[    2.039066@3] WARN::dwc_otg_core_reset:5150: dwc_otg_core_reset() HANG! Soft Reset GRSTCTL=80000001
[    2.039066@3] 
[    2.056426@3] WARN::dwc_otg_core_reset:5150: dwc_otg_core_reset() HANG! Soft Reset GRSTCTL=80000001
[    2.056426@3] 
[    2.072467@3] dwc_otg: Using Buffer DMA mode
[    2.072489@3] dwc_otg: OTG VER PARAM: 1, OTG VER FLAG: 1
[    2.076363@3] dwc_otg: Working on port type = SLAVE
[    2.081211@2] dwc_otg: Dedicated Tx FIFOs mode

And following steps to resolved that:

  1. boot into U-Boot and run below first:
kvim# usb start 0
  1. boot LE:
kvim# run recovery_from_sdcard

regarding the issue, can be resolved by setup the U-Boot ENV, or just enable USB configuration of Linux. I’m not sure which one is better, so just let me know if we can do anything to got Khadas users to use your ROM. :slight_smile:

Update:
I’m not quite sure, but I remembered it’s CONFIG_SUB_DWC3=y resolved this here for me months ago:

-# CONFIG_USB_DWC3 is not set
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC3_HOST=y
+# CONFIG_USB_DWC3_GADGET is not set
+# CONFIG_USB_DWC3_DUAL_ROLE is not set

I did not have issue with new dtb file. I hope it got loaded correctly? At line 195 from this paste log there is sd dtb.img loaded so i guess it did loaded correctly.

Also with this new dtb file i see also Wireless connection. Without dtb at all on first FAT32 partition I did not saw under LibreELEC Settings any Wireless connection, as it can be seen here.

Which version U-Boot did you installed?

The one from Vim_Marshmallow_Root_170303.7z but I activated the multiboot with @balbes150 Libreelec image. I am not sure if that do any other update then adding some env definitions. I compared printenv with and without activated multiboot and i only see following difference.

bootcmd=run storeboot -> bootcmd=run start_autoscript; run storeboot;
bootfromnand=0
bootfromrecovery=0
start_autoscript=if usb start ; then run start_usb_autoscript; fi; if mmcinfo; then run start_mmc_autoscript; fi;
start_mmc_autoscript=if fatload mmc 0 1020000 s905_autoscript; then autoscr 1020000; fi;
start_usb_autoscript=if fatload usb 0 1020000 s905_autoscript; then autoscr 1020000; fi; if fatload usb 1 1020000 s905_autoscript; then autoscr 1020000; fi; if fatload usb 2 1020000 s905_autoscript; then autoscr 1020000; fi; if fatload usb 3 1020000 s905_autoscript; then autoscr 1020000; fi;

Also i see this in my boot, but in your pastelog i dont see it:

Hit Enter or space or Ctrl+C key to stop autoboot – : 0
(Re)start USB…
USB0: USB3.0 XHCI init start
Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus 0 for devices… 3 USB Device(s) found
scanning usb for storage devices… 0 Storage Device(s) found
** Bad device usb 0 **
** Bad device usb 1 **
** Bad device usb 2 **
** Bad device usb 3 **
card in

So I startet everything from beginning just to test it. Flashed to eMMC Vim_Marshmallow_Root_170303.7z. Boot from Android was successful. I did then copy new v2 dbt.img to FAT32 partition of microSD and did boot to u-boot and run ‘run update’ (paste log from line 157).
As you can see in complete log (1) the first boot was successful (paste log from line 157 till 1012) I got picture on TV and I was able to move with keyboard around, and seems multiboot was installed. If you compare printenv you will see there is new env ‘run librefromsd’ and such.

Then i did reboot to u-boot run that ‘run librefromsd’ (paste log from line 1258) it stops booting on same place as @Gouwa posted. I also did reset/power off but it stops on same place.

So it seems only first boot was successful second not.

(1) complete log

@Gouwa Here is my kernel config: https://github.com/kszaq/LibreELEC.tv/blob/8.0.2b/projects/S905/linux/linux.arm.conf#L2540-L2543

As you can see, USB_DWC3 is enabled.

@vrabac Can you please try 8.0.2a build from here: http://kszaq.libreelec.tv/s905/8.0.2a/LibreELEC-S905.arm-8.0-8.0.2a.img.gz

Does it also hang on every but first boot?

That version works first and many other boots (tried 4 time). I again started with flashing Android to have clean eMMC and u-boot. Then ‘dd’ the 8.0.2a img to microSD, copied dtb.img v2 to fat32 partition. Then boot to u-boot “run update” and all went fine (installed multiboot and booted).

Here is complete log.

What is a bit annoying ist goint trough LibreELEC settings while WiFi on, every time it stays there for 20sec or more to scan for all network…

And it seems updates can not be found ? Or your community image does not have such kind of updates?

kvim:~ # tail -f .kodi/temp/kodi.log
                                              File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
                                              File "/usr/lib/python2.7/urllib2.py", line 1241, in https_open
                                              File "/usr/lib/python2.7/urllib2.py", line 1198, in do_open
                                            URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
13:19:46.555 T:3772879776   ERROR: ## LibreELEC Addon ## system::check_updates_v2 ## ERROR: (TypeError('expected string or buffer',))
13:19:46.556 T:3772879776   ERROR: Traceback (most recent call last):
                                              File "/home/kszaq/ocz/le-master/build.LibreELEC-S905.arm-8.0-devel/LibreELEC-settings-6336f1e/.install_pkg/usr/share/kodi/addons/service.libreelec.settings/resources/lib/modules/system.py", line 768, in check_updates_v2
                                              File "/usr/lib/python2.7/json/__init__.py", line 339, in loads
                                              File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
                                            TypeError: expected string or buffer

@vrabac Thank you for testing. I think I have found the reason: dwc_otg needs to be built as a kernel module, not built-in. I am building 8.0.2c right now and it should be fixed.

I know that scanning is very slow, so far I haven’t looked into fixing this as most of the times you go to wireless settings once, connect and never go back unless you change your SSID. :wink:

Automatic updates are not implemented in my community builds. You can add custom update channel if you want to have semi-automatic updates: https://forum.libreelec.tv/thread/7532-custom-update-channel-for-s905-s905x/

1 Like

@kszaq with the 8.0.2c and the dtb v2 file, everything is fine here.

No big deal with WiFi settings and Automatic updates. Thank you for letting me know.

My next step would be writing your image to eMMC. I found here script you are using to prepare eMMC. Is this found in this pastelog “standard Amlogic” memory layout?

Also could it be that my microSD is broken? See that above pastelog from line 112.

HI :slight_smile:
which is dtb v2 file? thanks!

Hi vrabac:
I also encounter this issue, bu how to dd u-boot.sd.bin to SD card? thank you!

Well I call it v2 , but actually is the only one found in device_tree from @kszaq. Which can be found here: http://kszaq.libreelec.tv/s905/device_trees/gxl_p212_2g_kvim.dtb

@zewen so you don’t have Android ROM flashed before? I use Vim_Marshmallow_Root_170303.7z . You need to have Android on eMMC to activate multiboot (by going to Android Menu “update&backup” (settings - about - update&backup - updateLocale-select - aml_autoscript.zip - update), or inside u-boot by running “run update”. Then it should automatically boot LibreELEC from microSD (you may see reboot few times).

Hi vrabac: @vrabac
boot with Vim_Marshmallow_Root_170303.7z in emmc,
1.At Android/Settings/About Device/System/updates, under the UpdateLocale section, click Select, but there have not an selection window, which means i canot select aml_autoscript.zip file
2.Not have an aml_autoscript.zip :in this topic How to boot balbes150 libreelec image? I have know that when you burned LibreELEC.img to microSD, there will be an file named aml_autoscript.zip. But when I do this there have not this file.(my image is compile from the sourced code at khadas github)
How is this going? thank you!

@kszaq
Does this set of u-boot commands activate multiboot on any u-boot ? Here is your s905_autoscript.src

I don’t have anymore Android on eMMC so i can’t do this
settings - about - update&backup - updateLocale-select - aml_autoscript.zip - update

I flashed Ubuntu server image from khadas (as android u-boot does not have ext4 boot support), but I don’t know how to activate back that multiboot, to boot your LibreELEC image which is already on microSD and working fine for weeks.

@kszaq Thanks very much for your build.

Today I finally got LibreELEC 8 running on my Vim Pro.

The tricky part was how to enter u-boot. I need to use an UART cable, Android build “Vim_Marshmallow_Root_170303”, when rebooting the board, press any key to enter the u-boot.

Then I followed the instructions from your thread here: https://forum.libreelec.tv/thread/2156-8-0-2e-libreelec-8-0-for-s905-s905x/?pageNo=1

Finally, run “run update” to get LibreELEC booted.

4 Likes