View previous topic :: View next topic |
Author |
Message |
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3926
|
Posted: Wed Aug 18, 2021 9:15 pm Post subject: RPI4 arm64 xfce slow and sticky v4c with high CPU usage of X |
|
|
Ok i went ahead and installed arm64 on rpi4 modelB 4G.
Everything was easy.
I used makeoptions 4 and still everything was ok.
It boots fine into xfce.
But i have a problem i suppose with the vc4 driver.
Plz first have a look at my emerge --info
Code: |
emerge --info
Portage 3.0.20 (python 3.9.6-final-0, default/linux/arm64/17.0/desktop, gcc-10.3.0, glibc-2.33-r1, 5.10.17-v8 aarch64)
=================================================================
System uname: Linux-5.10.17-v8-aarch64-with-glibc2.33
KiB Mem: 3833276 total, 2539720 free
KiB Swap: 262140 total, 262140 free
Timestamp of repository gentoo: Wed, 18 Aug 2021 15:30:01 +0000
Head commit of repository gentoo: 7b682bc3961e1204555fb5b709315058692d6481
sh bash 5.1_p8
ld GNU ld (Gentoo 2.35.2 p1) 2.35.2
app-shells/bash: 5.1_p8::gentoo
dev-lang/perl: 5.34.0::gentoo
dev-lang/python: 3.9.6_p1::gentoo
dev-lang/rust-bin: 1.53.0::gentoo
dev-util/cmake: 3.20.5::gentoo
sys-apps/baselayout: 2.7::gentoo
sys-apps/openrc: 0.42.1-r1::gentoo
sys-apps/sandbox: 2.24::gentoo
sys-devel/autoconf: 2.69-r5::gentoo
sys-devel/automake: 1.16.3-r1::gentoo
sys-devel/binutils: 2.35.2::gentoo
sys-devel/gcc: 10.3.0-r2::gentoo
sys-devel/gcc-config: 2.4::gentoo
sys-devel/libtool: 2.4.6-r6::gentoo
sys-devel/make: 4.3::gentoo
sys-kernel/linux-headers: 5.10::gentoo (virtual/os-headers)
sys-libs/glibc: 2.33-r1::gentoo
Repositories:
gentoo
location: /var/db/repos/gentoo
sync-type: rsync
sync-uri: rsync://rsync.gentoo.org/gentoo-portage
priority: -1000
sync-rsync-extra-opts:
sync-rsync-verify-max-age: 24
sync-rsync-verify-metamanifest: yes
sync-rsync-verify-jobs: 1
miramir
location: /var/lib/layman/miramir
masters: gentoo
priority: 50
ACCEPT_KEYWORDS="arm64"
ACCEPT_LICENSE="*"
CBUILD="aarch64-unknown-linux-gnu"
CFLAGS="-march=native -mtune=cortex-a72 -ftree-vectorize -O2 -pipe -fomit-frame-pointer"
CHOST="aarch64-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -mtune=cortex-a72 -ftree-vectorize -O2 -pipe -fomit-frame-pointer"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--ask --quiet-build=y"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-march=native -mtune=cortex-a72 -ftree-vectorize -O2 -pipe -fomit-frame-pointer"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=native -mtune=cortex-a72 -ftree-vectorize -O2 -pipe -fomit-frame-pointer"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="C.UTF8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j4"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp/portage"
USE="X a52 aac acl acpi alsa arm64 bluetooth branding bzip2 cairo cdda cdr cli crypt cups dbus dri dts dvdr egl elogind emboss encode exif flac fortran gdbm gif gles1 gles2 gpm gtk gtk3 gui iconv icu ipv6 jpeg lcms libglvnd libnotify libtirpc mad mng mp3 mp4 mpeg ncurses nls nptl ogg opengl openmp openssl pam pango pcre pdf png policykit ppds pulseaudio readline sdl seccomp spell split-usr ssl svg tcpd tiff truetype udev unicode upower usb vaapi vorbis wxwidgets x264 xattr xcb xml xv xvid zlib" ADA_TARGET="gnat_2018" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_ARM="crc32 edsp thumb thumb2 v4 v5 v6 v7 v8 vfp vfp-d32 vfpv3 vfpv4" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-3 php7-4" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_9" PYTHON_TARGETS="python3_9" RUBY_TARGETS="ruby26" USERLAND="GNU" VIDEO_CARDS="vc4" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset: CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RUSTFLAGS
|
The issue is i keep having a constant 40% cpu usage from X.
This doesnt happen with my Devuan arm64 installation.
By the way I used the above to chroot into Gentoo when I was building the system.
My Gentoo lsmod
Code: |
Module Size Used by
ipv6 532480 18
binfmt_misc 24576 1
brcmfmac 323584 0
brcmutil 24576 1 brcmfmac
sha256_generic 16384 0
vc4 286720 1
cec 53248 1 vc4
v3d 81920 0
cfg80211 860160 1 brcmfmac
drm_kms_helper 245760 3 vc4
bcm2835_isp 32768 0
bcm2835_v4l2 45056 0
bcm2835_codec 49152 0
gpu_sched 40960 1 v3d
v4l2_mem2mem 40960 1 bcm2835_codec
bcm2835_mmal_vchiq 32768 3 bcm2835_codec,bcm2835_v4l2,bcm2835_isp
rfkill 36864 1 cfg80211
joydev 28672 0
videobuf2_vmalloc 20480 1 bcm2835_v4l2
videobuf2_dma_contig 24576 2 bcm2835_codec,bcm2835_isp
snd_soc_core 241664 1 vc4
videobuf2_memops 20480 2 videobuf2_vmalloc,videobuf2_dma_contig
drm 557056 6 gpu_sched,drm_kms_helper,v3d,vc4
videobuf2_v4l2 32768 4 bcm2835_codec,bcm2835_v4l2,v4l2_mem2mem,bcm2835_isp
snd_bcm2835 24576 0
snd_compress 20480 1 snd_soc_core
videobuf2_common 61440 5 bcm2835_codec,videobuf2_v4l2,bcm2835_v4l2,v4l2_mem2mem,bcm2835_isp
snd_pcm_dmaengine 20480 1 snd_soc_core
drm_panel_orientation_quirks 20480 1 drm
snd_pcm 131072 4 snd_bcm2835,snd_compress,snd_soc_core,snd_pcm_dmaengine
videodev 307200 6 bcm2835_codec,videobuf2_v4l2,bcm2835_v4l2,videobuf2_common,v4l2_mem2mem,bcm2835_isp
mc 57344 6 videodev,bcm2835_codec,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem,bcm2835_isp
snd_timer 36864 1 snd_pcm
vc_sm_cma 36864 2 bcm2835_mmal_vchiq,bcm2835_isp
syscopyarea 16384 1 drm_kms_helper
snd 102400 5 snd_bcm2835,snd_timer,snd_compress,snd_soc_core,snd_pcm
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
backlight 20480 1 drm
rpivid_mem 16384 0
nvmem_rmem 16384 0
uio_pdrv_genirq 16384 0
uio 24576 1 uio_pdrv_genirq
raspberrypi_hwmon 16384 0
|
It feels sticky and slow.
It boots super fine and display also ok but sticky and slow.
My
/boot/config.txt
Code: |
arm_64bit=1
kernel=kernel8.img
initramfs initramfs-5.10.52-v8+.img
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details
# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1
# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
disable_overscan=1
# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16
# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720
### uncomment to set display to 1024x768
#overscan_left=0
#overscan_right=0
#overscan_top=0
#overscan_bottom=0
#framebuffer_width=1024
#framebuffer_height=768
#framebuffer_depth=16
#hdmi_group=2
#hdmi_mode=16
# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1
# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2
# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4
# uncomment for composite PAL
#sdtv_mode=2
# camera
#start_x=1
gpu_mem=256
# uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800
# uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on
# uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18
# additional overlays and parameters are documented /boot/overlays/README
# enable audio (loads snd_bcm2835)
dtparam=audio=on
# enable uart
enable_uart=0
# Disable wifi and bluetooth
#dtoverlay=disable-wifi
#dtoverlay=disable-bt
# Remove test rainbow
disable_splash=1
[pi4]
# enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d
#dtoverlay=vc4-kms-v3d
#dtoverlay=vc4-kms-v3d-pi4
max_framebuffers=2
|
I created an initrd with dracut.
I dont know if it is necessary but i assumed a kind of copy-paste approach from Devuan to Gentoo.
I have linux-firmware-installed
I moved my / on mini ssd and it works just fine.
I installed the contenets of /boot by cloning
https://github.com/raspberrypi/firmware
My dmesg
https://pastebin.com/3S0qxSsw
My rc.log
https://pastebin.com/3epyZL4c
I have "libinput" in input_devices in make.conf.Is it ok?
Your precious wisdom would really be very very welcome.
Thanks a lot Guys. _________________
|
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3926
|
Posted: Wed Aug 18, 2021 10:26 pm Post subject: |
|
|
I FOUND IT!!!
In make.conf
VIDEO_CARDS="v4c v3d"
That is I appended v3d.
Now it works flawlessly.
Still wifi is giving me trouble though.... _________________
|
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3926
|
Posted: Wed Aug 18, 2021 11:06 pm Post subject: |
|
|
I connected an ethernet cable so wifi became insignificant.
BUT now i see there is NO binary web browser for arm?
Oh my!!!
What am i supposed to do now?
Build one on a pi? _________________
|
|
Back to top |
|
|
flysideways Guru
Joined: 29 Jan 2005 Posts: 498
|
Posted: Thu Aug 19, 2021 2:37 pm Post subject: |
|
|
Code: | Mon Jul 26 21:59:59 2021 >>> www-client/firefox-78.12.0
merge time: 12 hours, 15 minutes and 39 seconds. |
Firefox built natively on a usb3 attached ssd. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54639 Location: 56N 3W
|
Posted: Thu Aug 19, 2021 4:24 pm Post subject: |
|
|
alamahant,
Cheat. Feel free to use my arm64 binhost.
The Pi4 is no too bad a build system.
-- edit --
The wifi chip and its firmware is intended to with with EFI firmware, which the PI does not have.
You need the .txt file to provide the data that the EFI firmware would provide.
-- edit --
Built on a Mudan arm64 server, with 8 cores and 128G RAM ...
Code: | Mon Aug 16 12:51:33 2021 >>> www-client/firefox-91.0
merge time: 3 hours, 40 minutes and 54 seconds. |
_________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3926
|
Posted: Thu Aug 19, 2021 7:37 pm Post subject: |
|
|
Thanks Thanks @Neddy
No my friend @flysideways
I will give that a miss _________________
|
|
Back to top |
|
|
alamahant Advocate
Joined: 23 Mar 2019 Posts: 3926
|
Posted: Fri Aug 20, 2021 8:32 pm Post subject: |
|
|
Everything seems perfect now if not for a new slight glitch.
Although cpu usage is reasonable both when playing youtube and vlc 15-40%(i am satisfied with this number.In other arms i had 100-200%),there is a slight pause sometimes like its buffering.Not only youtube but also vlc.
I have cpupower installed and running with "--governor performance" and also rng-tools.
What would be causing this occasional stutter when playing video?
Is there any way to remedy this?
Thanks again.... _________________
|
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|