Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.
Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.
Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.
npm balíčky @redhat-cloud-services byly kompromitovány.
Byly publikovány informace o zranitelnosti CVE-2026-46243 pojmenované CIFSwitch v Linuxu od roku 2007. Běžný uživatel může získat práva roota (lokální eskalaci práv). V upstreamu je již opraveno.
Nvidia na své konferenci NVIDIA GTC Taipei 2026 představila řadu novinek. Společně s Microsoftem představili superčip NVIDIA RTX Spark (až 6 144 jader GPU, 20 jader CPU, 1 petaflop AI výkonu v FP4 a 128 GB jednotné paměti). První notebooky a stolní počítače s tímto čipem od Nvidie místo Intelu nebo AMD by se měly na trh dostat na podzim letošního roku.
Na Kickstarteru běží kampaň na podporu kapesního počítače s Linuxem CardputerZero od společnosti M5Stack. Postaven je na Raspberry Pi Compute Module 0. Podporuje moduly M5. Koupit lze s rozšířeními LoRa a CC1101.
Tento týden se bude vyznačovat zejména deštěm, a proto vás může zajímat, že již v úterý proběhne 63. Virtuální Bastlírna, která se bude odehrávat přímo v teple vašich domovů a bastlíren. Proto se připojte k této volné otevřené diskuzi bastlířů, techniků, vědců, ve které se probírají novinky a zajímavá témata z techniky. Mezi největší novinky bude tentokrát patrně patřit oznámení hackerského nástroje Flipper One. Zároveň úspěšně probíhá
… více »86Box (Wikipedie), tj. emulátor retro počítačů založených na x86, byl vydán ve verzi 6.0. Přibyly například zvuky pevného disku. Na GitHubu jsou vedle zdrojových kódů ke stažení také připravené balíčky ve formátu AppImage.
Byla vydána nová verze 4.6 audio přehrávače Audacious (Wikipedie). Z novinek lze vypíchnout nový plugin pro procházení soubory, podporu audio formátu Musepack SV8 nebo přechod na build systém Meson.
Odkazy
Grafický čip mali 400 je v súčasnosti jeden z najbežnejšie používaných grafických čipov na ARM doskách / tabletoch. Ako to u propietárnch ovládačov býva zvykom väčšinu práce odvádza propietárna časť v userspace. Malá časť kódu, ktorá poskytuje rozhranie k hardvéru je (a musí byť kvôli GPL) open source. Nedávno sa mi podarilo nájsť binárny ovládač r4p0. Tento blog bude o tom ako rozbehať r4p0 na SoC značky Allwinner.
Na úspešné rozbehanie ovládačov budeme potrebovať predovšetkým uzatvorenú userspace časť ovládača. Allwinner poskytuje tieto binárne ovládače voľne na ľubovoľné použitie (žiadna EULA). Najvyššia verzia je však r3p2. Novšia verzia (s extrémen humusáckou EULA) sa dá čmajznúť z hardkernelu (neviem či som spomínal, ale nemám túto firmu rád). Pár zaujímavých odstavcov prihladám aj tu:
2.1 Hardkernel hereby grants Licensee a limited, non-exclusive, non-transferable, irrevocable, restricted right to use the Software in object code form only on the Computer System solely for the purpose of developing application software for Hardkernel devices using the Samsung Exynos 4412 System-on-a-Chip.
2.2.4 You will not disassemble, decompile, reverse engineer, modify or create derivative works of the Software or documentation nor permit any third party to do so, except to the extent such restrictions are prohibited by applicable mandatory local law.
Okrem toho budeme potrebovať príslušnú verziu open source časti ovládača zo stránky mali.
tar -xvf r4p0-mp400-fbdev.tar -C /usr/lib
Jednoduché, že 
Grafický čip mali používa široké spektrum SoC. Podľa zapojenia sa inicializuje / mapuje videopamäť na rôznych zariadeniach rôzne. Ovládač zo stránky mali obsahuje len spoločné časti pre všetky SoC. Inicializačný kód sa musí skopírovať do adresára platform:
$ ls -lh platform drwxr-xr-x 2 mirec mirec 68 sep 21 20:55 arm drwxr-xr-x 2 mirec mirec 53 sep 21 23:13 sunxi
Od verzie ovládača r3p2 sa zmenil spôsob inicializácie, takže celá špecifická časť sa musela prepísať. Našťastie som nedávno objavil na tomto blogu časť ovládača pre sunxi.
Novšia verzia (r4p0) vyžaduje síce malé úpravy (inak zhodí kernel), ale nie je to nič hrozné - diff:
--- sunxi.old.c 2014-09-28 14:49:20.556354235 +0200
+++ sunxi.c 2014-09-21 23:00:11.750347742 +0200
@@ -30,6 +30,9 @@
#include <plat/sys_config.h>
#include <plat/memory.h>
#include <plat/system.h>
+#include <linux/dma-mapping.h>
+#include <linux/moduleparam.h>
+#include "mali_pp_scheduler.h"
#ifdef CONFIG_FB_SUNXI_RESERVED_MEM
extern unsigned long fb_start;
@@ -152,16 +155,19 @@
SW_INT_IRQNO_GPU_PP1, SW_INT_IRQNO_GPU_PPMMU1)
};
+static struct mali_gpu_device_data mali_gpu_data =
+{
+ .shared_mem_size = 256 * 1024 * 1024, /* 256MB */
+};
+
static struct platform_device mali_gpu_device =
{
.name = MALI_GPU_NAME_UTGARD,
.id = 0,
.dev.release = mali_platform_device_release,
-};
+ .dev.coherent_dma_mask = DMA_BIT_MASK(32),
-static struct mali_gpu_device_data mali_gpu_data =
-{
- .shared_mem_size = 256 * 1024 * 1024, /* 256MB */
+ .dev.platform_data = &mali_gpu_data,
};
int mali_platform_device_register(void)
@@ -191,12 +197,14 @@
ARRAY_SIZE(mali_gpu_resources_m400_mp1));
}
+ /*
+ NEEE
if (0 == err)
{
err = platform_device_add_data(&mali_gpu_device, &mali_gpu_data, sizeof(mali_gpu_data));
if (0 == err)
{
- /* Register the platform device */
+ / Register the platform device /
err = platform_device_register(&mali_gpu_device);
if (0 == err)
{
@@ -214,6 +222,22 @@
platform_device_unregister(&mali_gpu_device);
}
+ */
+
+ /* Register the platform device */
+ err = platform_device_register(&mali_gpu_device);
+ if (0 == err) {
+#ifdef CONFIG_PM_RUNTIME
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37))
+ pm_runtime_set_autosuspend_delay(&(mali_gpu_device.dev), 1000);
+ pm_runtime_use_autosuspend(&(mali_gpu_device.dev));
+#endif
+ pm_runtime_enable(&(mali_gpu_device.dev));
+#endif
+
+ return 0;
+ }
+
return err;
}
@@ -223,6 +247,7 @@
MALI_DEBUG_PRINT(4, ("mali_platform_device_unregister() called\n"));
platform_device_unregister(&mali_gpu_device);
+ platform_device_put(&mali_gpu_device);
mali_platform_deinit();
}
Kompletný zdroják je v mojom repozitári.
Ovládač je možné skompilovať mimo zdrojákov príkazom (cross kompilátor podľa použitej platformy):
MALI_PLATFORM=sunxi CROSS_COMPILE=arm-cortex_a7-linux-gnueabi- KDIR=/cesta/k/zdrojakom/jadra USING_UMP=0 BUILD=release make
Ak by náhodou niekto chcel dať tento ovládač priamo do zdrojákov kernelu (mimochodom tak je to v mojom repozitári, ale keď to niekto chce proriešiť posvojom) tak treba dať pozor na jednu drobnosť: musí byť zapnuté EXTRA_DEFINES:=-DMALI_FAKE_PLATFORM_DEVICE=1 inak sa ovládač len tvári, že sa inicializoval. Pár hodín som sa s tým trápil kým som zistil, že u pánov číňanov je fake reálne zariadenie 
Nechce sa mi prepínať medzi rôznymi verziami ovládača, takže žiadne seriózne benchmarky dnes nečakajte. Pre porovnanie som používal Qt5 cinematic experience s povypínanými efektmi. S ovládačom r3p0 sa hodnota fps pohybovala okolo 90. Verzia r4p0 dosahuje okolo 170 fps. Rozdiel bol celkom očakávaný. Momentálne mám totiž dvojjadrovú grafiku a r3p0 vie používať len jedno jadro. Presný changelog nie je bežným používateľom dostupný, takže neviem čo všetko sa medzi r3p0 a r4p0 zmenilo. Škoda, že viacero jadier sa dá použiť legálne len s doskou od hardkernelu.
Na vyššie odkazovanom blogu som našiel odkaz na to, ako zapnúť vertikálnu synchronizáciu. Video z môjho zariadenia so zapnutou synchronizáciou je tu:
Tiskni
Sdílej:
Jak pokročila Lima? Poslední zpráva u nich je:
Q3A now runs with open source generated shaders!
což zní dost slibně a to bylo už 2013-03-18.
Pokiaľ viem lima je totálne dead. Žiaľ nie je dosť ľudí na to aby drivery dokopali do použiteľného stavu.