Tovább gyorsul a Lenovo Legion Go sorozat Linux alatti támogatásának fejlődése: Derek J. Clark nyílt forráskódú fejlesztő közzétette a második patch-sorozatot a Legion Go és Legion Go S beépített vezérlőihez kapcsolódó HID konfigurációs meghajtókhoz. A munka célja, hogy ezek a népszerű gamer kézikonzolok Linuxon – különösen SteamOS-alapú rendszereken – is a lehető legteljesebb funkcionalitást nyújtsák.
Az elmúlt évben kifejezetten intenzív fejlesztés zajlott a Legion Go Linuxos támogatása körül, hiszen egyre több felhasználó szeretné ezeket az eszközöket alternatív operációs rendszerekkel, elsősorban Linuxszal használni. A mostani frissítés fókuszában a beépített vezérlők konfigurálhatósága áll, olyan hardverspecifikus beállításokkal, mint az automatikus alvó mód időzítése, a rezgés (rumble) erőssége, illetve egyéb, eddig csak korlátozottan elérhető paraméterek.
Clark részletes magyarázata szerint az új driver külön konfigurációs alréteget biztosít a Legion Go S, a Legion Go és a várható Legion Go 2 HID interfészeihez. A nem konfigurációs jelentések továbbra is változatlanul a HID alrendszerhez kerülnek továbbításra, így a felhasználói térben semmilyen funkcionalitás nem vész el. Az alap gamepad működést továbbra is az xpad driver biztosítja, míg az olyan fejlettebb funkciók, mint a részletes profilkezelés, jelenleg még felhasználói térben futó démonok – például az InputPlumber – segítségével érhetők el. A fejlesztő célja azonban egyértelmű: ezeket a képességeket egy későbbi patch-sorozattal közvetlenül a kernelbe szeretné áthelyezni.

egyik technikailag érdekes újítása három új device.h makró bevezetése. Ezek egy meglehetősen speciális, de több eszközt érintő problémát oldanak meg: számos attribútumnak azonos nevet kell viselnie különböző sysfs alkönyvtárakban. Az új makrók segítségével a sysfs útvonalak rövidebbek és áttekinthetőbbek lettek, csökkentve az ismétlődéseket, miközben funkció szerint jól csoportosított struktúra alakítható ki. A megoldás nemcsak a Legion Go drivereknél hasznos, hanem például a hid-asus-ally meghajtónál és egy készülő, Zotac Zone-hoz tartozó külső driver esetében is, ezért Clark szerint indokolt volt ezeket központilag, a kernel eszközmakrói közé beemelni.

Szintén fontos újítás egy friss HID uevent tulajdonság, a HID_FIRMWARE_VERSION bevezetése. Ez lehetővé teszi, hogy az fwupd közvetlenül kiolvassa a Legion Go S vezérlő firmware-verzióját anélkül, hogy le kellene választania a kernelmeghajtót, ami eddig kerülőmegoldásokat igényelt.

Az előző verzióhoz képest strukturális változás is történt: a Legion Go S kódja most már önálló driverbe került szétválasztásra, ami tisztább felépítést és könnyebb karbantarthatóságot eredményez.
A fejlesztés jelenleg kernel review alatt áll, és az egyik nagy kérdés az, hogy a meghajtók időben elkészülnek-e ahhoz, hogy bekerülhessenek a Linux 7.0 ciklusába. Amennyiben ez sikerül, az jelentős mérföldkő lenne a Lenovo Legion Go sorozat számára, és tovább erősítené a Linux pozícióját a hordozható gamer eszközök világában.





