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.
Kolíkové řídicí jednotky...jsou taky kvalitni
Stačí číst originálNa něj jsem během rychlého průzkumu nenašel odkaz.
Zahlédl jsem zmínku ohledně F81216A, což vzbudilo mou zvědavost. K čemu explicitní podpora/ovladač?
Tenhle čtyřnásobný UART na LPC se vůči OS tváří jako čtyři generické UARTy 16C550A na klasických ISA adresách a IRQ (případně neklasických, pokud si tak švába nastavíte Vy nebo Váš BIOS). Navíc bývá BIOSem reportován skrz ISAPnP, takže Linux UARTy odjakmrtva i bezpečně autodetekuje (bez ISAPnP by stačil setserial).
Toho Finteka zná tuším taky user-space SuperIOtool - ale ten je dobrý tak na základní detekci (že je v systému skutečně Fintek, což může být zajímavá informace), případně na dump registrů (dost k ničemu).
Tenhle Fintek je zajímavý tím, že patří do skupiny UARTů, které umí hardwarově řídit half-duplex RS485 - alternativní funkcí pinu RTS. Motherboard samozřejmě musí ještě obsahovat odpovídající transceiver (analogový level shifter), případně lze pořídit snad i externí konvertor, třeba Advantech ADAM-4520 (ale pak to hardwarové řízení přímo v UARTu trochu ztrácí svou jedinečnost, protože ADAM si to umí ošetřit sám). => čili napadlo mě, že možná někdo přidal driver, který ví o schopnostech směrem k RS485 u tohoto LPC UARTu.
A skutečně, jedná se o driver (extra modul), který ví o RS485 v rámci švábu Fintek. Což je na jednu stranu chvályhodné, na druhou stranu zrovna tenhle Fintek má flagy pro nahození podpory RS485 umístěny natolik "stranou", že do nich nedrbe standardní UART driver 8250.c v Linuxu ani ve Windows, takže jakmile si jednou nastavíte podporu RS485 v BIOSu, tak už do toho nastavení v rámci OS nepotřebujete drbat. => není důvod mít pro to driver, snad jen s výjimkou hypotetického defektního motherboardu, který by měl podporu RS485 v hardwaru (transceiver onboard), ale chyběla by konfigurace v BIOS Setupu (nebo by byla vadná). I tak by to patrně šlo řešit z user space, přímým přístupem povoleným skrz ioperm().
V tomto ohledu jsou speciálním případem UARTy OX16C950 a kompatibilní (celé oxfordí portfolio), které naopak trpí tím, že jim vanilkový driver v Linuxu flagy okolo RS485 resetuje při každém volání open() jak slon v porcelánu - takže bez patche na vanilkovém kernelu se s RS485 nehnete.
Při čtení toho nového ovladače pro Fintek jsem si všiml, že se odkazuje na nějaký zajímavý struct a IOCTL týkající se RS485, které sám nedeklaruje.
Žeby už měl kernel podporu pro RS485 ve vanilce uvnitř? Žeby to někdo prosadil, po patnácti nebo kolika letech, přestože to Linus nemá ve svém notebooku, přestože UARTy dávno přešly v kancelářském hardwaru do "trvalé zombie fáze", přestože kompletní rodina Oxford 16xxx95x je už asi půl roku EOL?
Prozkoumal jsem nějaké výskyty těch věcí:
Klíčová slova:
TIOCSRS485
struct serial_rs485
Soubory:
include/uapi/linux/serial.h (10/2012)
include/uapi/asm-generic/ioctls.h (vznikl 10/2012, těžko říct zda TIOCSRS485 je ještě starší)
Documentation/serial/serial-rs485.txt (12/2010)
Documentation/devicetree/bindings/serial/rs485.txt (10/2011)
Závěr:
Zdá se, že je to zas jen další výkřik do tmy. struct serial_rs485 nemá dostatek flagů, aby popsal chování 16C950 a příbuzných. Zmíněná "vanilková podpora" žije trochu bokem v headerech UAPI, což vypadá jako dost platform-specific věc, pro konkrétní ne-x86 platformy (tuším nějaký ARM nebo MIPS).
Využívají to asi čtyři drivery pro obskurní on-chip UARTy uvnitř všelijakých SoCů.
Generický 8250.c dál obsahuje ten řádek nebo dva uvnitř open(), který torpéduje podporu RS485 v 16C950 a spol. - takže kdo to chce používat, ten se bez patche nadále neobejde.
Zažil jsem několik případů v různých modelech x86 hardwaru, kde Fintek F81216 různými vynalézavými způsoby buď hnil/havaroval po nějaké době běhu (začal mršit data), případně neudržel stolici hned po startu (potkával se motor s motorem na LPC proti south bridgi nebo co). Situace, kdy ho k vadnému chování ponoukl krátký pulz (mnohem kratší než jeden bit) přijatý z RS485, byla relativně nejpochopitelnější, přesto v průmyslovém použití na RS485 není takové chování přijatelné - UART toto musí ustát. Tenhle prašivý Fintek se dál a dál prodává a výrobci motherboardů ho používají patrně především proto, že je superlevný, možná levnější než srovnatelný (a 100% solidní) Winbond/Nuvoton, navíc Winbond historicky dlouhá léta kašlal na podporu RS485, takže mu Fintek pytlačil ve skulině trhu, kterou tvoří průmysloví zákazníci.
Naopak tradiční 16C950, původně vyráběný firmičkou Oxford, kterou před pár lety spokl žraloček PLX, po všech stránkách super kvalitní UART pro průmyslové použití, je už pár měsíců u PLX oficiálně EOL. Celá rodina, včetně nejmladších inkarnací s hostitelským rozhraním PCI-e. Kupodivu Advantech dál prodává karty s tímto UARTem a jeho oficiální EOL status sice s úsměvem přiznává, ale dál nijak nekomentuje...
Tím bych ten svůj dinosauří rant mohl pomalu ukončit...
Tiskni
Sdílej: