Tanix TX6

  • Still same I'm afraid:-


    U-Boot SPL 2018.11-g7702a7c-dirty (Jun 12 2019 - 22:54:17 +0100)

    DRAM:

    Just to be sure - I am reverting the previously applied patch before applying the new one. Is that correct?

    I guess so, as all patches always patch some of the same lines, so you can't apply them all together...

    • Official Post

    How do you find those differences? I mean compared to what?

    To decompiled libdram, which we know it correctly initializes DDR3, but it's not acceptable solution for many reasons.


    Just to be sure - I am reverting the previously applied patch before applying the new one. Is that correct?

    That's correct. I include all changes in new patch.

    In latest one I found out that 2T bit was enabled only in controller and not in PHY. I hoped this is solution, but obviously not.

    If anyone wonder, this is the closest documentation we have: Zynq UltraScale+ MPSoC Register Reference (DDRC and DDR_PHY modules) It's not 100% same, but close enough.

  • ukmark62 There's another patch: http://sprunge.us/c37uzy This time I updated DDR3 timings according to libdram, which might not be 100% correct...

    We have changes............


    U-Boot SPL 2018.11-g7702a7c-dirty (Jun 15 2019 - 11:18:38 +0100)

    DRAM: 4096 MiB

    Trying to boot from MMC1

    NOTICE: BL31: v2.1(release):v2.1-264-g5441ed2

    NOTICE: BL31: Built : 11:03:02, Jun 10 2019

    NOTICE: BL31: Detected Allwinner H6 SoC (1728)

    NOTICE: BL31: Found U-Boot DTB at 0xc06ddc0, model: Eachlink H6 Mini

    NOTICE: PMIC: Probing AXP805

    ERROR: Start clear bit timeout

    ERROR: PMIC: Cannot put AXP805 to master mode.



    U-Boot 2018.11-g7702a7c-dirty (Jun 15 2019 - 11:18:38 +0100) Allwinner Technology


    CPU: Allwinner H6 (SUN50I)

    Model: Eachlink H6 Mini

    DRAM: 3 GiB

    MMC: SUNXI SD/MMC: 0, SUNXI SD/MMC: 1

    Loading Environment from FAT... Unable to use mmc 1:1... In: serial@5000000

    Out: serial@5000000

    Err: serial@5000000

    Net: No ethernet found.

    starting USB...

    No controllers found

    Hit any key to stop autoboot: 0

    switch to partitions #0, OK

    mmc0 is current device

    Scanning mmc 0:1...

    switch to partitions #0, OK

    mmc1(part 0) is current device

    ** Unrecognized filesystem type **

    starting USB...

    No controllers found

    USB is stopped. Please issue 'usb start' first.

    starting USB...

    No controllers found

    No ethernet found.

    missing environment variable: pxeuuid

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/00000000

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/0000000

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/000000

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/00000

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/0000

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/000

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/00

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: pxelinux.cfg/0

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/default-arm-sunxi

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/default-arm

    No ethernet found.

    missing environment variable: bootfile

    Retrieving file: http://pxelinux.cfg/default

    No ethernet found.

    Config file not found

    starting USB...

    No controllers found

    No ethernet found.

    No ethernet found.

    =>

  • ukmark62 Great! That means DDR3 initialization works! Still some work to do to put everything into appropriate form to be sent to U-Boot mailing list, but first Tanix TX6 LE image could be available next week.

    BTW, you may experiment now by taking existing OrangePi 3 LE image and flash this U-Boot binary over. It won't work 100% correctly and there will be errors reported, but it may work.

  • ukmark62 Great! That means DDR3 initialization works! Still some work to do to put everything into appropriate form to be sent to U-Boot mailing list, but first Tanix TX6 LE image could be available next week.

    BTW, you may experiment now by taking existing OrangePi 3 LE image and flash this U-Boot binary over. It won't work 100% correctly and there will be errors reported, but it may work

    jernej

    Write the Orange Pi 3 image to sd card (using rufus), then "dd" only the u-boot-sunxi-with-spl.bin to same sd card? Which dtb should I use or is that irrelevant? Thx

  • Write the Orange Pi 3 image to sd card (using rufus), then "dd" only the u-boot-sunxi-with-spl.bin to same sd card?

    In general, yes. How you write image to SD card is up to you. I use "dd" for everything, but that is not the best method.

    Which dtb should I use or is that irrelevant? Thx

    In this case you'll use orangepi3 DT, which of course is not optimal, but it should show some signs of life. Later, we should write Tanix TX6 specific DT.

  • In general, yes. How you write image to SD card is up to you. I use "dd" for everything, but that is not the best method.

    In this case you'll use orangepi3 DT, which of course is not optimal, but it should show some signs of life. Later, we should write Tanix TX6 specific DT.

    The box did not boot, so I attached UART and booted. This is the UART log. Sd card had the usual 2 partitions (LIBREELEC and STORAGE):-

    U-Boot SPL 2018.11-g7702a7c-dirty (Jun 15 2019 - 11:18:38 +0100)

    DRAM: 4096 MiB

    Trying to boot from MMC1

    NOTICE: BL31: v2.1(release):v2.1-264-g5441ed2

    NOTICE: BL31: Built : 11:03:02, Jun 10 2019

    NOTICE: BL31: Detected Allwinner H6 SoC (1728)

    NOTICE: BL31: Found U-Boot DTB at 0xc06ddc0, model: Eachlink H6 Mini

    NOTICE: PMIC: Probing AXP805

    ERROR: Start clear bit timeout

    ERROR: PMIC: Cannot put AXP805 to master mode.

    U-Boot 2018.11-g7702a7c-dirty (Jun 15 2019 - 11:18:38 +0100) Allwinner Technology

    CPU: Allwinner H6 (SUN50I)

    Model: Eachlink H6 Mini

    DRAM: 3 GiB

    MMC: SUNXI SD/MMC: 0, SUNXI SD/MMC: 1

    Loading Environment from FAT... Unable to use mmc 1:1... In: serial@5000000

    Out: serial@5000000

    Err: serial@5000000

    Net: No ethernet found.

    starting USB...

    No controllers found

    Hit any key to stop autoboot: 0

    switch to partitions #0, OK

    mmc0 is current device

    Scanning mmc 0:1...

    Found /extlinux/extlinux.conf

    Retrieving file: /extlinux/extlinux.conf

    180 bytes read in 3 ms (58.6 KiB/s)

    1: LibreELEC

    Retrieving file: /KERNEL

    16626176 bytes read in 1665 ms (9.5 MiB/s)

    append: boot=UUID=1206-0000 disk=UUID=52d85c1f-cdb2-41f5-b0ff-e4ccfc776d39 quiet console=ttyS0,115200 console=tty1

    Retrieving file: /sun50i-h6-orangepi-3.dtb

    18827 bytes read in 4 ms (4.5 MiB/s)

    # Flattened Device Tree blob at 4fa00000

    Booting using the fdt blob at 0x4fa00000

    Loading Device Tree to 0000000049ff8000, end 0000000049fff98a ... OK

    Starting kernel ...

    [ 0.258293] sun50i-de2-bus 1000000.display-engine: Error couldn't map SRAM to device

    [ 0.258879] sun4i-usb-phy 5100400.phy: Couldn't request ID GPIO

    [ 0.259109] sun50i-usb3-phy 5210000.phy: failed to get phy clock

    [ 2.403812] i2c i2c-0: mv64xxx: I2C bus locked, block: 1, time_left: 0

    [ 4.451810] i2c i2c-0: mv64xxx: I2C bus locked, block: 1, time_left: 0

    [ 4.451831] axp20x-i2c 0-0036: Failed to set masks in 0x40: -110

    [ 4.451846] axp20x-i2c 0-0036: failed to add irq chip: -110

    [ 4.460256] sun4i-i2s 5091000.i2s: Max playback channels changed from 2 to 8

    [ 4.472558] sun4i-usb-phy 5100400.phy: Couldn't request ID GPIO

    [ 4.598579] sun8i-dw-hdmi 6000000.hdmi: Couldn't get ddc regulator

    [ 4.604847] sun4i-drm display-engine: failed to bind 6000000.hdmi (ops sun8i_dw_hdmi_ops): -517

    [ 4.613721] sun4i-drm display-engine: Couldn't bind all pipelines components

    [ 4.861415] sun50i-h6-pinctrl 300b000.pinctrl: Couldn't get bank PD regulator

    [ 4.868587] sun50i-h6-pinctrl 300b000.pinctrl: request() failed for pin 102

    [ 4.875560] sun50i-h6-pinctrl 300b000.pinctrl: pin-102 (300b000.pinctrl:102) status -517

    [ 4.884193] sun50i-h6-pinctrl 300b000.pinctrl: Couldn't get bank PC regulator

    [ 4.891343] sun50i-h6-pinctrl 300b000.pinctrl: request() failed for pin 79

    [ 4.898228] sun50i-h6-pinctrl 300b000.pinctrl: pin-79 (300b000.pinctrl:79) status -517

    [ 4.906156] sun4i-usb-phy 5100400.phy: Couldn't request ID GPIO

    [ 4.921126] sun50i-h6-pinctrl 300b000.pinctrl: Couldn't get bank PD regulator

    [ 4.928313] sun50i-h6-pinctrl 300b000.pinctrl: request() failed for pin 102

    [ 4.935308] sun50i-h6-pinctrl 300b000.pinctrl: pin-102 (300b000.pinctrl:102) status -517

    [ 4.944040] sun50i-h6-pinctrl 300b000.pinctrl: Couldn't get bank PC regulator

    [ 4.951201] sun50i-h6-pinctrl 300b000.pinctrl: request() failed for pin 79

    [ 4.958103] sun50i-h6-pinctrl 300b000.pinctrl: pin-79 (300b000.pinctrl:79) status -517

    [ 4.966042] sun4i-usb-phy 5100400.phy: Couldn't request ID GPIO

    [ 4.974380] sun50i-h6-pinctrl 300b000.pinctrl: Couldn't get bank PD regulator

    [ 4.981545] sun50i-h6-pinctrl 300b000.pinctrl: request() failed for pin 102

    [ 4.988520] sun50i-h6-pinctrl 300b000.pinctrl: pin-102 (300b000.pinctrl:102) status -517

    [ 4.997155] sun50i-h6-pinctrl 300b000.pinctrl: Couldn't get bank PC regulator

    [ 5.004307] sun50i-h6-pinctrl 300b000.pinctrl: request() failed for pin 79

    [ 5.011193] sun50i-h6-pinctrl 300b000.pinctrl: pin-79 (300b000.pinctrl:79) status -517

    [ 5.019121] sun4i-usb-phy 5100400.phy: Couldn't request ID GPIO


  • ukmark62 Can you please test attached sun50i-h6-tanix-tx6.dtb? Copy it in same folder where orangepi3 one is and edit extlinux/extlinux.conf and change DT file name.

    For reference, there is also non-compiled version included.

    attachment: tanix-tx6-dt.zip

    The box booted and LE was installed. Then on reboot immediately after install, box hangs at LE splash screen.

    Attached to UART boot log is:-

    U-Boot SPL 2018.11-g7702a7c-dirty (Jun 15 2019 - 11:18:38 +0100)

    DRAM: 4096 MiB

    Trying to boot from MMC1

    NOTICE: BL31: v2.1(release):v2.1-264-g5441ed2

    NOTICE: BL31: Built : 11:03:02, Jun 10 2019

    NOTICE: BL31: Detected Allwinner H6 SoC (1728)

    NOTICE: BL31: Found U-Boot DTB at 0xc06ddc0, model: Eachlink H6 Mini

    NOTICE: PMIC: Probing AXP805

    ERROR: Start clear bit timeout

    ERROR: PMIC: Cannot put AXP805 to master mode.


    U-Boot 2018.11-g7702a7c-dirty (Jun 15 2019 - 11:18:38 +0100) Allwinner Technology

    CPU: Allwinner H6 (SUN50I)

    Model: Eachlink H6 Mini

    DRAM: 3 GiB

    MMC: SUNXI SD/MMC: 0, SUNXI SD/MMC: 1

    Loading Environment from FAT... Unable to use mmc 1:1... In: serial@5000000

    Out: serial@5000000

    Err: serial@5000000

    Net: No ethernet found.

    starting USB...

    No controllers found

    Hit any key to stop autoboot: 0

    switch to partitions #0, OK

    mmc0 is current device

    Scanning mmc 0:1...

    Found /extlinux/extlinux.conf

    Retrieving file: /extlinux/extlinux.conf

    179 bytes read in 3 ms (57.6 KiB/s)

    1: LibreELEC

    Retrieving file: /KERNEL

    16626176 bytes read in 1665 ms (9.5 MiB/s)

    append: boot=UUID=1206-0000 disk=UUID=52d85c1f-cdb2-41f5-b0ff-e4ccfc776d39 quiet console=ttyS0,115200 console=tty1

    Retrieving file: /sun50i-h6-tanix-tx6.dtb

    15285 bytes read in 4 ms (3.6 MiB/s)

    ## Flattened Device Tree blob at 4fa00000

    Booting using the fdt blob at 0x4fa00000

    Loading Device Tree to 0000000049ff9000, end 0000000049fffbb4 ... OK

    Starting kernel ...

    [ 0.256596] sun50i-de2-bus 1000000.display-engine: Error couldn't map SRAM to device

    [ 0.257344] sun4i-usb-phy 5100400.phy: failed to get clock usb0_phy

    [ 0.380800] sun4i-i2s 5091000.i2s: Max playback channels changed from 2 to 8

  • ukmark62 Edit extlinux/extlinux.conf again and remove console=tty1 from append line. That way you will get terminal on serial console. Please copy and paste output of dmesg.

    BTW, please use pastebin for it or at least use spoiler tag.

    UART Log here:-

    External Content pastebin.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    Couldn't execute dmesg. Where do I do that?

  • you just type it in on serial, unless SoC is halted.

    Please test this:

    tanix-tx6.zip

    External Content pastebin.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    When I type dmesg, nothing happens.

  • Also remove quiet from extlinux/extlinux.conf. You should get more or less same output as with dmesg on serial console.

    External Content pastebin.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    One thing I notice when booting and connected to TV is that display resolution is 1024x768 at 60hz