MichaIng / DietPi

Lightweight justice for your single-board computer!
https://dietpi.com/
GNU General Public License v2.0
4.88k stars 497 forks source link

Odroid N2 - First boot after install hangs/reboot loop. #4419

Closed BillyCorgan1 closed 3 years ago

BillyCorgan1 commented 3 years ago

Required Information

Additional Information (if applicable)

Steps to reproduce

  1. Flash latest version of dietpi download to mmc drive of the Odroid N2.
  2. Power on Odroid N2.
  3. Odroid N2 will hang/reboot after checking for available update.

Expected behaviour

Actual behaviour

Extra details

# Max CPU frequency for big A73 cores in MHz
# - Valid values on Odroid N2: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800 (default), 1908, 2004
# - Valid values on Odroid N2+: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800, 1908, 2016, 2100, 2208 (default), 2304, 2400
#setenv max_freq_a73 "2004"

# Max CPU frequency for small A53 cores in MHz
# - Valid values on Odroid N2: 100, 250, 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1896 (default), 1992
# - Valid values on Odroid N2+: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800, 1908 (default), 2016
#setenv max_freq_a53 "1992"

I have edited the file so that setenv max_freq_a73 and setenv max_freq_a73 are uncommeneted and put to their default values.

# Max CPU frequency for big A73 cores in MHz
# - Valid values on Odroid N2: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800 (default), 1908, 2004
# - Valid values on Odroid N2+: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800, 1908, 2016, 2100, 2208 (default), 2304, 2400
setenv max_freq_a73 "1800"

# Max CPU frequency for small A53 cores in MHz
# - Valid values on Odroid N2: 100, 250, 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1896 (default), 1992
# - Valid values on Odroid N2+: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800, 1908 (default), 2016
setenv max_freq_a53 "1896"

With this fix I am able to get the installation to work and install to the latest 7.2 beta version. I am unable to test this fix on an Odroid N2+ (Plus)as I don't own one. I am aware of a person with an Odroid N2+ (Plus) who had trouble getting the install to work. I can try and find the thread if required. This to me is a severe bug as a new user of DietPi using an Odroid N2 would not be able to use DietPi at all without this fix. I, of course, don't know how complicated it will be to fix. I of course remain available to test any fix and provide information to you. Thanks for your time.

Joulinar commented 3 years ago

@BillyCorgan1 Can you share the download link if the image used. Thx

MichaIng commented 3 years ago

When no explicit frequencies are set, the bootloader should apply the defaults for the N2 or N2+ respectively, which matches exactly the two values you now applied manually. So it would be interesting which CPU frequencies were applied before you set them explicitly. If those did not match, it would be a bug in the bootloader or kernel.

If you have a chance, can you revert the boot.ini change, reboot and run cpu to show CPU frequencies?

@Joulinar Everything matches our current N2 image, or is there a reason you suspect that it's not ours?

BillyCorgan1 commented 3 years ago

Ok this is the link:

https://dietpi.com/downloads/images/DietPi_OdroidN2-ARMv8-Buster.7z

The SHA256 sum is ead9a9ea0772550679d2fe80ef6baa352635ca3f0461c41584192517f8521258

This matches with my file i.e. the ISO is not corrupted. I checked with HashCheck on Windows 10. I flashed the image with BalenaEtcher and there were no errors so I am happy that the resulting image is not corrupted.

Joulinar commented 3 years ago

@MichaIng Just thinking. sometimes we had images from different sources. So just to have that checked. No special reason πŸ™‚

MichaIng commented 3 years ago

If you find time, please try to revert the boot.ini change (comment the frequency settings again) and see what frequency is applied as fallback/default.

BillyCorgan1 commented 3 years ago

Yes I will. I am just trying to get it to boot at the moment and work through what changes I have made. Sorry, I am not very quick at this.

BillyCorgan1 commented 3 years ago

OK, here is the output of CPU:

─────────────────────────────────────────────────────
 DietPi v7.2.0 (beta) : 17:01 - Tue 25/05/21
 ─────────────────────────────────────────────────────
 - Device model : Odroid N2 (aarch64)
 - CPU temp : 34'C : 93'F (Cool runnings)
 - LAN IP : 192.168.1.5 (eth0)
 - MOTD : Open Beta v7.2 | Please help testing the upcoming release:
          https://github.com/MichaIng/DietPi/issues/4409
 ─────────────────────────────────────────────────────

 DietPi Team     : MichaIng (lead), Daniel Knight (founder), Joulinar (support)
 Image by        : DietPi Core Team (pre-image: Meveric)
 Web             : https://dietpi.com | https://twitter.com/DietPi_
 Patreon Legends : Camry2731
 Contribute      : https://dietpi.com/contribute.html
 DietPi Hosting  : Powered by https://myvirtualserver.com

 dietpi-launcher : All the DietPi programs in one place.
 dietpi-config   : Feature rich configuration tool for your device.
 dietpi-software : Select optimized software for installation.
 htop            : Resource monitor.
 cpu             : Shows CPU information and stats.

root@OdroidN2:~# cpu

 ─────────────────────────────────────────────────────
 DietPi CPU Info
 Use dietpi-config to change CPU / performance options
 ─────────────────────────────────────────────────────
 Architecture |     aarch64
 Temperature  |     34'C : 93'F (Cool runnings)
 Governor     |     schedutil

                 Current Freq    Min Freq   Max Freq
 CPU0         |      100 MHz      100 MHz    1896 MHz
 CPU1         |      100 MHz      100 MHz    1896 MHz
 CPU2         |      1800 MHz      100 MHz    1800 MHz
 CPU3         |      1800 MHz      100 MHz    1800 MHz
 CPU4         |      1800 MHz      100 MHz    1800 MHz
 CPU5         |      1800 MHz      100 MHz    1800 MHz

[ INFO ] DietPi-CPU_info | CPU current frequency, may be affected by this script, due to the processing required to run it.

root@OdroidN2:~#

I took the eMMC Chip out after a clean shutdown and edited the boot.ini file to comment (#) out the processor frequencies. It booted normally.

Joulinar commented 3 years ago

Means it is working without the workaround now?

MichaIng commented 3 years ago

The frequencies for the two CPU types are exactly as expected and as you manually set them. So then it looks like the crash was not related to CPU frequencies, respectively your workaround was not a workaround but it was a coincidence that it crashed without frequencies set and did not crash after setting frequencies. The typical mismatch between correlation and causality πŸ™‚.

The question remains why it crashed in the first place. But let's not waste time with guessing, as we have no logs. If that happens again, keep an eye on CPU temperature (perfectly low currently), dmesg (for kernel errors), memory usage, via htop and/or free. Enabling persistent system logs would then help, i.e. setting logging mode to 0 none/custom + mkdir -p /var/log/journal to make all system, service and kernel logs persistent, and after crash journalctl can then be used to review what happened before.

BillyCorgan1 commented 3 years ago

Means it is working without the workaround now?

As far as I can tell. I have rebooted it again and it comes up normally.

The frequencies for the two CPU types are exactly as expected and as you manually set them. So then it looks like the crash was not related to CPU frequencies, respectively your workaround was not a workaround but it was a coincidence that it crashed without frequencies set and did not crash after setting frequencies. The typical mismatch between correlation and causality πŸ™‚.

The question remains why it crashed in the first place. But let's not waste time with guessing, as we have no logs. If that happens again, keep an eye on CPU temperature (perfectly low currently), dmesg (for kernel errors), memory usage, via htop and/or free. Enabling persistent system logs would then help, i.e. setting logging mode to 0 none/custom + mkdir -p /var/log/journal to make all system, service and kernel logs persistent, and after crash journalctl can then be used to review what happened before.

Is there any way to do this before it crashes? Something I can put into the boot.ini or a setting in the dietpi.ini?

MichaIng commented 3 years ago

Is there any way to do this before it crashes?

You mean enabling persistent log before doing the first boot? The logging mode can be set via dietpi.txt and generally manual commands can run by adding one of two possible scripts to the boot (FAT) partition: https://github.com/MichaIng/DietPi/blob/master/dietpi.txt#L58-L68

BillyCorgan1 commented 3 years ago

Just a quick update. I am having problems with crashes happening when using the system. I will try and get the logs out of the system and I will have to hook it up to my monitor to see what is happening. I have been SSHing in at the moment. It might take a little time but I will feedback with my findings and if I need some help. Thanks.

BillyCorgan1 commented 3 years ago

I have been unable to get v7.02 working, It always seems to hang at random moments. I have been able to get it up and running with v6.28. I now have Plex installed and will leave it on to see if it hangs or has any problems.

MichaIng commented 3 years ago

Did you try to update from your working v6.28 image?

I have an idea what might be the problem, as you say it hangs at random moments:

Probably it's similar to XU4, that the hardware random generator is not usable, and hence haveged is required.

BillyCorgan1 commented 3 years ago

Did you try to update from your working v6.28 image?

I have an idea what might be the problem, as you say it hangs at random moments:

* You current image (v6.28) has `haveged` installed, right? `dpkg-query -s haveged`

* If so, could you try to install a hardware random generator daemon and see if that functions?
  ```
  apt install rng-tools5
  sleep 2
  systemctl status rng-tools5
  ```

Probably it's similar to XU4, that the hardware random generator is not usable, and hence haveged is required.

I installed using the v6.28 image dated Mon 9 Mar 14:43:47 CET 2020 with a sha256 hash of 8752e5f3d99175fdc43ac831ec571df1072fa9b7dcf2864b93f97b5822e7e47a The v6.28 updated itself, with no problems seen, to v7.2.3. It is on v7.2.3 that I have run the commands below.

These are the command responses as entered:

root@OdroidN2:~# dpkg-query -s haveged
Package: haveged
Status: install ok installed
Priority: optional
Section: misc
Installed-Size: 90
Maintainer: JΓ©rΓ©my Bobbio <lunar@debian.org>
Architecture: arm64
Version: 1.9.13-1
Depends: lsb-base (>= 3.2-14), libc6 (>= 2.17), libhavege2 (>= 1.9.13)
Pre-Depends: init-system-helpers (>= 1.54~)
Suggests: apparmor
Conffiles:
 /etc/apparmor.d/usr.sbin.haveged 7d8400e675e94a0dbe65b0f5e6b8fab8
 /etc/default/haveged 697e664338da071d73cf17d594b5753c
 /etc/init.d/haveged 31ced0bebd90450344174b95765d55f7
Description: Linux entropy source using the HAVEGE algorithm
 haveged is a userspace entropy daemon which is not dependent upon the
 standard mechanisms for harvesting randomness for the system entropy
 pool. This is important in systems with high entropy needs or limited
 user interaction (e.g. headless servers).
 .
 haveged uses HAVEGE (HArdware Volatile Entropy Gathering and Expansion)
 to maintain a 1M pool of random bytes used to fill /dev/random
 whenever the supply of random bits in dev/random falls below the low
 water mark of the device.
 .
 More information about HAVEGE is available at
 http://www.irisa.fr/caps/projects/hipsor/
Homepage: https://issihosts.com/haveged/`

root@OdroidN2:~# apt install rng-tools5
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
  linux-image-4.9.213+
Use 'apt autoremove' to remove it.
The following NEW packages will be installed:
  rng-tools5
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 19.8 kB of archives.
After this operation, 74.8 kB of additional disk space will be used.
Get:1 https://deb.debian.org/debian buster/main arm64 rng-tools5 arm64 5-4 [19.8 kB]
Fetched 19.8 kB in 0s (79.4 kB/s)
Selecting previously unselected package rng-tools5.
(Reading database ... 21034 files and directories currently installed.)
Preparing to unpack .../rng-tools5_5-4_arm64.deb ...
Unpacking rng-tools5 (5-4) ...
Setting up rng-tools5 (5-4) ...
Created symlink /etc/systemd/system/multi-user.target.wants/rngd.service β†’ /lib/systemd/system/rngd.service.
Processing triggers for systemd (241-7~deb10u7) ...

root@OdroidN2:~# sleep 2

root@OdroidN2:~# systemctl status rng-tools5 Unit rng-tools5.service could not be found.

I hope this is useful information for you. Please let me know if you want me to try anything else or need more information. Thanks for your time.

MichaIng commented 3 years ago

Many thanks. Sorry the last command was wrong (my fault), but the first ones point into the direction of my guess already. Please run and print again:

systemctl status rngd
BillyCorgan1 commented 3 years ago

Many thanks. Sorry the last command was wrong (my fault), but the first ones point into the direction of my guess already. Please run and print again:

systemctl status rngd

OK, Here are the commands as required. I ran them all so you can see everything.

root@OdroidN2:~# dpkg-query -s haveged
Package: haveged
Status: install ok installed
Priority: optional
Section: misc
Installed-Size: 90
Maintainer: JΓ©rΓ©my Bobbio <lunar@debian.org>
Architecture: arm64
Version: 1.9.13-1
Depends: lsb-base (>= 3.2-14), libc6 (>= 2.17), libhavege2 (>= 1.9.13)
Pre-Depends: init-system-helpers (>= 1.54~)
Suggests: apparmor
Conffiles:
 /etc/apparmor.d/usr.sbin.haveged 7d8400e675e94a0dbe65b0f5e6b8fab8
 /etc/default/haveged 697e664338da071d73cf17d594b5753c
 /etc/init.d/haveged 31ced0bebd90450344174b95765d55f7
Description: Linux entropy source using the HAVEGE algorithm
 haveged is a userspace entropy daemon which is not dependent upon the
 standard mechanisms for harvesting randomness for the system entropy
 pool. This is important in systems with high entropy needs or limited
 user interaction (e.g. headless servers).
 .
 haveged uses HAVEGE (HArdware Volatile Entropy Gathering and Expansion)
 to maintain a 1M pool of random bytes used to fill /dev/random
 whenever the supply of random bits in dev/random falls below the low
 water mark of the device.
 .
 More information about HAVEGE is available at
 http://www.irisa.fr/caps/projects/hipsor/
Homepage: https://issihosts.com/haveged/
root@OdroidN2:~# apt install rng-tools5
Reading package lists... Done
Building dependency tree
Reading state information... Done
rng-tools5 is already the newest version (5-4).
The following package was automatically installed and is no longer required:
  linux-image-4.9.213+
Use 'apt autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@OdroidN2:~# sleep 2`

root@OdroidN2:~# systemctl status rngd
● rngd.service - Start entropy gathering daemon (rngd)
   Loaded: loaded (/lib/systemd/system/rngd.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2021-06-08 19:02:24 BST; 1h 47min ago
     Docs: man:rngd(8)
 Main PID: 4387 (rngd)
    Tasks: 1 (limit: 3846)
   Memory: 164.0K
   CGroup: /system.slice/rngd.service
           └─4387 /usr/sbin/rngd -f

Jun 08 19:02:24 OdroidN2 systemd[1]: Started Start entropy gathering daemon (rngd).

Sorry, I can't get Github to put the last part in code. I have just left it as it is in case I remove something important.

I hope this helps you. Let me know if you need me to test anything else. Thanks again.

MichaIng commented 3 years ago

Okay, the hardware random generator seems to work fine. Then you should be able to remove haveged. But disable it first only, and when the system starts to hang at random points, re-enable it, and we know that the hardware random generator does not work properly, even that the rngd daemon does not report any issue:

systemctl disable --now haveged

to re-enable:

systemctl enable --now haveged

Btw, as there was a kernel upgrade (linux-image-4.9.213+ is not longer required), did you reboot since then?

BillyCorgan1 commented 3 years ago

Okay, the hardware random generator seems to work fine. Then you should be able to remove haveged. But disable it first only, and when the system starts to hang at random points, re-enable it, and we know that the hardware random generator does not work properly, even that the rngd daemon does not report any issue:

systemctl disable --now haveged

to re-enable:

systemctl enable --now haveged

Btw, as there was a kernel upgrade (linux-image-4.9.213+ is not longer required), did you reboot since then?

This will be quite long so I will try to be brief.

  1. I have rebooted and auto removed the no longer required kernel.
  2. I have enabled and re-enabled haveged a number of times. I could not get the system to fall over. I tried the following commands to test the random generator:

dd if=/dev/random of=/dev/null bs=1024 count=1 iflag=fullblock and rngtest -c 1000 </dev/random

the tests came back as expected with no known errors shown. I will of course retest if required or you want me to run different tests.

Now the most interesting (or stupid) thing is that I installed the latest version of DietPi with the latest downloadable version from the website. This is now working as expected and I can install it with one problem. This problem I have observed when first reporting this bug but I have now been able to copy the message.

─────────────────────────────────────────────────────
 DietPi v7.0.2 : 12:31 - Mon 09/03/20
 ─────────────────────────────────────────────────────
 - LAN IP : 192.168.1.4 (eth0)
[  OK  ] DietPi-Login | Checking network connectivity
[  OK  ] DietPi-Login | Checking DNS resolver
[  OK  ] DietPi-Run_NTPD | systemctl restart systemd-timesyncd
Warning: The unit file, source configuration file or drop-ins of systemd-timesyncd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[ INFO ] DietPi-Run_NTPD | Waiting for completion of systemd-timesyncd (1/60)
Warning: The unit file, source configuration file or drop-ins of systemd-timesyncd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[  OK  ] DietPi-Run_NTPD | systemd-timesyncd synced
Warning: The unit file, source configuration file or drop-ins of systemd-timesyncd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[  OK  ] Network time sync | Completed

As you can see there is a problem with the NTPD System service. I have tried to set my time server to time.cloudflare.com in the DietPi config menu and when I try the system reboots itself. I can now not install software due to the time sync hanging:

[  OK  ] DietPi-Run_NTPD | systemctl restart systemd-timesyncd
Warning: The unit file, source configuration file or drop-ins of systemd-timesyncd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[ INFO ] DietPi-Run_NTPD | Waiting for completion of systemd-timesyncd (1/60)

I am wondering if this error is the one that is causing all the problems I have had with the hangs and reboots. I have only noticed this error on my Odroid N2, It did not appear when I installed DietPi on my Raspberry Pi 4. Let me know If you want any more information. Thanks for your time.

Joulinar commented 3 years ago

this should not be an issue as at the end time sync succeeded.

[ OK ] Network time sync | Completed

BillyCorgan1 commented 3 years ago

this should not be an issue as at the end time sync succeeded.

[ OK ] Network time sync | Completed

Yes, that is true. Even if I change time server the hang/freeze still happens.

I am at a loss as what to do next with this problem. I am going to stay using the 6.28 version that works and call it a day. I think this bug should be closed if no one else has this problem. I will of course test anything that you want me too if you have any other ideas. Thanks for your time.

MichaIng commented 3 years ago

The "Warning: The unit file, source configuration file or drop-ins of systemd-timesyncd.service changed on disk." can be ignored and does not cause any issue. I see this by times, systemctl daemon-reload solves it, but it should not show up in the first place. I think it can happen when the system time is changed from before to after an mtime timestamp of a systemd unit or so, i.e. it's a visual-only bug or limitation in systemd.

In your second last post I understood that the latest N2 image does work now, or did I misunderstood? Or is it that you need to preserve your data/config with the production image, and once you upgrade it, it starts to cause the issue?

I bet that the kernel upgrade triggers the issue, in case. We meanwhile also updated the boot config, mostly to support the N2+, but probably other changes in it are somehow required/helpful with the latest kernel upgrade. As the new boot.ini is included in our latest N2 image, this one relevant difference I can think of, compared to updating an older image.

BillyCorgan1 commented 3 years ago

I apologise for not replying sooner. I cannot get the latest image that I download from the website to work. it just crashes and reboots on the following command:

DietPi-Update
─────────────────────────────────────────────────────

 Phase: Checking for available DietPi update

[ INFO ] DietPi-Update | Getting repository version: https://raw.githubusercontent.com/MichaIng/DietPi/beta/.update/version

There is no log file that I can get. There is no issue if I use the 6.28 version from early 2020. It works as expected.

MichaIng commented 3 years ago

~Does the v6.28 image still work if you upgrade the kernel via apt full-upgrade?~

Ah sorry, you verified this working already above, I think. So it is the image, not the kernel or DietPi version which causes the issue, right?

It must be the boot.ini then. Can you paste it:

cat /boot/boot.ini
BillyCorgan1 commented 3 years ago

This is the boot.ini of v6.28 to v7.23:

root@OdroidN2:~# cat /boot/boot.ini
ODROIDN2-UBOOT-CONFIG

# Default Console Device Setting
setenv condev "console=ttyS0,115200n8"   # on both

# Auto Detection of Monitor settings based on your Screen information
setenv display_autodetect "true"

# HDMI Mode
# Resolution Configuration
#    Symbol             | Resolution
# ----------------------+-------------
#    "480x272p60hz"     | 480x272 Progressive 60Hz
#    "480x320p60hz"     | 480x320 Progressive 60Hz
#    "480p60hz"         | 720x480 Progressive 60Hz
#    "576p50hz"         | 720x576 Progressive 50Hz
#    "720p60hz"         | 1280x720 Progressive 60Hz
#    "720p50hz"         | 1280x720 Progressive 50Hz
#    "1080p60hz"        | 1920x1080 Progressive 60Hz
#    "1080p50hz"        | 1920x1080 Progressive 50Hz
#    "1080p30hz"        | 1920x1080 Progressive 30Hz
#    "1080p24hz"        | 1920x1080 Progressive 24Hz
#    "1080i60hz"        | 1920x1080 Interlaced 60Hz
#    "1080i50hz"        | 1920x1080 Interlaced 50Hz
#    "2160p60hz"        | 3840x2160 Progressive 60Hz
#    "2160p50hz"        | 3840x2160 Progressive 50Hz
#    "2160p30hz"        | 3840x2160 Progressive 30Hz
#    "2160p25hz"        | 3840x2160 Progressive 25Hz
#    "2160p24hz"        | 3840x2160 Progressive 24Hz
#    "smpte24hz"        | 3840x2160 Progressive 24Hz SMPTE
#    "2160p60hz420"     | 3840x2160 Progressive 60Hz YCbCr 4:2:0
#    "2160p50hz420"     | 3840x2160 Progressive 50Hz YCbCr 4:2:0
#    "640x480p60hz"     | 640x480 Progressive 60Hz
#    "800x480p60hz"     | 800x480 Progressive 60Hz
#    "800x600p60hz"     | 800x600 Progressive 60Hz
#    "1024x600p60hz"    | 1024x600 Progressive 60Hz
#    "1024x768p60hz"    | 1024x768 Progressive 60Hz
#    "1280x800p60hz"    | 1280x800 Progressive 60Hz
#    "1280x1024p60hz"   | 1280x1024 Progressive 60Hz
#    "1360x768p60hz"    | 1360x768 Progressive 60Hz
#    "1440x900p60hz"    | 1440x900 Progressive 60Hz
#    "1600x900p60hz"    | 1600x900 Progressive 60Hz
#    "1600x1200p60hz"   | 1600x1200 Progressive 60Hz
#    "1680x1050p60hz"   | 1680x1050 Progressive 60Hz
#    "1920x1200p60hz"   | 1920x1200 Progressive 60Hz
#    "2560x1080p60hz"   | 2560x1080 Progressive 60Hz
#    "2560x1440p60hz"   | 2560x1440 Progressive 60Hz
#    "2560x1600p60hz"   | 2560x1600 Progressive 60Hz
#    "3440x1440p60hz"   | 3440x1440 Progressive 60Hz
setenv hdmimode "1080p60hz"

# Overscan percentage
# This value scales down the actual screen size by the percentage below
# valid range is 80 to 100
setenv overscan "100"

### voutmode : hdmi or dvi
setenv voutmode "hdmi"
# setenv voutmode "dvi"

# HPD enable/disable option
setenv disablehpd "false"

# Hardkernel ODROID-VU7 support
# By default VU7 support is disabled
setenv disable_vu7 "true"
# setenv disable_vu7 "false"

# max cpu frequency for big core, A73 in MHz unit
# setenv max_freq_a73 "2004"  # 2.004 GHz
# setenv max_freq_a73 "1992"  # 1.992 GHz
# setenv max_freq_a73 "1908"  # 1.908 GHz
setenv max_freq_a73 "1800"  # 1.8 GHz, default value
# setenv max_freq_a73 "1704"  # 1.704 GHz

# max cpu frequency for little core, A53 in MHz unit
# setenv max_freq_a53 "1992"  # 1.992 GHz
setenv max_freq_a53 "1896"  # 1.896 GHz, default value
# setenv max_freq_a53 "1704"  # 1.704 GHz

# max cpu-cores
# Note:
# CPU's 0 and 1 are the A53 (small cores)
# CPU's 2 to 5 are the A73 (big cores)
# Lowering this value disables only the bigger cores (the last cores).
# setenv maxcpus "4"
# setenv maxcpus "5"
setenv maxcpus "6"

### Normal HDMI Monitors
if test "${display_autodetect}" = "true"; then hdmitx edid; fi
if test "${hdmimode}" = "custombuilt"; then setenv cmode "modeline=${modeline}"; fi

# VU7 Settings
if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x0eef:0x0005:0x0004"; fi

# Boot Args
setenv bootargs "root=UUID=e139ce78-9841-40fe-8823-96a304a09859 rootwait rw ${condev} ${amlogic} no_console_suspend fsck.repair=yes net.ifnames=0 elevator=noop hdmimode=${hdmimode} cvbsmode=576cvbs max_freq_a53=${max_freq_a53} max_freq_a73=${max_freq_a73} maxcpus=${maxcpus} voutmode=${voutmode} disablehpd=${disablehpd} ${hid_quirks} ${cmode} overscan=${overscan} cvbscable=${cvbscable}"

# Set load addresses
setenv dtb_loadaddr "0x1000000"
setenv k_addr "0x1100000"
setenv loadaddr "0x1B00000"
setenv initrd_loadaddr "0x3700000"

# Load kernel, dtb and initrd
fatload mmc ${devno}:1 ${k_addr} Image.gz
fatload mmc ${devno}:1 ${dtb_loadaddr} meson64_odroidn2.dtb
fatload mmc ${devno}:1 ${initrd_loadaddr} uInitrd
fdt addr ${dtb_loadaddr}
# unzip the kernel
unzip ${k_addr} ${loadaddr}

# boot
booti ${loadaddr} ${initrd_loadaddr} ${dtb_loadaddr}
root@OdroidN2:~#
`

This is the boot.ini that I have pulled from the iso 0f v7.02:

`ODROIDN2-UBOOT-CONFIG

setenv board "odroidn2"

# Serial console device: /dev/tty1 is appended automatically
setenv condev "console=ttyS0,115200n8"

# Auto-detection of monitor settings based on your screen information: "false" or "true"
setenv display_autodetect "true"

# Toggle HDMI output: "false" or "true"
setenv monitor_onoff "false"

# Force SDR or HDR mode: "sdr", "hdr" or "auto"
setenv sdrmode "auto"

# Toggle CEC support: "false" or "true"
setenv cec "true"

# Toggle Wake-On-Lan support: 0=disable, 1=enable
setenv enable_wol "0"

# Device tree overlays
# See /boot/overlays/odroidn2/ for available overlays, e.g.:
# - hktft32: 3.2" TFT from HardKernel
# - hktft35: 3.5" TFT from HardKernel
#setenv overlays "spi0 i2c0 i2c1 uart0"

# HDMI mode resolution configuration
#    Symbol             | Resolution
# ----------------------+-------------
#    "480x272p60hz"     | 480x272 Progressive 60Hz
#    "480x320p60hz"     | 480x320 Progressive 60Hz
#    "480p60hz"         | 720x480 Progressive 60Hz
#    "576p50hz"         | 720x576 Progressive 50Hz
#    "720p60hz"         | 1280x720 Progressive 60Hz
#    "720p50hz"         | 1280x720 Progressive 50Hz
#    "1080p60hz"        | 1920x1080 Progressive 60Hz
#    "1080p50hz"        | 1920x1080 Progressive 50Hz
#    "1080p30hz"        | 1920x1080 Progressive 30Hz
#    "1080p24hz"        | 1920x1080 Progressive 24Hz
#    "1080i60hz"        | 1920x1080 Interlaced 60Hz
#    "1080i50hz"        | 1920x1080 Interlaced 50Hz
#    "2160p60hz"        | 3840x2160 Progressive 60Hz
#    "2160p50hz"        | 3840x2160 Progressive 50Hz
#    "2160p30hz"        | 3840x2160 Progressive 30Hz
#    "2160p25hz"        | 3840x2160 Progressive 25Hz
#    "2160p24hz"        | 3840x2160 Progressive 24Hz
#    "smpte24hz"        | 3840x2160 Progressive 24Hz SMPTE
#    "2160p60hz420"     | 3840x2160 Progressive 60Hz YCbCr 4:2:0
#    "2160p50hz420"     | 3840x2160 Progressive 50Hz YCbCr 4:2:0
#    "640x480p60hz"     | 640x480 Progressive 60Hz
#    "800x480p60hz"     | 800x480 Progressive 60Hz
#    "800x600p60hz"     | 800x600 Progressive 60Hz
#    "1024x600p60hz"    | 1024x600 Progressive 60Hz
#    "1024x768p60hz"    | 1024x768 Progressive 60Hz
#    "1280x800p60hz"    | 1280x800 Progressive 60Hz
#    "1280x1024p60hz"   | 1280x1024 Progressive 60Hz
#    "1360x768p60hz"    | 1360x768 Progressive 60Hz
#    "1440x900p60hz"    | 1440x900 Progressive 60Hz
#    "1600x900p60hz"    | 1600x900 Progressive 60Hz
#    "1600x1200p60hz"   | 1600x1200 Progressive 60Hz
#    "1680x1050p60hz"   | 1680x1050 Progressive 60Hz
#    "1920x1200p60hz"   | 1920x1200 Progressive 60Hz
#    "2560x1080p60hz"   | 2560x1080 Progressive 60Hz
#    "2560x1440p60hz"   | 2560x1440 Progressive 60Hz
#    "2560x1600p60hz"   | 2560x1600 Progressive 60Hz
#    "3440x1440p60hz"   | 3440x1440 Progressive 60Hz
setenv hdmimode "1080p60hz"

# Custom modeline
# To use a custom modeline you need to comment "setenv hdmimode" above,
# uncomment the two settings below and adjust "setenv modeline" to your needs:
# http://odroid.com/dokuwiki/doku.php?id=en:c2_hdmi_autosetting
#setenv hdmimode "custombuilt"
#setenv modeline "2560,1440,241500,88800,60,2560,2608,2640,2720,1440,1442,1447,1481,1,1,1"

# Toggle composite video (CVBS) output: "0" or "1"
setenv cvbscable "0"

# Composite video (CVBS) mode: "480cvbs" (NTSC) or "576cvbs" (PAL)
setenv cvbsmode "576cvbs"

# Overscan percentage
# This value scales down the actual screen size by the percentage below.
# Valid range is 80 to 100.
setenv overscan "100"

# Output mode: "hdmi" or "dvi"
# "dvi" disables HDMI audio.
setenv voutmode "hdmi"

# Disable HDMI hot-plug detection and force HDMI output: "false" or "true"
setenv disablehpd "false"

# Disable Hardkernel ODROID-VU7 LCD support: "false" or "true" (default)
setenv disable_vu7 "true"

# Max CPU frequency for big A73 cores in MHz
# - Valid values on Odroid N2: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800 (default), 1908, 2004
# - Valid values on Odroid N2+: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800, 1908, 2016, 2100, 2208 (default), 2304, 2400
#setenv max_freq_a73 "2004"

# Max CPU frequency for small A53 cores in MHz
# - Valid values on Odroid N2: 100, 250, 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1896 (default), 1992
# - Valid values on Odroid N2+: 500, 667, 1000, 1200, 1398, 1512, 1608, 1704, 1800, 1908 (default), 2016
#setenv max_freq_a53 "1992"

# Max CPU cores
# CPU's 0 and 1 are the A53 (small cores)
# CPU's 2 to 5 are the A73 (big cores)
# Lowering this value disables only the bigger cores (the last cores).
# Valid range is 1 to 6.
setenv maxcpus "6"

### DO NOT EDIT ANYTHING BELOW THIS LINE ###

# Apply HDMI settings
if test "${display_autodetect}" = "true"; then hdmitx edid; fi
if test "${hdmimode}" = "custombuilt"; then setenv cmode "modeline=${modeline}"; fi

# Apply CEC setting
if test "${cec}" = "true"; then setenv cec_enable "hdmitx=cec3f"; fi

# Apply VU7 settings
if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x0eef:0x0005:0x0004"; fi

# Apply CPU frequencies if assigned
if test "x${max_freq_a73}" != "x"; then setenv a73_freq "max_freq_a73=${max_freq_a73}"; fi
if test "x${max_freq_a53}" != "x"; then setenv a53_freq "max_freq_a53=${max_freq_a53}"; fi

# Label for petitboot
setenv bootlabel "DietPi (64-bit)"

# Boot args
setenv bootargs "root=UUID=e139ce78-9841-40fe-8823-96a304a09859 rootwait ro ${condev} ${amlogic} no_console_suspend fsck.repair=yes net.ifnames=0 elevator=noop hdmimode=${hdmimode} cvbsmode=${cvbsmode} maxcpus=${maxcpus} voutmode=${voutmode} disablehpd=${disablehpd} enable_wol=${enable_wol} ${cec_enable} sdrmode=${sdrmode} consoleblank=0 logo=osd0,loaded monitor_onoff=${monitor_onoff} ${hid_quirks} ${cmode} overscan=${overscan} cvbscable=${cvbscable} ${a73_freq} ${a53_freq}"

# Set load addresses
setenv dtb_loadaddr "0x1000000"
setenv k_addr "0x1100000"
setenv loadaddr "0x1B00000"
setenv initrd_loadaddr "0x3700000"

# Load kernel, dtb and initrd
fatload mmc ${devno}:1 ${k_addr} Image.gz
fatload mmc ${devno}:1 ${dtb_loadaddr} meson64_odroid${variant}.dtb
fatload mmc ${devno}:1 ${initrd_loadaddr} uInitrd
fdt addr ${dtb_loadaddr}

# Load device tree overlays
if test "x${overlays}" != "x"; then
    setenv dtbo_addr_r "0x11000000"
    fdt resize "16384"
    for overlay in ${overlays}; do
        fatload mmc ${devno}:1 ${dtbo_addr_r} overlays/${board}/${overlay}.dtbo && fdt apply ${dtbo_addr_r}
    done
fi

# Unzip the kernel
unzip ${k_addr} ${loadaddr}

# Boot
booti ${loadaddr} ${initrd_loadaddr} ${dtb_loadaddr}
BillyCorgan1 commented 3 years ago

I think there is a problem with this part of the boot.ini:

# Load kernel, dtb and initrd fatload mmc ${devno}:1 ${k_addr} Image.gz fatload mmc ${devno}:1 ${dtb_loadaddr} meson64_odroid${variant}.dtb fatload mmc ${devno}:1 ${initrd_loadaddr} uInitrd fdt addr ${dtb_loadaddr}

I ignored the warning and edited meson64_odroid${variant}.dtb to meson64_odroidn2.dtb and the system booted up as expected and I was able to install DietPi. It rebooted once during dietpi-config but I was able to finish and install Plex and Samba. I am wondering if there is a problem with which variant is being called.

MichaIng commented 3 years ago

That is mysterious. If the variant variable wouldn't be set, or set to anything different than n2 or n2_plus it would fail to boot in the first place as no device tree would be found. If it boots, it is set to one of these two, so if some part firmware/bootloader side would be outdated to not set the variable "correctly", then it is nearly assured to be n2 on N2+ instead of n2_plus on N2 non-plus. As before also setting the CPU frequencies explicitly seemed to have solved the issue, while without doing that in fact the exact same frequencies were used, I still bet that it is not related to a wrong variable or board detection, and that actual issues do appear a bit random, so that it succeeds sometimes and fails sometimes, which makes it difficult to reliably reproduce it and derive whether a change fixed it or not.

Can you please paste the whole output of dmesg, probably we see some hint there.

BillyCorgan1 commented 3 years ago

OK, here is the output of dmesg after booting:

Logfile attached. Click to expand! ``` root@OdroidN2:~# dmesg [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 4.9.241-arm64 (root@odroid-stretch64) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP PREEMPT Thu Feb 25 18:56:07 CET 2021 [ 0.000000] Boot CPU: AArch64 Processor [410fd034] [ 0.000000] Machine model: Hardkernel ODROID-N2 [ 0.000000] efi: Getting EFI parameters from FDT: [ 0.000000] efi: UEFI not found. [ 0.000000] __reserved_mem_alloc_size, start:0x000000007f800000, end:0x0000000080000000, len:8 MiB [ 0.000000] 7f800000 - 80000000, 8192 KB, linux,meson-fb [ 0.000000] e5800000 - ed800000, 131072 KB, linux,ion-dev [ 0.000000] e3000000 - e5800000, 40960 KB, linux,di_cma [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000e3000000, size 0 MiB [ 0.000000] e3000000 - e3000000, 0 KB, linux,ppmgr [ 0.000000] cfc00000 - e3000000, 315392 KB, linux,codec_mm_cma [ 0.000000] cfc00000 - cfc00000, 0 KB, linux,codec_mm_reserved [ 0.000000] __reserved_mem_alloc_size, start:0x0000000005000000, end:0x0000000005400000, len:4 MiB [ 0.000000] 05000000 - 05400000, 4096 KB, linux,secmon [ 0.000000] cma: Reserved 8 MiB at 0x00000000cf400000 [ 0.000000] On node 0 totalpages: 972800 [ 0.000000] DMA zone: 15200 pages used for memmap [ 0.000000] DMA zone: 0 pages reserved [ 0.000000] DMA zone: 972800 pages, LIFO batch:31 [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.0 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: MIGRATE_INFO_TYPE not supported. [ 0.000000] psci: SMC Calling Convention v1.1 [ 0.000000] percpu: Embedded 21 pages/cpu s48024 r8192 d29800 u86016 [ 0.000000] pcpu-alloc: s48024 r8192 d29800 u86016 alloc=21*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [0] 4 [0] 5 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: enabling workaround for ARM erratum 845719 [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 957600 [ 0.000000] Kernel command line: root=UUID=e139ce78-9841-40fe-8823-96a304a09859 rootwait ro console=ttyS0,115200n8 no_console_suspend fsck.repair=yes net.ifnames=0 elevator=noop hdmimode=1080p60hz cvbsmode=576cvbs maxcpus=6 voutmode=hdmi disablehpd=false enable_wol=0 hdmitx=cec3f sdrmode=auto consoleblank=0 logo=osd0,loaded monitor_onoff=false overscan=100 cvbscable=0 [ 0.000000] vout: get hdmimode: 1080p60hz [ 0.000000] vout: get cvbsmode: 576cvbs [ 0.000000] hdmitx: voutmode : 1 [ 0.000000] hdmitx: HDMI hdmi_cec_func_config:0x3f [ 0.000000] fb: osd0 [ 0.000000] fb: loaded [ 0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes) [ 0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes) [ 0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes) [ 0.000000] Memory: 3282144K/3891200K available (11580K kernel code, 1776K rwdata, 4980K rodata, 4800K init, 1412K bss, 101152K reserved, 507904K cma-reserved) [ 0.000000] Virtual kernel memory layout: [ 0.000000] modules : 0xffffff8000000000 - 0xffffff8008000000 ( 128 MB) [ 0.000000] vmalloc : 0xffffff8008000000 - 0xffffffbebfff0000 ( 250 GB) [ 0.000000] .text : 0xffffff8009080000 - 0xffffff8009bd0000 ( 11584 KB) [ 0.000000] .rodata : 0xffffff8009bd0000 - 0xffffff800a0c0000 ( 5056 KB) [ 0.000000] .init : 0xffffff800a0c0000 - 0xffffff800a570000 ( 4800 KB) [ 0.000000] .data : 0xffffff800a570000 - 0xffffff800a72c200 ( 1777 KB) [ 0.000000] .bss : 0xffffff800a72c200 - 0xffffff800a88d3fc ( 1413 KB) [ 0.000000] fixed : 0xffffffbefe7fd000 - 0xffffffbefec00000 ( 4108 KB) [ 0.000000] PCI I/O : 0xffffffbefee00000 - 0xffffffbeffe00000 ( 16 MB) [ 0.000000] vmemmap : 0xffffffbf00000000 - 0xffffffc000000000 ( 4 GB maximum) [ 0.000000] 0xffffffbf00000000 - 0xffffffbf03b60000 ( 59 MB actual) [ 0.000000] memory : 0xffffffc000000000 - 0xffffffc0ed800000 ( 3800 MB) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=6, Nodes=1 [ 0.000000] Preemptible hierarchical RCU implementation. [ 0.000000] Build-time adjustment of leaf fanout to 64. [ 0.000000] RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=6. [ 0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=6 [ 0.000000] NR_IRQS:64 nr_irqs:64 0 [ 0.000000] GPIO-INTC: support to detect double-edge trigger signal [ 0.000000] g12a_aoclkc_init: register ao clk ok! [ 0.000000] Meson chip version = RevA (29:A - 40:0) [ 0.000000] meson_g12a_sdemmc_init: register amlogic sdemmc clk [ 0.000000] meson_g12a_sdemmc_init: register amlogic sdemmc clk [ 0.000000] meson_g12a_gpu_init: register meson gpu clk [ 0.000000] meson_g12a_media_init: register meson media clk [ 0.000000] meson_g12a_misc_init: register amlogic g12a misc clks [ 0.000000] meson_g12a_misc_init: done. [ 0.000000] g12a_clkc_init initialization complete [ 0.000000] arm_arch_timer: Architected cp15 timer(s) running at 24.00MHz (phys). [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns [ 0.000003] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns [ 0.000037] meson_bc_timer: mclk->mux_reg =ffffff800800c190,mclk->reg =ffffff800800e194 [ 0.000581] Console: colour dummy device 80x25 [ 0.000599] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000) [ 0.000607] pid_max: default: 32768 minimum: 301 [ 0.000701] Security Framework initialized [ 0.000719] AppArmor: AppArmor initialized [ 0.000750] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes) [ 0.000758] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes) [ 0.001330] ftrace: allocating 38730 entries in 152 pages [ 0.069531] sched-energy: Sched-energy-costs installed from DT [ 0.069544] CPU0: update cpu_capacity 631 [ 0.069556] ASID allocator initialised with 65536 entries [ 0.116277] secmon: clear_range:5100000 200000 [ 0.116907] EFI services will not be available. [ 0.161755] Detected VIPT I-cache on CPU1 [ 0.161803] CPU1: update cpu_capacity 631 [ 0.161805] CPU1: Booted secondary processor [410fd034] [ 0.194279] Detected VIPT I-cache on CPU2 [ 0.194324] CPU2: update cpu_capacity 920 [ 0.194326] CPU2: Booted secondary processor [410fd092] [ 0.225826] Detected VIPT I-cache on CPU3 [ 0.225848] CPU3: update cpu_capacity 920 [ 0.225850] CPU3: Booted secondary processor [410fd092] [ 0.257905] Detected VIPT I-cache on CPU4 [ 0.257927] CPU4: update cpu_capacity 920 [ 0.257929] CPU4: Booted secondary processor [410fd092] [ 0.289966] Detected VIPT I-cache on CPU5 [ 0.289988] CPU5: update cpu_capacity 920 [ 0.289990] CPU5: Booted secondary processor [410fd092] [ 0.290081] Brought up 6 CPUs [ 0.290120] SMP: Total of 6 processors activated. [ 0.290128] CPU features: detected feature: 32-bit EL0 Support [ 0.290245] CPU: All CPU(s) started at EL2 [ 0.290284] alternatives: patching kernel code [ 0.291886] devtmpfs: initialized [ 0.306144] DMI not present or invalid. [ 0.306417] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.306433] futex hash table entries: 2048 (order: 5, 131072 bytes) [ 0.306642] pinctrl core: initialized pinctrl subsystem [ 0.307419] NET: Registered protocol family 16 [ 0.308767] schedtune: init normalization constants... [ 0.308779] schedtune: CLUSTER[0-1] min_pwr: 0 max_pwr: 42 [ 0.308785] schedtune: CPU[0] min_pwr: 0 max_pwr: 279 [ 0.308790] schedtune: CPU[1] min_pwr: 0 max_pwr: 279 [ 0.308796] schedtune: CLUSTER[2-5] min_pwr: 0 max_pwr: 64 [ 0.308801] schedtune: CPU[2] min_pwr: 0 max_pwr: 759 [ 0.308806] schedtune: CPU[3] min_pwr: 0 max_pwr: 759 [ 0.308812] schedtune: CPU[4] min_pwr: 0 max_pwr: 759 [ 0.308817] schedtune: CPU[5] min_pwr: 0 max_pwr: 759 [ 0.308822] schedtune: SYSTEM min_pwr: 0 max_pwr: 3700 [ 0.308827] schedtune: using normalization constants mul: 459677581 sh1: 1 sh2: 11 [ 0.308831] schedtune: verify normalization constants... [ 0.308836] schedtune: max_pwr/2^0: 3700 => norm_pwr: 1024 [ 0.308840] schedtune: max_pwr/2^1: 1850 => norm_pwr: 512 [ 0.308844] schedtune: max_pwr/2^2: 925 => norm_pwr: 256 [ 0.308849] schedtune: max_pwr/2^3: 462 => norm_pwr: 127 [ 0.308853] schedtune: max_pwr/2^4: 231 => norm_pwr: 63 [ 0.308857] schedtune: max_pwr/2^5: 115 => norm_pwr: 31 [ 0.308861] schedtune: configured to support global boosting only [ 0.317905] cpuidle: using governor menu [ 0.318020] register canvas platform driver [ 0.318055] register rdma platform driver [ 0.319313] vdso: 2 pages (1 code @ ffffff8009bd7000, 1 data @ ffffff800a575000) [ 0.319331] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers. [ 0.320849] DMA: preallocated 2048 KiB pool for atomic allocations [ 0.321053] clkmsr: clkmsr: driver init [ 0.321060] codec_mm_module_init [ 0.321087] media_configs_system_init [ 0.323177] aml_iomap: amlogic iomap probe done [ 0.323563] vpu: driver version: v20190329(8-g12b) [ 0.323574] vpu: load vpu_clk: 666666667Hz(7) [ 0.323755] vpu: clktree_init [ 0.323814] vpu: vpu_probe OK [ 0.328625] clkmsr: msr_clk_reg0=ffffff800823a004,msr_clk_reg2=ffffff800823c00c [ 0.328640] clkmsr ffd18004.meson_clk_msr: failed to get msr ring reg0 [ 0.330850] audio_clocks: audio_clocks_probe done [ 0.332868] aml_vdac_config_probe: cpu_id:4, name:meson-g12ab-vdac [ 0.333071] aml_vdac_probe: ok [ 0.333243] canvas_probe reg=00000000ff638000,size=2000 [ 0.333262] canvas maped reg_base =ffffff8008268000 [ 0.339628] rdma_probe,cpu_type:1, ver:0, len:8 [ 0.339866] rdma_register, rdma_table_addr ffffff8008277000 rdma_table_addr_phy cf600000 reg_buf ffffffc0ca2a0000 [ 0.339874] rdma_register success, handle 1 table_size 32768 [ 0.339879] set_rdma_handle video rdma handle = 1. [ 0.339930] classs created ok [ 0.339942] classs file created ok [ 0.340940] aml_snd_reg_map[0], reg:ff640000, size:2000 [ 0.340958] aml_snd_reg_map[1], reg:ff642000, size:2000 [ 0.340969] aml_snd_reg_map[2], reg:ff64a000, size:2000 [ 0.340979] aml_snd_reg_map[3], reg:ff656000, size:1800 [ 0.340994] aml_snd_reg_map[4], reg:ffd01000, size:1000 [ 0.340998] amlogic auge_snd_iomap probe done [ 0.343235] codec_mm codec_mm: assigned reserved memory node linux,codec_mm_cma [ 0.343349] codec_mm codec_mm: assigned reserved memory node linux,codec_mm_cma [ 0.343355] codec_mm_probe ok [ 0.344350] cvbs_out: cvbsout_probe, cpu_id:5,name:meson-g12b-cvbsout [ 0.344367] cvbs_out: clk path:0 [ 0.344373] cvbs_out: cvbs trimming.1.v5: 0xa0, 0x0 [ 0.344509] vout: vout1: register server: cvbs_vout_server [ 0.344515] cvbs_out: register cvbs module server ok [ 0.344519] vout: vout2: register server: cvbs_vout2_server [ 0.344523] cvbs_out: register cvbs module vout2 server ok [ 0.344530] cvbs_out: chrdev devno 264241152 for disp [ 0.344745] cvbs_out: create cdev cvbs [ 0.344753] cvbs_out: cvbsout_probe OK [ 0.471605] SCSI subsystem initialized [ 0.471760] usbcore: registered new interface driver usbfs [ 0.471798] usbcore: registered new interface driver hub [ 0.471884] usbcore: registered new device driver usb [ 0.471969] media: Linux media interface: v0.10 [ 0.471992] Linux video capture interface: v2.00 [ 0.472028] pps_core: LinuxPPS API ver. 1 registered [ 0.472032] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti [ 0.472046] PTP clock support registered [ 0.472118] dmi: Firmware registration failed. [ 0.472436] secmon: reserve_mem_size:0x300000 [ 0.472500] secmon secmon: assigned reserved memory node linux,secmon [ 0.472666] secmon: get page:ffffffbf00140000, 5000 [ 0.472671] secmon: share in base: 0xffffffc0050fe000, share out base: 0xffffffc0050ff000 [ 0.472676] secmon: phy_in_base: 0x50fe000, phy_out_base: 0x50ff000 [ 0.473091] hdmitx: system: amhdmitx_probe start [ 0.473095] hdmitx: system: Ver: 20190815 [ 0.473123] hdmitx: system: hdmitx_device.chip_type : 11 [ 0.473148] hdmitx: system: not find match pwr-ctl [ 0.473176] hdmitx: system: not find drm_amhdmitx [ 0.473194] hdmitx: system: hpd irq = 40 [ 0.473279] hdmitx: system: hdcp22_tx_skp failed to probe [ 0.473283] hdmitx: system: hdcp22_tx_esm failed to probe [ 0.473578] vout: vout1: register server: hdmitx_vout_server [ 0.473583] vout: vout2: register server: hdmitx_vout2_server [ 0.473927] hdmitx: hdmitx20: Mapped PHY: 0xffd00000 [ 0.473937] hdmitx: hdmitx20: Mapped PHY: 0xff634400 [ 0.473944] hdmitx: hdmitx20: Mapped PHY: 0xff900000 [ 0.473961] hdmitx: hdmitx20: Mapped PHY: 0xff800000 [ 0.473965] hdmitx: hdmitx20: Mapped PHY: 0xff63c000 [ 0.473970] hdmitx: hdmitx20: Mapped PHY: 0xffd00000 [ 0.473974] hdmitx: hdmitx20: Mapped PHY: 0xff608000 [ 0.473978] hdmitx: hdmitx20: Mapped PHY: 0xff600000 [ 0.473982] hdmitx: hdmitx20: Mapped PHY: 0xffe01000 [ 0.473990] hdmitx: hw: alread display in uboot 0x10 [ 0.474013] hdmitx: hw: avmute set to 1 [ 0.474019] hdmitx: system: fmt_attr 444,8bit [ 0.474022] hdmitx: system: fmt_attr 444,8bit [ 0.474070] hdmitx: system: amhdmitx_probe end [ 0.474296] vout: create vout attribute OK [ 0.474397] vout: vout_fops_create OK [ 0.474401] vout: vout1: register server: nulldisp_vout_server [ 0.474461] vout: tvout monitor interval:500(ms), timeout cnt:20 [ 0.474478] hdmitx: hdmitx_set_current_vmode[3877] [ 0.474482] hdmitx: system: recalc before 1080p60hz 60 1 [ 0.474487] hdmitx: system: recalc after 1080p60hz 2997 50 [ 0.474490] hdmitx: alread display in uboot [ 0.474493] vout: init mode 1080p60hz set ok [ 0.474496] vout: aml_tvout_mode_monitor [ 0.474505] vout: aml_vout_probe OK [ 0.474935] chip type:0x29 [ 0.475222] Advanced Linux Sound Architecture Driver Initialized. [ 0.475834] NetLabel: Initializing [ 0.475839] NetLabel: domain hash size = 128 [ 0.475842] NetLabel: protocols = UNLABELED CIPSOv4 [ 0.475874] NetLabel: unlabeled traffic allowed by default [ 0.476955] clocksource: Switched to clocksource arch_sys_counter [ 0.505514] VFS: Disk quotas dquot_6.6.0 [ 0.505561] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) [ 0.505697] AppArmor: AppArmor Filesystem Enabled [ 0.511824] NET: Registered protocol family 2 [ 0.512168] TCP established hash table entries: 32768 (order: 6, 262144 bytes) [ 0.512343] TCP bind hash table entries: 32768 (order: 7, 524288 bytes) [ 0.512562] TCP: Hash tables configured (established 32768 bind 32768) [ 0.512611] UDP hash table entries: 2048 (order: 4, 65536 bytes) [ 0.512649] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes) [ 0.512778] NET: Registered protocol family 1 [ 0.512797] PCI: CLS 0 bytes, default 64 [ 0.513921] Unpacking initramfs... [ 0.800333] Freeing initrd memory: 7816K [ 0.806009] hw perfevents: clusterb_enabled = 1 [ 0.806019] hw perfevents: cpumasks 0x3, 0x3c [ 0.806042] hw perfevents: cluster A irq = 18 [ 0.806067] hw perfevents: cluster B irq = 19 [ 0.806114] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available [ 0.807647] audit: initializing netlink subsys (disabled) [ 0.807684] audit: type=2000 audit(0.756:1): initialized [ 0.808321] workingset: timestamp_bits=46 max_order=20 bucket_order=0 [ 0.814130] Registering sdcardfs 0.1 [ 0.816790] NET: Registered protocol family 38 [ 0.816799] Key type asymmetric registered [ 0.816804] Asymmetric key parser 'x509' registered [ 0.816923] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243) [ 0.816931] io scheduler noop registered (default) [ 0.816935] io scheduler deadline registered [ 0.817057] io scheduler cfq registered [ 0.817356] pwm-gpio pwmgpio: 1 gpio pwms loaded [ 0.818350] meson-pwm ff802000.pwm: pwm pinmux : can't get pinctrl [ 0.818550] meson-pwm ffd1b000.pwm: pwm pinmux : can't get pinctrl [ 0.819034] random: fast init done [ 0.819063] random: crng init done [ 0.819220] gpiomem-aml ff634000.gpiomem: Initialised: GPIO register area is 1 [ 0.819315] gpiomem-aml ff634000.gpiomem: Initialised: Registers at start:0xff634000 end:0xff634fff size:0x00000fff [ 0.819380] [drm] Initialized [ 0.819562] Unable to detect cache hierarchy for CPU 0 [ 0.826878] loop: module loaded [ 0.827156] mtdoops: mtd device (mtddev=name/number) must be supplied [ 0.827454] libphy: Fixed MDIO Bus: probed [ 0.827949] REG0:Addr = ffffff80083b3540 [ 0.827958] ee eth reset:Addr = ffffff80083b5008 [ 0.827965] read auto_cali_idx fail [ 0.827970] Not set cali_val for REG1 [ 0.828295] meson6-dwmac ff3f0000.ethernet: no reset control found [ 0.828302] stmmac - user ID: 0x11, Synopsys ID: 0x37 [ 0.828305] Ring mode enabled [ 0.828309] DMA HW capability register supported [ 0.828313] Normal descriptors [ 0.828316] RX Checksum Offload Engine supported [ 0.828319] COE Type 2 [ 0.828322] TX Checksum insertion supported [ 0.828324] Wake-Up On Lan supported [ 0.828352] eth%d: device MAC address 00:1e:06:42:48:83 [ 0.828356] Enable RX Mitigation via HW Watchdog Timer [ 0.839278] libphy: stmmac: probed [ 0.839290] eth%d: PHY ID 001cc916 at 0 IRQ POLL (stmmac-0:00) active [ 0.839295] eth%d: PHY ID 001cc916 at 7 IRQ POLL (stmmac-0:07) [ 0.840311] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 0.840317] ehci-pci: EHCI PCI platform driver [ 0.840373] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 0.840654] usbcore: registered new interface driver cdc_acm [ 0.840658] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters [ 0.840695] usbcore: registered new interface driver usb-storage [ 0.840758] usbcore: registered new interface driver usbserial [ 0.840788] usbcore: registered new interface driver usbserial_generic [ 0.840807] usbserial: USB Serial support registered for generic [ 0.841088] mousedev: PS/2 mouse device common for all mice [ 0.841293] i2c /dev entries driver [ 0.843028] lirc_helper: wakeupkey 0xffffffff, protocol 0x1 [ 0.843536] device-mapper: uevent: version 1.0.3 [ 0.843720] device-mapper: ioctl: 4.35.0-ioctl (2016-06-23) initialised: dm-devel@redhat.com [ 0.844480] ledtrig-cpu: registered to indicate activity on CPUs [ 0.844699] hidraw: raw HID events driver (C) Jiri Kosina [ 0.844870] usbcore: registered new interface driver usbhid [ 0.844874] usbhid: USB HID core driver [ 0.845243] meson_cpufreq_init: ignor dsu clk! [ 0.845249] meson_cpufreq_init: ignor dsu pre parent clk! [ 0.845281] value of voltage_tolerance 0 [ 0.845285] meson_cpufreq_init:don't find the node [ 0.845288] value of gp1_clk_target 0 [ 0.845770] dvfs [meson_cpufreq_init] - cluster 0 freq 1992000 [ 0.845781] cpu cpu0: meson_cpufreq_init: CPU 0 initialized [ 0.847266] meson_cpufreq_init: ignor dsu clk! [ 0.847270] meson_cpufreq_init: ignor dsu pre parent clk! [ 0.847312] value of voltage_tolerance 0 [ 0.847316] meson_cpufreq_init:don't find the node [ 0.847320] value of gp1_clk_target 0 [ 0.847846] dvfs [meson_cpufreq_init] - cluster 1 freq 1908000 [ 0.847850] dvfs [meson_cpufreq_init] - cluster 1 freq 2004000 [ 0.847857] cpu cpu2: meson_cpufreq_init: CPU 2 initialized [ 0.849320] ff803000.serial: clock gate not found [ 0.849344] meson_uart ff803000.serial: ==uart0 reg addr = ffffff80083bb000 [ 0.849364] ff803000.serial: ttyS0 at MMIO 0xff803000 (irq = 31, base_baud = 1500000) is a meson_uart [ 0.849374] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 0 to 115200 [ 2.664805] console [ttyS0] enabled [ 2.668930] amlogic-new-usb2-v2 ffe09000.usb2phy: USB2 phy probe:phy_mem:0xffe09000, iomap phy_base:0xffffff80083bd000 [ 2.679424] amlogic-new-usb3-v2 ffe09080.usb3phy: USB3 phy probe:phy_mem:0xffe09080, iomap phy_base:0xffffff80083fb080 [ 2.691057] gpio-keypad: probe of ff800000.gpio_keypad failed with error -22 [ 2.697436] efusekeynum: 1 [ 2.700165] efusekeyname: uuid offset: 0 size: 32 [ 2.706659] efuse efuse: probe OK! [ 2.710847] ion_dev soc:ion_dev: assigned reserved memory node linux,ion-dev [ 2.717528] ge2d: ge2d_init_module [ 2.720953] ge2d: ge2d_dev major:236 [ 2.724694] ge2d: clock source clk_ge2d_gate ffffffc0c9cb8f00 [ 2.730508] ge2d: clock clk_ge2d source ffffffc0c9cb8f80 [ 2.735963] ge2d: clock source clk_vapb_0 ffffffc03d037000 [ 2.741585] ge2d: ge2d init clock is 500000000 HZ, VPU clock is 666666656 HZ [ 2.748837] ge2d: ge2d clock is 499 MHZ [ 2.752769] ge2d: find address resource [ 2.756756] ge2d: map io source 0x00000000ff940000,size=65536 to 0xffffff8008510000 [ 2.764552] ge2d: reserved mem init failed [ 2.768797] ge2d: ge2d: pdev=ffffffc0ca257c00, irq=43, clk=ffffffc0c9cb8f00 [ 2.775923] ge2d: ge2d start monitor [ 2.779662] ge2d: ge2d workqueue monitor start [ 2.779824] [tsync_pcr_init]init success. [ 2.779892] amvideom vsync irq: 44 [ 2.779907] create_ge2d_work_queue video task ok [ 2.780161] fb: osd_init_module [ 2.780303] fb: viu vsync irq: 44 [ 2.780309] fb: viu2 vsync irq: 53 [ 2.780351] 0x000000db:Y=db,U=0,V=0 [ 2.780352] 0x000000dc:Y=dc,U=0,V=0 [ 2.780353] 0x000000dd:Y=dd,U=0,V=0 [ 2.780353] 0x000000de:Y=de,U=0,V=0 [ 2.780354] 0x000000df:Y=df,U=0,V=0 [ 2.780355] 0x000000e0:Y=e0,U=0,V=0 [ 2.784320] fb: osd_rdma_init: rdma_table p=0xcf608000,op=0xcf608000 , v=0xffffff8008505000 [ 2.784334] rdma_register, rdma_table_addr ffffff8008507000 rdma_table_addr_phy cf609000 reg_buf ffffffc0c9c34000 [ 2.784335] rdma_register success, handle 2 table_size 4096 [ 2.784336] fb: osd_rdma_init:osd rdma handle = 2. [ 2.784342] fb: mem_size: 0x800000 [ 2.784342] fb: mem_size: 0x4b80000 [ 2.784343] fb: mem_size: 0x100000 [ 2.784343] fb: mem_size: 0x100000 [ 2.784344] fb: mem_size: 0x800000 [ 2.784372] meson-fb meson-fb: assigned reserved memory node linux,meson-fb [ 2.784373] fb: reserved memory base:0x000000007f800000, size:800000 [ 2.784440] fb: fb def : 1920 1080 1920 2160 32 [ 2.784440] fb: init fbdev bpp is:32 [ 2.898288] fb: malloc_osd_memory, cma:ffffff800a7e79a0 [ 2.898290] fb: malloc_osd_memory, 1231, base:0x000000007f800000, size:8388608 [ 2.898310] fb: use ion buffer for fb memory, fb_index=0 [ 2.898311] fb: OSD0 as afbcd mode,afbc_type=2 [ 2.921920] meson-fb meson-fb: create ion_client ffffffc0ca3bc9c0, handle=ffffffc0ca382c40 [ 2.921924] meson-fb meson-fb: ion memory(0): created fb at 0x00000000e5800000, size 75 MiB [ 2.921925] fb: 0, phy: 0x00000000e5800000, vir:0xffffff800a893000, size=77312K [ 2.921928] fb: Frame buffer memory assigned at [ 2.921928] fb: 0, phy: 0x00000000e5800000, vir:0xffffff800a893000, size=77312K [ 2.921930] fb: 0, phy: 0x00000000e5800000, vir:0xffffff800a893000, size=77312K [ 2.921931] fb: logo_index=0,fb_index=0 [ 2.921933] fb: ---------------clear fb0 memory ffffff800a893000 [ 2.935324] fb: osd[0] canvas.idx =0x40 [ 2.935325] fb: osd[0] canvas.addr=0xe5800000 [ 2.935326] fb: osd[0] canvas.width=7680 [ 2.935326] fb: osd[0] canvas.height=2160 [ 2.935327] fb: osd[0] frame.width=1920 [ 2.935328] fb: osd[0] frame.height=1080 [ 2.935328] fb: osd[0] out_addr_id =0x1 [ 2.964320] Console: switching to colour frame buffer device 240x67 [ 3.089595] fb: osd[0] enable: 1 (swapper/0) [ 3.106612] fb: set osd0 reverse as NONE [ 3.122958] fb: osd probe OK [ 3.123085] hdmitx: hdcp: hdmitx_hdcp_init [ 3.124805] vout: vout2: create vout2 attribute OK [ 3.129630] vout: vout2: vout2_fops_create OK [ 3.134179] vout: vout2: clktree_init [ 3.137877] vout: vout2: register server: nulldisp_vout2_server [ 3.144003] vout: vout2: init mode null set ok [ 3.148536] vout: vout2: aml_vout2_probe OK [ 3.152922] DI: di_module_init ok. [ 3.156492] DI: di_probe: [ 3.159198] DI: di_probe: major 510 [ 3.162928] deinterlace deinterlace: assigned reserved memory node linux,di_cma [ 3.170296] di:flag_cma=1 [ 3.173063] DI: CMA size 0x2800000. [ 3.176709] pre_irq:67 [ 3.179219] post_irq:68 [ 3.181815] DI: di_probe allocate rdma channel 0. [ 3.186670] di_get_vpu_clkb: get clk vpu error. [ 3.191349] DI: vpu clkb <334000000, 667000000> [ 3.196045] get clkb rate:333333328 [ 3.199672] DI:enable vpu clkb. [ 3.202966] 0x000000e1:Y=e1,U=0,V=0 [ 3.206602] 0x000000e2:Y=e2,U=0,V=0 [ 3.210241] 0x000000e3:Y=e3,U=0,V=0 [ 3.213883] 0x000000f0:Y=f0,U=0,V=0 [ 3.217521] 0x000000f1:Y=f1,U=0,V=0 [ 3.221161] 0x000000f2:Y=f2,U=0,V=0 [ 3.224798] 0x000000f3:Y=f3,U=0,V=0 [ 3.228441] 0x000000f4:Y=f4,U=0,V=0 [ 3.232081] 0x000000f5:Y=f5,U=0,V=0 [ 3.235721] 0x000000f6:Y=f6,U=0,V=0 [ 3.239362] 0x000000f7:Y=f7,U=0,V=0 [ 3.243001] 0x000000f8:Y=f8,U=0,V=0 [ 3.246641] 0x000000f9:Y=f9,U=0,V=0 [ 3.250281] 0x000000fa:Y=fa,U=0,V=0 [ 3.253921] 0x000000fb:Y=fb,U=0,V=0 [ 3.257563] 0x000000fc:Y=fc,U=0,V=0 [ 3.261202] 0x000000fd:Y=fd,U=0,V=0 [ 3.264838] 0x000000fe:Y=fe,U=0,V=0 [ 3.268481] 0x000000ff:Y=ff,U=0,V=0 [ 3.272121] 0x0000003a:Y=3a,U=0,V=0 [ 3.275760] 0x0000003b:Y=3b,U=0,V=0 [ 3.279402] 0x0000003c:Y=3c,U=0,V=0 [ 3.283041] 0x0000003d:Y=3d,U=0,V=0 [ 3.286681] 0x0000003e:Y=3e,U=0,V=0 [ 3.290321] 0x0000003f:Y=3f,U=0,V=0 [ 3.293962] DI: support multi decoding 61~62~63. [ 3.298809] DI: di_probe:Di use HRTIMER [ 3.302772] DI: di_probe:ok [ 3.305686] dim:dim_module_init [ 3.309062] dim:dim_module_init finish [ 3.312851] dil:dil_init. [ 3.315684] dil:dil_init ok. [ 3.318678] vdin_drv_init: major 509 [ 3.322456] vdin_drv_init: vdin driver init done [ 3.327156] [viuin..]viuin_init_module viuin module init [ 3.332722] [viuin..]viuin_probe probe ok. [ 3.337054] [RX]-hdmirx: hdmirx_init. [ 3.340676] ESM HLD: Initializing... [ 3.344662] amlvid:info: amlvideo_init called [ 3.348748] amlvid:info: amlvideo_create_instance called [ 3.354202] amlvid:info: v4l2_dev.name=:amlvideo-000 [ 3.359372] amlvideo-000: V4L2 device registered as video10 [ 3.365031] amlvid:info: amlvideo_create_instance called [ 3.370493] amlvid:info: v4l2_dev.name=:amlvideo-001 [ 3.375646] amlvideo-001: V4L2 device registered as video23 [ 3.381381] PPMGRDRV: warn: ppmgr module init func called [ 3.386919] PPMGRDRV: info: ppmgr_driver_probe called [ 3.392106] Reserved memory: failed to init DMA memory pool at 0x00000000e3000000, size 0 MiB [ 3.400742] PPMGRDRV: info: ppmgr_dev major:507 [ 3.405670] ionvideo-000: V4L2 device registered as video13 [ 3.411190] ionvideo-001: V4L2 device registered as video14 [ 3.416902] ionvideo-002: V4L2 device registered as video15 [ 3.422627] ionvideo-003: V4L2 device registered as video16 [ 3.428349] ionvideo-004: V4L2 device registered as video17 [ 3.434074] ionvideo-005: V4L2 device registered as video18 [ 3.439784] ionvideo-006: V4L2 device registered as video19 [ 3.445502] ionvideo-007: V4L2 device registered as video20 [ 3.451225] ionvideo-008: V4L2 device registered as video21 [ 3.456897] ionvid: info: Video Technology Magazine Ion Video [ 3.462793] ionvid: info: Capture Board ver 1.0 successfully loaded [ 3.469353] videosync_create_instance dev_s ffffffc03d0bc000,dev_s->dev ffffffc0c83c5e80 [ 3.477438] videosync_create_instance reg videosync.0 [ 3.482673] aml_vecm_init:module init [ 3.482675] videosync_thread started [ 3.490263] VECM probe start [ 3.495061] Can't find detect_colorbar. [ 3.499021] Can't find detect_face. [ 3.502742] Can't find detect_corn. [ 3.506469] Can't find wb_sel. [ 3.509765] hdr:Can't find cfg_en_osd_100. [ 3.514096] Can't find tx_op_color_primary. [ 3.518516] amlogic, vecm [ 3.521118] vlock dt support: 1 [ 3.524404] vlock dt new_fsm: 0 [ 3.527702] vlock dt hwver: 0 [ 3.530824] vlock dt phlock_en: 0 [ 3.534289] Can't find vlock_en. [ 3.537754] Can't find vlock_mode. [ 3.541398] Can't find vlock_pll_m_limit. [ 3.545643] Can't find vlock_line_limit. [ 3.549815] param_config vlock_en:1 md=0x4 [ 3.554050] vlock: maxLine 524,maxPixel 1715 [ 3.558468] vlock_status_init vlock_en:1 [ 3.562549] aml_vecm_probe: ok [ 3.565770] amdolby_vision_init:module init [ 3.570189] amdolby_vision probe start & ver: 20181220 [ 3.573410] hdmitx: hdmitx_set_drm_pkt: tf=1, cf=1, colormetry=0 [ 3.583262] cpu_id=2 tvmode=0 [ 3.588168] dolby_vision_init_receiver(dvel) [ 3.592534] dolby_vision_init_receiver: dvel [ 3.597022] amdolby_vision_probe: ok [ 3.600677] dovi disable in uboot [ 3.604219] reg base = ffffff8008585000 [ 3.608640] meson-mmc: mmc driver version: 3.02, 2017-05-15: New Emmc Host Controller [ 3.616562] meson-mmc: >>>>>>>>hostbase ffffff800858d000, dmode [ 3.622399] meson-mmc: actual_clock :400000, HHI_nand: 0x80 [ 3.627981] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000033c [ 3.672962] meson-mmc: meson_mmc_probe() : success! [ 3.681660] meson-mmc: >>>>>>>>hostbase ffffff8008596000, dmode [ 3.683952] meson-mmc: gpio_cd = 1ca [ 3.724979] meson-mmc: meson_mmc_probe() : success! [ 3.726746] cectx ff80023c.aocec: cec driver date:2019/10/22: finetune ARB rising time [ 3.735490] cectx ff80023c.aocec: compatible:amlogic, aocec-g12a [ 3.741364] cectx ff80023c.aocec: cecb_ver:0x1 [ 3.745858] cectx ff80023c.aocec: line_reg:0x1 [ 3.750490] cectx ff80023c.aocec: line_bit:0x3 [ 3.755143] cectx ff80023c.aocec: ee_to_ao:0x1 [ 3.759727] input: cec_input as /devices/virtual/input/input0 [ 3.765635] cectx ff80023c.aocec: not find 'port_num' [ 3.770739] cectx ff80023c.aocec: using cec:1 [ 3.775242] cectx ff80023c.aocec: no hdmirx regs [ 3.780096] cectx ff80023c.aocec: no hhi regs [ 3.784512] cectx ff80023c.aocec: not find 'output' [ 3.790769] irq cnt:2, a:42, b41 [ 3.793044] cectx ff80023c.aocec: wakeup_reason:0x0 [ 3.797977] cectx ff80023c.aocec: cev val1: 0x0;val2: 0x0 [ 3.803581] cectx ff80023c.aocec: aml_cec_probe success end [ 3.809380] unifykey: storage in base: 0xffffffc005000000 [ 3.814754] unifykey: storage out base: 0xffffffc005040000 [ 3.820384] unifykey: storage block base: 0xffffffc005080000 [ 3.826193] unifykey: probe done! [ 3.829833] unifykey: aml_unifykeys_init done! [ 3.834358] meson ts init [ 3.837065] tsensor id: 0 [ 3.839923] r1p1_tsensor_read valid cnt is 0 [ 3.844337] tsensor trim info: 0xfa008071! [ 3.848555] tsensor hireboot: 0xc0ff2ab0 [ 3.852695] meson ts init [ 3.855430] tsensor id: 1 [ 3.858231] r1p1_tsensor_read valid cnt is 0 [ 3.862708] tsensor trim info: 0xfa008062! [ 3.866943] tsensor hireboot: 0xc0ff2aa0 [ 3.871262] audio_dsp: [dsp]register dsp to char divece(257) [ 3.876957] amaudio: amaudio: driver amaudio init! [ 3.881980] amaudio: amaudio_init - amaudio: driver amaudio succuess! [ 3.888397] meson-aml-mmc ffe07000.emmc: divider requested rate 200000000 != actual rate 199999997: ret=0 [ 3.888578] amlkaraoke init success! [ 3.888640] sysled: module init [ 3.888735] meson_wdt ffd0f0d0.watchdog: start watchdog [ 3.888737] meson_wdt ffd0f0d0.watchdog: creat work queue for watch dog [ 3.888839] meson_wdt ffd0f0d0.watchdog: AML Watchdog Timer probed done [ 3.889052] amlogic rfkill init [ 3.889230] meson-saradc ff809000.saradc: set delay per tick to <1ms> by default. [ 3.889232] meson-saradc ff809000.saradc: set ticks per period to <1> by default. [ 3.889661] dmc_monitor_probe [ 3.890136] atv_demod: aml_atvdemod_init: OK, atv demod version: V2.15. [ 3.890185] defendkey ff630218.defendkey: Reserved memory is not enough! [ 3.890191] defendkey: probe of ff630218.defendkey failed with error -22 [ 3.890896] aml_codec_T9015 ff632000.t9015: aml_T9015_audio_codec_probe [ 3.890906] T9015 acodec used by auge, tdmout:2 [ 3.891459] Error: Driver 'spdif-dit' is already registered, aborting... [ 3.891626] asoc debug: aml_audio_controller_probe-130 [ 3.891800] aml_tdm_platform_probe, tdm ID = 2, lane_cnt = 4 [ 3.891807] TDM id 2 i2s2hdmi:0 [ 3.891812] snd_tdm ff642000.audiobus:tdmc: lane_mask_out = 1, lane_oe_mask_out = 0 [ 3.891880] snd_tdm ff642000.audiobus:tdmc: neither mclk_pad nor mclk2pad set [ 3.891984] snd_tdm ff642000.audiobus:tdmc: aml_tdm_get_pins error! [ 3.891988] aml_tdm_platform_probe(), share en = 1 [ 3.891988] No channel mask node Channel_Mask [ 3.892257] aml_spdif_platform_probe, spdif ID = 0 [ 3.892415] SPDIF id 0 asrc_id:0 auto_asrc:0 [ 3.892470] spdifout_play_with_zerodata, spdif id:0 enable:0 [ 3.892473] spdif_a fifo ctrl, frddr:0 type:3, 32 bits, chmask 0x3, swap 0x10 [ 3.892476] spdif_info: rate: 48000, channel status ch0_l:0x100, ch0_r:0x100, ch1_l:0x200, ch1_r:0x200 [ 3.892481] hdmitx: audio: aout notify format CT_PCM [ 3.892483] spdif_a is set to enable [ 3.892488] aml_spdif_platform_probe, register soc platform [ 3.892502] aml_spdif_platform_probe, spdif ID = 1 [ 3.892539] spdifout_play_with_zerodata, spdif id:1 enable:0 [ 3.892541] spdif_b fifo ctrl, frddr:0 type:3, 32 bits, chmask 0x3, swap 0x10 [ 3.892543] spdif_info: rate: 48000, channel status ch0_l:0x100, ch0_r:0x100, ch1_l:0x200, ch1_r:0x200 [ 3.892546] spdif_b is set to enable [ 3.892550] aml_spdif_platform_probe, register soc platform [ 3.892789] audio-ddr-manager ff642000.audiobus:ddr_manager: 0, irqs toddr 32, frddr 35 [ 3.892798] audio-ddr-manager ff642000.audiobus:ddr_manager: 1, irqs toddr 33, frddr 36 [ 3.892806] audio-ddr-manager ff642000.audiobus:ddr_manager: 2, irqs toddr 34, frddr 37 [ 3.893071] audiolocker_platform_probe [ 3.893676] Register vad [ 3.929010] meson-mmc: card IN [ 4.032889] meson-mmc: normal card in [ 4.084286] meson-mmc: actual_clock :199999997, HHI_nand: 0x80 [ 4.090266] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x10000245 [ 4.097287] meson-mmc: Data 1 aligned delay is 0 [ 4.100962] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC [ 4.100965] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLP_SEL_DACL -> Lineout left P switch [ 4.100967] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC [ 4.100969] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLP_SEL_DACL_INV -> Lineout left P switch [ 4.100971] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC [ 4.100972] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLN_SEL_DACL_INV -> Lineout left N switch [ 4.100974] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Left DAC [ 4.100976] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Left DAC -> LOLN_SEL_DACL -> Lineout left N switch [ 4.100977] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC [ 4.100979] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORP_SEL_DACR -> Lineout right P switch [ 4.100981] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC [ 4.100982] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORP_SEL_DACR_INV -> Lineout right P switch [ 4.100984] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC [ 4.100985] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORN_SEL_DACR_INV -> Lineout right N switch [ 4.100987] aml_codec_T9015 ff632000.t9015: ASoC: no source widget found for Right DAC [ 4.100988] aml_codec_T9015 ff632000.t9015: ASoC: Failed to add route Right DAC -> LORN_SEL_DACR -> Lineout right N switch [ 4.101013] aml_dai_spdif_probe [ 4.101017] aml_dai_spdif_probe [ 4.101023] set normal 512 fs /4 fs [ 4.101046] set spdifout clk:6144000, mpll:24576000 [ 4.101047] get spdifout clk:6143997, mpll:24575987 [ 4.101052] aml_dai_set_spdif_fmt , fmt 0x4010 [ 4.101091] aml_spdif_new spdif_b, clk continuous:1 [ 4.101092] spdifout_play_with_zerodata_free, spdif id:1 [ 4.102176] asoc-aml-card auge_sound: dit-hifi <-> SPDIF-B mapping ok [ 4.102186] set mclk:12288000, mpll:24576000, get mclk:12287994, mpll:24575987 [ 4.102188] aml_dai_set_tdm_slot(), txmask(0x3), rxmask(0x3) [ 4.102189] lanes_out_cnt(1), lanes_in_cnt(1) [ 4.102189] lanes_lb_cnt(0) [ 4.102190] slots(2), slot_width(32) [ 4.102191] lanes_oe_out_cnt(0), lanes_oe_in_cnt(0) [ 4.102197] asoc aml_dai_set_tdm_fmt, 0x4011, ffffffc03d141c18, id(2), clksel(2) [ 4.102200] master_mode(1), binv(1), finv(1) out_skew(2), in_skew(3) [ 4.102445] asoc-aml-card auge_sound: T9015-audio-hifi <-> TDM-C mapping ok [ 4.102446] set normal 512 fs /4 fs [ 4.102457] set spdifout clk:6144000, mpll:24576000 [ 4.102458] get spdifout clk:6143997, mpll:24575987 [ 4.102459] aml_dai_set_spdif_fmt , fmt 0x4010 [ 4.102488] aml_spdif_new spdif_a, clk continuous:1 [ 4.102489] spdifout_play_with_zerodata_free, spdif id:0 [ 4.102617] asoc-aml-card auge_sound: dit-hifi <-> SPDIF mapping ok [ 4.102653] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout left P switch has no paths [ 4.102657] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout left N switch has no paths [ 4.102660] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout right P switch has no paths [ 4.102663] aml_codec_T9015 ff632000.t9015: ASoC: mux Lineout right N switch has no paths [ 4.103092] snd_card_add_kcontrols card:ffffffc03d171018 [ 4.103097] effect_v2 is not init [ 4.103098] Not init vad [ 4.103099] Failed to add VAD controls [ 4.103106] eq/drc v1 function enable [ 4.133071] Netfilter messages via NETLINK v0.30. [ 4.133136] Initializing XFRM netlink socket [ 4.133143] NET: Registered protocol family 17 [ 4.133159] Key type dns_resolver registered [ 4.133623] Registered swp emulation handler [ 4.140355] Registered cp15_barrier emulation handler [ 4.140362] Registered setend emulation handler [ 4.140605] registered taskstats version 1 [ 4.140737] AppArmor: AppArmor sha1 policy hashing enabled [ 4.143712] dwc3 ff500000.dwc3: Configuration mismatch. dr_mode forced to host [ 4.146323] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller [ 4.146331] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1 [ 4.146506] usb: xhci: determined sg_tablesize: 4294967295 [ 4.146507] xhci-hcd xhci-hcd.0.auto: hcc params 0x0228fe6c hci version 0x110 quirks 0x20010010 [ 4.146527] xhci-hcd xhci-hcd.0.auto: irq 23, io mem 0xff500000 [ 4.146591] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002 [ 4.146594] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 4.146595] usb usb1: Product: xHCI Host Controller [ 4.146597] usb usb1: Manufacturer: Linux 4.9.241-arm64 xhci-hcd [ 4.146598] usb usb1: SerialNumber: xhci-hcd.0.auto [ 4.146827] hub 1-0:1.0: USB hub found [ 4.146839] hub 1-0:1.0: 2 ports detected [ 4.146976] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller [ 4.146981] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2 [ 4.147006] usb: xhci: determined sg_tablesize: 4294967295 [ 4.147006] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM. [ 4.147039] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003 [ 4.147041] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 4.147043] usb usb2: Product: xHCI Host Controller [ 4.147045] usb usb2: Manufacturer: Linux 4.9.241-arm64 xhci-hcd [ 4.147046] usb usb2: SerialNumber: xhci-hcd.0.auto [ 4.147230] hub 2-0:1.0: USB hub found [ 4.147241] hub 2-0:1.0: 1 port detected [ 4.147470] hctosys: unable to open rtc device (rtc0) [ 4.147647] dwc_otg ff400000.dwc2_a: dwc_otg_driver_probe(ffffffc0ca190000) [ 4.147662] dwc_otg: usb0: type: 2 speed: 0, config: 0, dma: 0, id: 0, phy: ffe09000, ctrl: 0 [ 4.147669] dwc_otg ff400000.dwc2_a: base=0xffffff8008c00000 [ 4.147672] dwc_otg ff400000.dwc2_a: dwc_otg_device=0xffffffc0c9e7d800 [ 4.159689] DI: DI: tasklet schedule cost 12ms. [ 4.161061] meson-mmc: actual_clock :400000, HHI_nand: 0x80 [ 4.161063] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000023c [ 4.178668] DI: DI: tasklet schedule cost 12ms. [ 4.197910] DI: DI: tasklet schedule cost 12ms. [ 4.217493] DI: DI: tasklet schedule cost 12ms. [ 4.224996] meson-mmc: actual_clock :400000, HHI_nand: 0x80 [ 4.224998] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x1000023c [ 4.237538] meson-aml-mmc ffe05000.sd: divider requested rate 200000000 != actual rate 199999997: ret=0 [ 4.237540] meson-mmc: actual_clock :199999997, HHI_nand: 0x80 [ 4.237541] meson-mmc: [meson_mmc_clk_set_rate_v3] after clock: 0x10000245 [ 4.237544] meson-mmc: Data 1 aligned delay is 0 [ 4.237547] meson-mmc: sd: clk 199999997 tuning start [ 4.245522] meson-mmc: sd: adj_win: < 0 1 2 3 4 > [ 4.245524] meson-mmc: _aml_sd_emmc_execute_tuning() d1_dly 0, window start 0, size 5 [ 4.245526] meson-mmc: sd: clk 199999997 tuning start [ 4.247801] dwc_otg: Core Release: 3.30a [ 4.247804] dwc_otg: Setting default values for core params [ 4.247811] dwc_otg: curmode: 0, host_only: 0 [ 4.247823] dwc_otg ff400000.dwc2_a: DMA config: BURST_DEFAULT [ 4.251964] meson-mmc: sd: adj_win: < 0 2 3 4 > [ 4.251966] meson-mmc: sd: best_win_start =2, best_win_size =4 [ 4.251969] meson-mmc: sd: sd_emmc_regs->gclock=0x10000245,sd_emmc_regs->gadjust=0x42000 [ 4.251970] meson-mmc: delay1:0x0, delay2:0x0 [ 4.251980] sd: new ultra high speed SDR104 SDXC card at address 0001 [ 4.256358] sd: clock 199999997, 4-bit-bus-width [ 4.256358] mmcblk1: sd:0001 GE8QT 239 GiB [ 4.259660] mmcblk1: p1 [ 4.259953] dwc_otg: Using Buffer DMA mode [ 4.259956] dwc_otg: OTG VER PARAM: 1, OTG VER FLAG: 1 [ 4.259957] dwc_otg: Working on port type = SLAVE [ 4.259960] dwc_otg: Dedicated Tx FIFOs mode [ 4.261071] meson_cdev probe [ 4.261117] meson_cdev index: 0 [ 4.261196] meson_cdev index: 1 [ 4.261242] thermal: no cluster id, cpucore as one cooldev [ 4.261254] meson_cdev index: 2 [ 4.261256] cpucore_cooling_register, max_cpu_core_num:6 [ 4.261258] cpucore_cooling_register, clutser[1] core num:4 [ 4.261259] cpucore_cooling_register, clutser[0] core num:2 [ 4.261309] meson_cdev index: 3 [ 4.261320] meson_cdev index: 4 [ 4.261343] find tzd id: 0 [ 4.261444] find tzd id: 0 [ 4.261522] find tzd id: 0 [ 4.261566] meson_cdev probe done [ 4.261625] gxbb_pm: enter meson_pm_probe! [ 4.261633] no vddio3v3_en pin [ 4.261633] pm-meson pm: Can't get switch_clk81 [ 4.261647] gxbb_pm: meson_pm_probe done [ 4.261803] ALSA device list: [ 4.261804] #0: AML-AUGESOUND [ 4.408968] amlogic-new-usb2-v2 ffe09000.usb2phy: ---Set port(0) tuning for host cf(xhci_hub_control)-- [ 4.417003] DI: DI: tasklet schedule cost 12ms. [ 4.468950] usb 1-1: new high-speed USB device number 2 using xhci-hcd [ 4.611285] usb 1-1: New USB device found, idVendor=05e3, idProduct=0610 [ 4.611287] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 4.611289] usb 1-1: Product: USB2.1 Hub [ 4.611290] usb 1-1: Manufacturer: GenesysLogic [ 4.627211] hub 1-1:1.0: USB hub found [ 4.627468] hub 1-1:1.0: 4 ports detected [ 4.729077] usb 2-1: new SuperSpeed USB device number 2 using xhci-hcd [ 4.751552] usb 2-1: New USB device found, idVendor=05e3, idProduct=0620 [ 4.751555] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 4.751557] usb 2-1: Product: USB3.1 Hub [ 4.751559] usb 2-1: Manufacturer: GenesysLogic [ 4.755274] hub 2-1:1.0: USB hub found [ 4.755566] hub 2-1:1.0: 4 ports detected [ 4.855362] meson-mmc: emmc: clk 199999997 tuning start [ 4.858953] meson-mmc: emmc: adj_win: < 0 2 3 4 > [ 4.858956] meson-mmc: step:4, delay1:0x4104104, delay2:0x4004104 [ 4.861288] meson-mmc: emmc: adj_win: < 0 3 4 > [ 4.861291] meson-mmc: left:3, right:0, mid:4, size:4 [ 4.861293] meson-mmc: step:0, delay1:0x0, delay2:0x0 [ 4.861295] meson-mmc: emmc: sd_emmc_regs->gclock=0x10000245,sd_emmc_regs->gadjust=0x42000 [ 4.861296] meson-mmc: delay1:0x0, delay2:0x0 [ 4.861372] emmc: new HS200 MMC card at address 0001 [ 4.865612] emmc: clock 199999997, 8-bit-bus-width [ 4.865612] mmcblk0: emmc:0001 BJTD4R 29.1 GiB [ 4.865716] mmcblk0boot0: emmc:0001 BJTD4R partition 1 4.00 MiB [ 4.865827] mmcblk0boot1: emmc:0001 BJTD4R partition 2 4.00 MiB [ 4.865934] mmcblk0rpmb: emmc:0001 BJTD4R partition 3 4.00 MiB [ 4.866403] mmcblk0: p1 p2 [ 4.937399] meson_uart ff803000.serial: ttyS0 use xtal(24M) 24000000 change 115200 to 115200 [ 4.941568] Freeing unused kernel memory: 4800K [ 5.873047] usb 2-1.2: new SuperSpeed USB device number 3 using xhci-hcd [ 5.893883] usb 2-1.2: New USB device found, idVendor=090c, idProduct=1000 [ 5.895277] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 5.902768] usb 2-1.2: Product: Flash Drive FIT [ 5.907419] usb 2-1.2: Manufacturer: Samsung [ 5.911864] usb 2-1.2: SerialNumber: 0312720070003652 [ 5.918052] usb-storage 2-1.2:1.0: USB Mass Storage device detected [ 5.923778] usb-storage 2-1.2:1.0: Quirks match for vid 090c pid 1000: 400 [ 5.930598] scsi host0: usb-storage 2-1.2:1.0 [ 6.031137] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) [ 6.196544] systemd[1]: System time before build time, advancing clock. [ 6.241776] NET: Registered protocol family 10 [ 6.247782] ip_tables: (C) 2000-2006 Netfilter Core Team [ 6.250222] cgroup: cgroup2: unknown option "nsdelegate" [ 6.265002] systemd[1]: systemd 241 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid) [ 6.281457] systemd[1]: Detected architecture arm64. [ 6.301418] systemd[1]: Set hostname to . [ 6.378038] systemd[1]: File /lib/systemd/system/systemd-journald.service:12 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling. [ 6.389688] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.) [ 6.458393] systemd[1]: /lib/systemd/system/haveged.service:19: Unknown lvalue 'ProtectHostname' in section 'Service', ignoring [ 6.464429] systemd[1]: /lib/systemd/system/haveged.service:20: Unknown lvalue 'ProtectKernelLogs' in section 'Service', ignoring [ 6.478312] systemd[1]: Listening on fsck to fsckd communication Socket. [ 6.501080] systemd[1]: Started Dispatch Password Requests to Console Directory Watch. [ 6.521511] systemd[1]: Set up automount mnt-USBFlash.automount. [ 6.872378] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null) [ 7.494607] rtc-pcf8563 1-0051: rtc core: registered rtc-pcf8563 as rtc0 [ 7.495072] mali ffe40000.bifrost: Continuing without Mali regulator control [ 7.495130] mali ffe40000.bifrost: max pp is 2 [ 7.495132] mali ffe40000.bifrost: set min pp to default 1 [ 7.495134] mali ffe40000.bifrost: min pp is 1 [ 7.495135] mali ffe40000.bifrost: min clk is 4 [ 7.495146] mali ffe40000.bifrost: hiu io source 0xffffff8008e5c000 [ 7.495150] mali ffe40000.bifrost: hiu io source 0xffffff8008e5e000 [ 7.495151] mali ffe40000.bifrost: num of pp used most of time 1 [ 7.495153] mali ffe40000.bifrost: clock dvfs cfg table size is 6 [ 7.495166] mali ffe40000.bifrost: max clk set 4 [ 7.495168] mali ffe40000.bifrost: max clk is 4 [ 7.495169] mali ffe40000.bifrost: turbo clk set to 5 [ 7.495171] mali ffe40000.bifrost: turbo clk is 5 [ 7.495172] mali ffe40000.bifrost: default clk set to 4 [ 7.495173] mali ffe40000.bifrost: default clk is 4 [ 7.495177] mali ffe40000.bifrost: ====================0==================== clk_freq= 285714285, clk_parent=fclk_div7, voltage=1150, keep_count=5, threshod=<100 190>, clk_sample=285 [ 7.495179] mali ffe40000.bifrost: ====================1==================== clk_freq= 400000000, clk_parent=fclk_div5, voltage=1150, keep_count=5, threshod=<152 207>, clk_sample=400 [ 7.495182] mali ffe40000.bifrost: ====================2==================== clk_freq= 500000000, clk_parent=fclk_div4, voltage=1150, keep_count=5, threshod=<180 220>, clk_sample=500 [ 7.495184] mali ffe40000.bifrost: ====================3==================== clk_freq= 666666666, clk_parent=fclk_div3, voltage=1150, keep_count=5, threshod=<210 236>, clk_sample=666 [ 7.495186] mali ffe40000.bifrost: ====================4==================== clk_freq= 800000000, clk_parent=fclk_div2p5, voltage=1150, keep_count=5, threshod=<230 255>, clk_sample=800 [ 7.495188] mali ffe40000.bifrost: ====================5==================== clk_freq= 800000000, clk_parent=fclk_div2p5, voltage=1150, keep_count=5, threshod=<230 255>, clk_sample=800 [ 7.495190] mali ffe40000.bifrost: clock dvfs table size is 6 [ 7.495249] mali_plat=ffffff8001ce8620 [ 7.495417] find tzd id: 0 [ 7.495478] gpu cooling register okay with err=0 [ 7.495582] find tzd id: 0 [ 7.495618] gpu core cooling register okay with err=0 [ 7.495640] shader_present=3, tiler_present=1, l2_present=1 [ 7.495724] Mali_pwr_on:gpu_irq : 200 [ 7.496289] mali ffe40000.bifrost: GPU identified as 0x2 arch 7.2.1 r0p0 status 0 [ 7.496494] mali ffe40000.bifrost: Using coherency mode 0 set from dtb [ 7.507844] mali ffe40000.bifrost: Probed as mali0 [ 7.508098] systemd-journald[2030]: Received request to flush runtime journal from PID 1 [ 7.532161] ionvid: dbg: ionvideo open [ 7.532265] ionvid: dbg: vidioc_close!!!! [ 7.532270] ionvid: dbg: vidioc_close [ 7.532368] ionvid: dbg: ionvideo open [ 7.532471] ionvid: dbg: vidioc_close!!!! [ 7.532475] ionvid: dbg: vidioc_close [ 7.533497] ionvid: dbg: ionvideo open [ 7.533661] ionvid: dbg: vidioc_close!!!! [ 7.533671] ionvid: dbg: vidioc_close [ 7.535676] ionvid: dbg: ionvideo open [ 7.540589] ionvid: dbg: vidioc_close!!!! [ 7.540600] ionvid: dbg: vidioc_close [ 7.541729] ionvid: dbg: ionvideo open [ 7.541827] ionvid: dbg: vidioc_close!!!! [ 7.541831] ionvid: dbg: vidioc_close [ 7.545509] ionvid: dbg: ionvideo open [ 7.545670] ionvid: dbg: ionvideo open [ 7.545757] ionvid: dbg: vidioc_close!!!! [ 7.545762] ionvid: dbg: vidioc_close [ 7.546040] ionvid: dbg: ionvideo open [ 7.546198] ionvid: dbg: vidioc_close!!!! [ 7.546208] ionvid: dbg: vidioc_close [ 7.546314] ionvid: dbg: ionvideo open [ 7.546399] ionvid: dbg: vidioc_close!!!! [ 7.546403] ionvid: dbg: vidioc_close [ 7.558024] ionvid: dbg: vidioc_close!!!! [ 7.558032] ionvid: dbg: vidioc_close [ 7.889910] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck. [ 8.447942] scsi 0:0:0:0: Direct-Access Samsung Flash Drive FIT 1100 PQ: 0 ANSI: 6 [ 8.458014] sd 0:0:0:0: Attached scsi generic sg0 type 0 [ 8.458241] sd 0:0:0:0: [sda] 501253132 512-byte logical blocks: (257 GB/239 GiB) [ 8.466535] sd 0:0:0:0: [sda] Write Protect is off [ 8.470543] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00 [ 8.470777] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 8.491619] sda: sda1 [ 8.492904] sd 0:0:0:0: [sda] Attached SCSI removable disk [ 8.601200] meson6-dwmac ff3f0000.ethernet eth0: fail to init PTP. [ 8.602170] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready [ 11.244968] vout: aml_tvout_mode_work: monitor_timeout [ 12.685188] meson6-dwmac ff3f0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx [ 12.688251] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready root@OdroidN2:~# ```
Joulinar commented 3 years ago

question, in your first post you stated on the questionnaire you are running Debian Buster, however on your kernel log it looks like Debian Stretch

[ 0.000000] Linux version 4.9.241-arm64 (root@odroid-stretch64) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP PREEMPT Thu Feb 25 18:56:07 CET 2021

BillyCorgan1 commented 3 years ago

question, in your first post you stated on the questionnaire you are running Debian Buster, however on your kernel log it looks like Debian Stretch

[ 0.000000] Linux version 4.9.241-arm64 (root@odroid-stretch64) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP PREEMPT Thu Feb 25 18:56:07 CET 2021

That is strange! I thought I was using buster as that is what is written on the description of the ISO image from the DietPi website DietPi_OdroidN2-ARMv8-Buster.img. I don't know why it would be stating that.

Joulinar commented 3 years ago

@MichaIng do you know if this is a correct information or just misleading?

@BillyCorgan1 just to be sure, what is the output of echo $G_DISTRO_NAME and cat /etc/debian_version

BillyCorgan1 commented 3 years ago

@Joulinar

Here are the two outputs you requested:

root@OdroidN2:~# echo $G_DISTRO_NAME buster root@OdroidN2:~# cat /etc/debian_version 10.10 root@OdroidN2:~#

I hope this helps, Thanks.

MichaIng commented 3 years ago

The uname -a line does not show the Debian/OS versions of the system it is installed on, but it was built on. So we know that kernel was build on a Debian Stretch system, with hostname odroid-stretch64 as root user and Debian glibc compiler version 6.3.0-18+deb9u1 πŸ˜‰. Also in case of Odroids, the same kernel packages are used on all distro versions, so unlike on RPi or x86_64 systems also the Linux version does not say something about the Debian version of the system.

The kernel command line was set as wanted, sadly we cannot see which device tree was used, but all drivers load nicely, aside of the audio codec, which throws some errors, which may be expected when no speakers are attached.

But I have an idea now: With v7.2 we changed the default CPU scheduling governor from ondemand to schedutil, which is generally more efficient, but probably the N2 has issues with it:

G_CONFIG_INJECT 'CONFIG_CPU_GOVERNOR=' 'CONFIG_CPU_GOVERNOR=ondemand' /boot/dietpi.txt

respectively doing that before first boot.

BillyCorgan1 commented 3 years ago

The uname -a line does not show the Debian/OS versions of the system it is installed on, but it was built on. So we know that kernel was build on a Debian Stretch system, with hostname odroid-stretch64 as root user and Debian glibc compiler version 6.3.0-18+deb9u1 πŸ˜‰. Also in case of Odroids, the same kernel packages are used on all distro versions, so unlike on RPi or x86_64 systems also the Linux version does not say something about the Debian version of the system.

The kernel command line was set as wanted, sadly we cannot see which device tree was used, but all drivers load nicely, aside of the audio codec, which throws some errors, which may be expected when no speakers are attached.

But I have an idea now: With v7.2 we changed the default CPU scheduling governor from ondemand to schedutil, which is generally more efficient, but probably the N2 has issues with it:

G_CONFIG_INJECT 'CONFIG_CPU_GOVERNOR=' 'CONFIG_CPU_GOVERNOR=ondemand' /boot/dietpi.txt

respectively doing that before first boot.

I have just pulled the dietpi.txt file from the ISO I have been using and the CONFIG_CPU_GOVERNOR is already set to on demand.

MichaIng commented 3 years ago

Ah indeed, the image was created after v7.2 release, hence after the default was changed. You could try to change it to powersave, performance or conservative to have a static or slowly adapting governor, just to rule that out. I'll also create a new image tomorrow, after v7.3 release and review everything again.

BillyCorgan1 commented 3 years ago

Ah indeed, the image was created after v7.2 release, hence after the default was changed. You could try to change it to powersave, performance or conservative to have a static or slowly adapting governor, just to rule that out. I'll also create a new image tomorrow, after v7.3 release and review everything again.

Well, I changed the CPU governor to "performance" and it now boots as it should and it didn't reboot in the dietpi-config launcher. I did not make any other changes to boot.ini or dietpi.txt and it was a clean reinstall. I will try the other governor settings to see if they work and boot.

BillyCorgan1 commented 3 years ago

OK, powersave failed, conservative worked.

MichaIng commented 3 years ago

Hmm, I do not really trust this as a definite result yet, as actually powersave should be the most stable governor, statically using the lower-end frequency. But the conservative governor is quite some alternative, if ondemand and schedutil cause issues, as it also clocks up to max frequencies, only in smaller steps. ondemand jumps the frequency right to max, as fast as the configured threshold is reached (50% by default) and schedutil usually includes a lot more and quicker frequency adjustments, which makes it very effective, but possibly some older CPUs have issues with that, or older Linux versions do have it implemented as good.

We didn't enable boot-persistent system logs to try catching what happened right before the crash, did we? That would be another way to possibly debug the case. But that probably makes more sense based on a fresh reviewed image, which I'll create tomorrow.

MichaIng commented 3 years ago

New image ready: https://dietpi.com/downloads/images/DietPi_OdroidN2-ARMv8-Buster.7z

BillyCorgan1 commented 3 years ago

New image ready: https://dietpi.com/downloads/images/DietPi_OdroidN2-ARMv8-Buster.7z

Sadly the new image has not fixed the issue. I am still having problems with it crashing and rebooting. Thanks for your hard work though. Can you supply me with a command so that I can enable logging to see if I can give you some more information on the crashes? Thanks for your time.

MichaIng commented 3 years ago

Do the following, I hope they go through:

dietpi-software uninstall 103
mkdir /var/log/journal
reboot

Now /var/log is no tmpfs anymore and the journalctl system logs are done to /var/log/journal automatically, when the directory is present.

BillyCorgan1 commented 3 years ago

OK, the bad news first. I am unable to get to a point where I am able to put the commands into a prompt. The slightly good news is that I connected my Odroid via HDMI and keyboard to my monitor. It has (so far) in my testing started up and installs as expected. I will continue testing and reinstalling for the the next few days to see if anything changes. If the problem is something to do with SSH then I don't know what causes it to restart itself. I am using MobaXterm to SSH into the Odroid N2. I will update you with the results of my testing. Thanks for your time and help.

BillyCorgan1 commented 3 years ago

After doing some more testing it seems that, sadly, SSH is not the issue. I am still having problems with the Odroid N2 rebooting itself while connected to the monitor with an HDMI cable and keyboard. I will try and see if I can get some logs off of the Odroid.

MichaIng commented 3 years ago

Did you get some system logs from the minutes before the unexpected reboot?

MichaIng commented 3 years ago

Marking as closed. Feel free to reopen if issue persists. We'll also upload a new Debian Bullseye based image the next days.