Let me review, if I overlooked any other changes. Before xorg conf solution, I played with overlay file, /etc/rc.local and khadas_init.sh.
I am using the Ubuntu focal from fenix build.
~$ cat /etc/fenix-release
BOARD=VIM3
VENDOR=Amlogic
VERSION=1.0.4
ARCH=arm64
INITRD_ARCH=arm64
INSTALL_TYPE=EMMC
IMAGE_VERSION=V1.0.4-210330
################ GIT VERSION ################
UBOOT_GIT_VERSION=khadas-vims-v1.0.4-release
LINUX_GIT_VERSION=khadas-vims-v1.0.4-release
FENIX_GIT_VERSION=v1.0.4
#############################################
~$ DISPLAY=:0 xrandr
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 1088 x 1088, current 1920 x 1088, maximum 1920 x 1920
default connected 1920x1088+0+0 0mm x 0mm
1088x1920 0.00
1920x1088 0.00*
A snippet from my Xorg.0.log
[ 13.171] (II) LoadModule: âmodesettingâ
[ 13.171] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[ 13.173] (II) Module modesetting: vendor=âX.Org Foundationâ
[ 13.173] compiled for 1.20.9, module version = 1.20.9
[ 13.173] Module class: X.Org Video Driver
[ 13.173] ABI class: X.Org Video Driver, version 24.1
[ 13.173] (II) LoadModule: âfbdevâ
[ 13.173] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 13.174] (II) Module fbdev: vendor=âX.Org Foundationâ
[ 13.174] compiled for 1.20.1, module version = 0.5.0
[ 13.174] Module class: X.Org Video Driver
[ 13.174] ABI class: X.Org Video Driver, version 24.0
[ 13.174] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[ 13.174] (II) FBDEV: driver for framebuffer: fbdev
[ 13.184] (WW) Falling back to old probe method for modesetting
[ 13.184] (EE) open /dev/dri/card0: No such file or directory
[ 13.184] (WW) Falling back to old probe method for fbdev
[ 13.184] (II) Loading sub module âfbdevhwâ
[ 13.184] (II) LoadModule: âfbdevhwâ
[ 13.184] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 13.187] (II) Module fbdevhw: vendor=âX.Org Foundationâ
[ 13.187] compiled for 1.20.9, module version = 0.0.2
[ 13.187] ABI class: X.Org Video Driver, version 24.1
[ 13.187] (II) FBDEV(0): using default device
[ 13.187] (II) FBDEV(0): Creating default Display subsection in Screen section
âDefault Screen Sectionâ for depth/fbbpp 24/32
[ 13.187] (==) FBDEV(0): Depth 24, (==) framebuffer bpp 32
[ 13.187] (==) FBDEV(0): RGB weight 888
[ 13.187] (==) FBDEV(0): Default visual is TrueColor
[ 13.188] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[ 13.188] (II) FBDEV(0): hardware: OSD FB (video memory: 77312kB)
[ 13.188] (DB) xf86MergeOutputClassOptions unsupported bus type 0
[ 13.188] () FBDEV(0): Option âRotateâ âCWâ
[ 13.188] () FBDEV(0): rotating screen clockwise
[ 13.188] (II) FBDEV(0): checking modes against framebuffer deviceâŚ
[ 13.188] (II) FBDEV(0): checking modes against monitorâŚ
[ 13.188] (II) FBDEV(0): Virtual size is 1088x1920 (pitch 1088)
[ 13.188] () FBDEV(0): Built-in mode âcurrentâ
[ 13.188] (==) FBDEV(0): DPI set to (96, 96)
[ 13.188] (II) Loading sub module âfbâ
[ 13.188] (II) LoadModule: âfbâ
[ 13.189] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 13.190] (II) Module fb: vendor=âX.Org Foundationâ
[ 13.190] compiled for 1.20.9, module version = 1.0.0
[ 13.190] ABI class: X.Org ANSI C Emulation, version 0.4
[ 13.190] () FBDEV(0): using shadow framebuffer
[ 13.190] (II) Loading sub module âshadowâ
[ 13.190] (II) LoadModule: âshadowâ
[ 13.191] (II) Loading /usr/lib/xorg/modules/libshadow.so
[ 13.192] (II) Module shadow: vendor=âX.Org Foundationâ
[ 13.192] compiled for 1.20.9, module version = 1.1.0
[ 13.192] ABI class: X.Org ANSI C Emulation, version 0.4
[ 13.192] (II) UnloadModule: âmodesettingâ
[ 13.192] (II) Unloading modesetting
[ 13.214] (II) FBDEV(0): display rotated; disabling DGA
[ 13.214] (II) FBDEV(0): using driver rotation; disabling XRandR
[ 13.214] (==) FBDEV(0): Backing store enabled
[ 13.215] (==) FBDEV(0): DPMS enabled