Power & Source of Big Ideas

M2 - HDMI 1920x1080P issues (Android and Debian)

Moderators: chensy, FATechsupport

Android and Debian have issues if you set HDMI to 1920x1080P on M2.

* There is possible not enough fb set to work with 1920x1080P (it is a guess!!!)
* In 1920x1080 M2 tries to get EDID parms from Monitor and it get the wrong timings, while in 1280x720P it does not call nxp_edid_init() or use only preset values (another guess!!!)
Ok, no more guesses!

Here is what i found so far and the actions i took to solve it (without success):

* U-boot set the env and kernel command line always with lcd=HDMI720P (if no lcd attached), no matter if you try to changed it setting another parameter. U-boot always re-write the env variables.
* Kernel reads the lcd= parameter from kernel command line and sets the framebuffer according to this value, that is 1280x720 even if you set new lcd parameters, so frame buffer size is set to 1280x720 even if your kernel is build with 1920x0180P.

I suspected the framebuffer was set smaller than needed, so this is what i did:
* Changed U-boot to boot in 1920x1080P mode and set lcd=HDMI1080P, so framebuffer is set with the right size, the board boot in 1920x1080P mode and save the env_parameter with lcd=HDM1080P for kernel, Debian boots somewhat fine (not really as you can see the video below) until you login, at this point board is consuming ~3.5 Watts. After login the HDMI issue pops up.

Forget about saving a new env like this:
sudo ./fw_setenv /dev/sdc bootargs console=ttyAMA0,115200n8 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait init=/sbin/init systemd.show_status=false g_ether.host_addr=82:cf:ce:fa:44:18 lcd=HDMI1080P60, U-boot overwrites with lcd=HDM720P
You can check this after you re-boot.

* i did not attach the log because no message or errors were displayed while this was happening (hdmi on/off and the pixels flashing), but i made sure FB size was 1920x1080. I made the Debian tests using this card and later flashed Android to get the Logs, did not save the logs.

Android and Debian have the exact same issue, but you can see it is worst in Android.

I can't get anything from the PSU-ONECOM debug port on Android to see if there is any warnings in the Log and i can't build Android on my HOST PC. If there is a problem with the cable i can try another one that uses TX/RX with 3.3v if the pins are 3.3v on the board.

Here is the video for Debian 1080P issue: https://drive.google.com/open?id=0B7A7O ... 3Y3aUMtbjQ

If i can power the board using only the PSU-ONECOM i can check if it is related to microUSB powering issue.
And about the TX/RX pins on the board, are they 3.3v?
@lex wrote:
Android and Debian have issues if you set HDMI to 1920x1080P on M2.

* There is possible not enough fb set to work with 1920x1080P (it is a guess!!!)
* In 1920x1080 M2 tries to get EDID parms from Monitor and it get the wrong timings, while in 1280x720P it does not call nxp_edid_init() or use only preset values (another guess!!!)



Hello,

When the system boots our uboot will check whether it is connected to an LCD or to an HDMI monitor. If it recognizes an LCD it will configure its resolution. Our uboot defaults to the HDMI 720P configuration.
If you want to modify the LCD resolution you can modify file "arch/arm/plat-s5p4418/nanopi2/lcds.c" in the kernel and recompile it.
If your NanoPi M2 is connected an HDMI monitor and it runs Android it will automatically set the resolution to an appropriate HDMI mode by checking the "EDID". If your NanoPi M2 is connected an HDMI monitor and it runs Debian by default it will set the resolution to HDMI 720P. If you want to modify the resolution to 1080P modify your kernel's configuration as explained above.

If you want to generate a kernel for HDMI 1080P you can do it this way:

touch .scmversion
make nanopi2_linux_defconfig
make menuconfig
Device Drivers -->
Graphics support -->
Nexell Graphics -->
[ ] LCD
[*] HDMI
(0) Display In [0=Display 0, 1=Display 1]
Resolution (1920 * 1080p) --->
make uImageAfter your compilation succeeds a uImage will be generated for HDMI 1080P. You can use it to replace the existing uImage.
jjm wrote:
@lex wrote:
Android and Debian have issues if you set HDMI to 1920x1080P on M2.

* There is possible not enough fb set to work with 1920x1080P (it is a guess!!!)
* In 1920x1080 M2 tries to get EDID parms from Monitor and it get the wrong timings, while in 1280x720P it does not call nxp_edid_init() or use only preset values (another guess!!!)



Hello,

When the system boots our uboot will check whether it is connected to an LCD or to an HDMI monitor. If it recognizes an LCD it will configure its resolution. Our uboot defaults to the HDMI 720P configuration.
If you want to modify the LCD resolution you can modify file "arch/arm/plat-s5p4418/nanopi2/lcds.c" in the kernel and recompile it.
If your NanoPi M2 is connected an HDMI monitor and it runs Android it will automatically set the resolution to an appropriate HDMI mode by checking the "EDID". If your NanoPi M2 is connected an HDMI monitor and it runs Debian by default it will set the resolution to HDMI 720P. If you want to modify the resolution to 1080P modify your kernel's configuration as explained above.

If you want to generate a kernel for HDMI 1080P you can do it this way:

touch .scmversion
make nanopi2_linux_defconfig
make menuconfig
Device Drivers -->
Graphics support -->
Nexell Graphics -->
[ ] LCD
[*] HDMI
(0) Display In [0=Display 0, 1=Display 1]
Resolution (1920 * 1080p) --->
make uImageAfter your compilation succeeds a uImage will be generated for HDMI 1080P. You can use it to replace the existing uImage.



Hi, can you tell me why we replace exitsting uImage, as i know it will boot with uImage.hdmi if we use HDMI.?
oh, it means that after your compilation succeeds a uImage will be generated in the "arch/arm/boot/uImage" directory. This kernel is for HDMI 720P. You can use it to replace the existing uImage.hdmi.

Who is online

In total there are 4 users online :: 0 registered, 0 hidden and 4 guests (based on users active over the past 5 minutes)
Most users ever online was 5185 on Wed Jan 22, 2020 1:44 pm

Users browsing this forum: No registered users and 4 guests