HorlogeSkynet / archey4

:computer: Maintained fork of the original Archey (Linux) system tool
https://git.io/archey4
GNU General Public License v3.0
291 stars 37 forks source link

[BUG] `GPU` not detected on Raspberry Pi #130

Open RobotsAreCrazy opened 1 year ago

RobotsAreCrazy commented 1 year ago

on pi 4 gpu not detected, pcutils already at latest installed, up to date on everything, only thing not available to install is the alternative to pcutils-linux (Installed).

Expected behavior displays gpu information in archey

Environment Raspberry Pi 4 8GB, Debian 12 bookworm

Additional context missing gpu information

installed using latest archey4 .deb (all)

p.s. thankyou for fixing cpu detection, works perfectly

HorlogeSkynet commented 1 year ago

Hi @RobotsAreCrazy, can you attach the output of lspci ? :upside_down_face:

Thanks for your message, bye :wave:

RobotsAreCrazy commented 1 year ago

lspci 00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2711 PCIe Bridge (rev 10) 01:00.0 USB controller: VIA Technologies, Inc. VL805/806 xHCI USB 3.0 Controller (rev 01)


Spec SoC: Broadcom BCM2711B0 quad-core A72 (ARMv8-A) 64-bit @ 1.5GHz GPU: Broadcom VideoCore VI Networking: 2.4 GHz and 5 GHz 802.11b/g/n/ac wireless LAN RAM: 1GB, 2GB, or 4GB LPDDR4 SDRAM Bluetooth: Bluetooth 5.0, Bluetooth Low Energy (BLE) GPIO: 40-pin GPIO header, populated Storage: microSD Ports: 2 × micro-HDMI 2.0, 3.5 mm analogue audio-video jack, 2 × USB 2.0, 2 × USB 3.0, Gigabit Ethernet, Camera Serial Interface (CSI), Display Serial Interface (DSI)

HorlogeSkynet commented 1 year ago

Thanks, could you run glxinfo -B and tell us whether it gave you what we're looking for here ? There is actually dylanaraps/neofetch#1928 addressing systems lacking of PCIe GPU.

:wave:

RobotsAreCrazy commented 1 year ago

Thanks, could you run glxinfo -B and tell us whether it gave you what we're looking for here ? There is actually dylanaraps/neofetch#1928 addressing systems lacking of PCIe GPU.

:wave:

Command not found and not in repo to install

apparently, i need to install mesa-utils to get that info

error: unable to open display

HorlogeSkynet commented 1 year ago

On Debian 11, it comes from mesa-utils.

RobotsAreCrazy commented 1 year ago

On Debian 11, it comes from mesa-utils.

Already installed mesa-utils

received error: unable to open display

RobotsAreCrazy commented 1 year ago

On Debian 11, it comes from mesa-utils.

Do i need a driver? it's mesa v3d really not sure if a driver is provided on fresh install, plus i don't use a desktop, i'm all terminal

Did a search.....

glx-alternative-mesa 1.2.2 [Debian/bookworm contrib] └── allows the selection of MESA as GLX provider

libd3dadapter9-mesa 22.3.3-1 [Debian/bookworm main] └── state-tracker for Direct3D9

libd3dadapter9-mesa-dev 22.3.3-1 [Debian/bookworm main] └── state-tracker for Direct3D9 -- development files

libegl-mesa0 22.3.3-1 [Debian/bookworm main] └── free implementation of the EGL API -- Mesa vendor library

libegl1-mesa 22.3.3-1 [Debian/bookworm main] └── transitional dummy package

libegl1-mesa-dev 22.3.3-1 [Debian/bookworm main] └── free implementation of the EGL API -- development files

libgbm-dev 22.3.3-1 [Debian/bookworm main] └── generic buffer management API -- development files

libgbm1 22.3.3-1 [Debian/bookworm main] └── generic buffer management API -- runtime

libgl1-mesa-dev 22.3.3-1 [Debian/bookworm main] └── transitional dummy package

libgl1-mesa-dri 22.3.3-1 [Debian/bookworm main] └── free implementation of the OpenGL API -- DRI modules

libgl1-mesa-glx 22.3.3-1 [Debian/bookworm main] └── transitional dummy package

libglapi-mesa 22.3.3-1 [Debian/bookworm main] └── free implementation of the GL API -- shared library

libgles2-mesa 22.3.3-1 [Debian/bookworm main] └── transitional dummy package

libgles2-mesa-dev 22.3.3-1 [Debian/bookworm main] └── transitional dummy package

libglu1-mesa 9.0.2-1.1 [Debian/bookworm main] └── Mesa OpenGL utility library (GLU)

libglu1-mesa-dev 9.0.2-1.1 [Debian/bookworm main] └── Mesa OpenGL utility library -- development files

libglw1-mesa 8.0.0-1.1+b1 [Debian/bookworm main] └── GL widget library for Athena and Motif -- runtime

libglw1-mesa-dev 8.0.0-1.1+b1 [Debian/bookworm main] └── GL widget library for Athena and Motif -- development files

libglx-mesa0 22.3.3-1 [Debian/bookworm main] └── free implementation of the OpenGL API -- GLX vendor library

libosmesa6 22.3.3-1 [Debian/bookworm main] └── Mesa Off-screen rendering extension

libosmesa6-dev 22.3.3-1 [Debian/bookworm main] └── Mesa Off-screen rendering extension -- development files

librust-osmesa-sys-dev 0.1.2-1+b1 [Debian/bookworm main] └── OSMesa library bindings for Rust - Rust source code

libwayland-egl1-mesa 22.3.3-1 [Debian/bookworm main] └── transitional dummy package

mesa-common-dev 22.3.3-1 [Debian/bookworm main] └── Developer documentation for Mesa

mesa-opencl-icd 22.3.3-1 [Debian/bookworm main] └── free implementation of the OpenCL API -- ICD runtime

mesa-utils 8.5.0-1 [Debian/bookworm main] └── Miscellaneous Mesa utilities -- symlinks

mesa-utils-bin 8.5.0-1 [Debian/bookworm main] └── Miscellaneous Mesa utilities -- native applications

mesa-va-drivers 22.3.3-1 [Debian/bookworm main] └── Mesa VA-API video acceleration drivers

mesa-vdpau-drivers 22.3.3-1 [Debian/bookworm main] └── Mesa VDPAU video acceleration drivers

mesa-vulkan-drivers 22.3.3-1 [Debian/bookworm main] └── Mesa Vulkan graphics drivers

mesaflash 3.4.6-1 [Debian/bookworm main] └── Mesa Electronics utility tool

mir-client-platform-mesa-dev 1.8.2+dfsg-5 [Debian/bookworm main] └── Mir client platform - library for Mesa - development headers

mir-client-platform-mesa5 1.8.2+dfsg-5 [Debian/bookworm main] └── Mir client platform - library for Mesa

mir-platform-graphics-mesa-kms16 1.8.2+dfsg-5 [Debian/bookworm main] └── Mir Display Server - platform library for KMS Mesa

mir-platform-graphics-mesa-x16 1.8.2+dfsg-5 [Debian/bookworm main] └── Mir Display Server - platform library for X11 Mesa

pike8.0-gl 8.0.1738-1+b2 [Debian/bookworm main] └── Mesa modules for Pike

xscreensaver-gl 6.02+dfsg1-2+b1 [Debian/bookworm main] └── GL(Mesa) screen saver modules for screensaver frontends

xscreensaver-gl-extra 6.02+dfsg1-2+b1 [Debian/bookworm main] └── Extra GL(Mesa) screen saver modules for screensaver frontends

HorlogeSkynet commented 1 year ago

No I'd rather think you need a running X server for glxinfo to work. I have no idea how we can retrieve such an info, maybe Linux populated at boot some special files with such hardware metadata ?

Does grep -ri VideoCore /sys give you something ?

RobotsAreCrazy commented 1 year ago

Got resources unavailable error

Tbh I'm thinking maybe to get info I would need a desktop environment installed, not something I was planning to install as I just connect through SSH terminal

to me it is just wasted resources if I install one

HorlogeSkynet commented 1 year ago

Sure, let's find a way to retrieve this by another mean.

RobotsAreCrazy commented 1 year ago

Sure, let's find a way to retrieve this by another mean.

Thinking going LXQT or XFCE if I really have to, but then I just need to find out how to install it

RobotsAreCrazy commented 1 year ago

Sure, let's find a way to retrieve this by another mean.

Do I really have to install a desktop environment or can you think of any way to retrieve that info?

HorlogeSkynet commented 1 year ago

At the moment I cannot think of one. I'm not sure I'll be able to perform extensive search on this subject with my current bandwidth. In the meantime, if you do find something out, please let us know.

RobotsAreCrazy commented 1 year ago

At the moment I cannot think of one. I'm not sure I'll be able to perform extensive search on this subject with my current bandwidth. In the meantime, if you do find something out, please let us know.

Maybe just hardcode the GPU info as not like it will change for the PI4

HorlogeSkynet commented 1 year ago

I'd rather vote against this, but if there is not any other way, we'll do.

RobotsAreCrazy commented 1 year ago

I'd rather vote against this, but if there is not any other way, we'll do.

It's a last resort not something I'd ideally go for, but only if there is no way of making it work

HorlogeSkynet commented 1 year ago

Could you try lshw and/or hwinfo commands ? :slightly_smiling_face:

RobotsAreCrazy commented 1 year ago

Could you try lshw and/or hwinfo commands ? :slightly_smiling_face:

lshw doesn't detect GPU info

HorlogeSkynet commented 1 year ago

For reference : https://github.com/HorlogeSkynet/archey4/issues/111#issuecomment-1081449894

HorlogeSkynet commented 1 year ago

Have you been able to give a try to hwinfo on your Pi ? 🙂

RobotsAreCrazy commented 1 year ago

Actually, i haven't but will try later

RobotsAreCrazy commented 1 year ago

Have you been able to give a try to hwinfo on your Pi ? 🙂

Just tried not detected any gpu info, it would be nice to have archey show complete info, but guess it is not possible.

not sure what else can be tried....

HorlogeSkynet commented 1 year ago

Does dmesg show you something about GPU ? 🙄

RobotsAreCrazy commented 1 year ago

that was pretty useless running that cmd....deadend for any gpu related info tbh

HorlogeSkynet commented 1 year ago

Could you try /opt/vc/bin/vcgencmd vcos version or /opt/vc/bin/vcgencmd version ? 🙂

RobotsAreCrazy commented 1 year ago

Could you try /opt/vc/bin/vcgencmd vcos version or /opt/vc/bin/vcgencmd version ? 🙂

vcgencmd was not located there...found it!

/usr/bin/vcgencmd

Jan 18 2023 12:28:01 Copyright (c) 2011 Broadcom version 658f02cc8edcb68a568273f05d2b6ceede181e15 (clean) host buildbot

HorlogeSkynet commented 1 year ago

Thanks ! I guess we've to improve Temperature entry to match multiple program locations (I'll do it). Just to be sure it is not an upstream documentation error, version and vcos version shows the same thing ? 🙄

RobotsAreCrazy commented 1 year ago

Thanks ! I guess we've to improve Temperature entry to match multiple program locations (I'll do it). Just to be sure it is not an upstream documentation error, version and vcos version shows the same thing ? 🙄

yes, the same information

Jan 18 2023 12:28:01 Copyright (c) 2011 Broadcom version 658f02cc8edcb68a568273f05d2b6ceede181e15 (clean) host buildbot

HorlogeSkynet commented 1 year ago

Well let's hardcode it then ! What about an internal mapping (model, version) => GPU string in GPU entry ? A proper PR would be welcome 😇

👋

EDIT : This would actually "couple" GPU and Model entries and this may introduce undesired side-effects in the future (e.g. cyclic imports), as well as poor performance (Model would be loaded twice, unless we implement "caching" for base Entry). Removing this issue from next milestone for the time being.

HorlogeSkynet commented 5 months ago

Hello @RobotsAreCrazy ! Do you know which driver kernel loads and uses for Broadcom VideoCore VI ? If so, maybe we can look for it in lsmod output or /proc/modules ? Thanks, bye :wave:

RobotsAreCrazy commented 5 months ago

No idea, we're probably lucky to have it working as well as it is, you might get the answer on the forum

ingrinder commented 5 months ago

@HorlogeSkynet I actually happen to have a Pi 4 at home, once I'm a bit more free in time I can take a look at how we can get this data if you haven't got it worked it out by then :+1:

HorlogeSkynet commented 5 months ago

So as a followup to my last comment, I've got this on my Pi B+ :

grep ^vc4 /proc/modules 
vc4 262144 2 - Live 0xabcdef01

... as it has a Broadcom VideoCore IV chipset. I wonder whether something like that could be retrieved with VideoCore VI (but I noticed some drivers issues related with it, and haven't yet understood how Linux actually supports it).

Cheers :wave:

HorlogeSkynet commented 2 months ago

Hello @ingrinder, I hope you passed your exams ! Did you manage to spend some time on current ongoing works ? :slightly_smiling_face: Bye :wave:

HorlogeSkynet commented 1 month ago

Hello @RobotsAreCrazy, @MatsA and @ingrinder, please find implementation proposal in #157 (!).

Thanks bye :wave: