Portál AbcLinuxu, 7. května 2025 18:55
Miniaturní počítač Raspberry Pi - na bázi ARM a s Linuxem - jde do výroby. Vyrábí se v Číně, výroba v Británii totiž nebyla cenově únosná, čemuž značně přispívají dokonce i tamní zákony. Pokud importujete součástky, clo platíte, ale u hotových výrobků nikoliv.
Tiskni
Sdílej:
Pokud importujete součástky, clo platíte, ale u hotových výrobků nikoliv.Tohle mi přijde dost zvláštní - myslel jsem, že pravidla na clo jsou teď v EU všude stejná.
Jenže VideoCore je plnohodnotný general purpose processor. Je to víc než jen grafický akcelerátor. Je škoda že se do něj člověk nedostane.
O několika megabajtový firmware mi ani tak nejde jako že není specifikace jak s jeho službami komunikovat. Obávám se, že papírová podpora OpenGL je vám k ničemu, když za stávající uzavřenosti bude Linux honit grafiku přes frame buffer a video přehrávat v lepším případě jako video overlay, v horším případe ručně přesouvat bitmapy z dekodéru do frame bufferu.
to se zas bude blbě dělat update jádraResp. výkonného bloku, protože u těchhle ASICů se předpokládá, že se budou natahovat aplikace (jádro, zavaděč, specifická na míru udělaná aplikace) a FAT je jediný souborový systém na který má přístup úplně všechno. S jádrem systému (nedejbože jádrem GNU) se počítá jen sotva.
No tak možná by šlo mikrokódem tahat data z SDA jak s ní budeš komunikovat? Na to aby si s ní mohl komunikovat, tak by si musel inicializovat vše od interní sběrnice procesoru až po kartu samotnou a celou strukturou se prokousat. Což netvrdím, že není v mikrokódu neproveditelné, ale určitě je to docela takové kostrbaté.
A pokud by mikrokód nestačil, tak klidně malá boot ROM na čipu (takovejch 512B v MBR taky stačí ). A MBR by pak natáhlo cokoliv dalšího.No ona ta idea brouka s malým NAND polem a na výjmatelné patici a přímo napojené na procesor nebyla až tak blbá. Jen kdyby ty křápy na ní nebyly tak moc bazmekoidní (tím myslím BIOS). Zas brouci jsou dneska levní a většinou se už na ně vleze i celé jádro, takže je to takové dvousečné.
Jinak FAT je na jeden image firmware zbytečná věcTak aby se to dobře updatovalo. Zas z toho že se tím standardem stává FAT mám docela strach.
stačí v MBR definovat start a konec oblasti a v ní mít ty data RAW (i malej header by šel implementovat).Jasně a balíčkovací systém se u příkazu update bude k tomu prokousávat jak?
Ovšem jestli to má bootovat i z jinejch periférií než SD, tak je něco složitějšího asi fakt potřeba.Staré Broadcomácké SoC to dělali tak, že měli na sběrnici NAND, na prvních 256kB CFE a v mikrokódu něco jako nacpi 256kB někam do paměti a JMP na to místo. CFE měl otevřené zdrojáky.
tak by si musel inicializovat vše od interní sběrnice procesoruK flipflopu nezapojím RST drát do vstupu R ale do vstupu S
Což netvrdím, že není v mikrokódu neproveditelné, ale určitě je to docela takové kostrbaté.Dobře tak 2kB ať nežeru
Tak aby se to dobře updatovalo. Zas z toho že se tím standardem stává FAT mám docela strach.Firmware s NAND nebo NOR to maj taky dost natvrdo.
Jasně a balíčkovací systém se u příkazu update bude k tomu prokousávat jak?Stejně jako u NAND/NOR
Staré Broadcomácké SoC to dělali tak, že měli na sběrnici NAND, na prvních 256kB CFE a v mikrokódu něco jako nacpi 256kB někam do paměti a JMP na to místo. CFE měl otevřené zdrojáky.Tak samozřejmě nejlepší by to bylo s opensource to je bezpředmětný. Ta NAND se mě už moc nelíbí
BTW^2 moderní BIOS je LPC periferie přímoAle houbelec? Jak nové? Je pravdou že já mám starého Celera tak z přelomu tisíciletí, ale ještě co jsem viděl nové desky, brouk (pole) nebyl natvrdo připájený, ale dal se kleštěma vybrat. Co když se posere flashung?
Dobře tak 2kB ať nežeru . Spousta uC má takovou ROM (třeba scanner) ještě větší (a firmware pak navíc ještě tahá přes USB). V PCI kartách je řadič, co si natáhne data z i2c eeprom.Ty tak trochu nepobíráš moji pointu. Tou není ani velikost ani způsob natažení, ale nějaká standardizace. Kdysi dávno to byla disketa, včera to byl přímí přístup na NAND, dneska SD card, zítra třeba nějaký holografický pičmulínek, pozítří ví bůh. PCI karta nech si výkonný kód tahá jak chce (pokud bude fungovat), ale třeba u Fedory už by ten způsob neměl být device-specific. No tak či tak by
Někdoměl říct že se tu i případě různých periferií bude tahat tak a tak, měl by to vymyslet modulárně, nepříliš komplexně, otevřeně a hlavně aby se to tahalo co nejkratší možnou dobu.
Firmware s NAND nebo NOR to maj taky dost natvrdo.Jako co? Firmware, jádro nebo zavaděč?
Navíc bych se divil, kdyby někdo nedokázal ani dd (zvlášť, když při korektním zápisu do MBR se vytvoří mount point!)Dovedeš si představit Debian nebo Fedoru a jádro s dd? A jaká by byla hraniční velikost? Ne! Jádro patří do /boot/bzImage (klidně může být i symlink někam do nějakého brouka, hlavně když se to bude přepisovat systémovým voláním write())
Ale houbelec? Jak nové? Je pravdou že já mám starého Celera tak z přelomu tisíciletí, ale ještě co jsem viděl nové desky, brouk (pole) nebyl natvrdo připájený, ale dal se kleštěma vybrat. Co když se posere flashung?Moderní PC (ne z roku 2000 jako K7S5A) už nemaj obyč. paralelní flash, ale SPI nebo lépe LPC flash. SPI může být jako SMD brouk (rayer.ic.cz tuším popisoval flash), ale taky nemusí. LPC pak mám v kompu (2006) jako PLCC32 brouka (stejný pouzdro jako ta původní flash). Ale je to složitější mikrokontrolér (?), neboť reaguje na adresní a datové cykly na LPC (sériová sběrnice), LPC slave může realizovat cokoliv, je to vlastně náhražka ISA. Moje flash tuším umí na nepoužitých pinech (asi 50%
Ty tak trochu nepobíráš moji pointu.Jo, a nebo se snažíme aproximovat odpověď z jiných úhlů
Jako co? Firmware, jádro nebo zavaděč?To je právě otázka co to je
A jak s ní budeš komunikovat? Na to aby si s ní mohl komunikovat, tak by si musel inicializovat vše od interní sběrnice procesoru až po kartu samotnou a celou strukturou se prokousat. Což netvrdím, že není v mikrokódu neproveditelné, ale určitě je to docela takové kostrbaté.To jsem myslel mikrokód automatu nebo kód v ROM přímo na SoC (bába nebo sníh
Dovedeš si představit Debian nebo Fedoru a jádro s dd? A jaká by byla hraniční velikost? Ne! Jádro patří do /boot/bzImage (klidně může být i symlink někam do nějakého brouka, hlavně když se to bude přepisovat systémovým voláním write())Přesně MBR(0x1be+16*i+0xc) přičemž i je 0,1,2,3, ale imho by to bylo skoro vždy =0. Pak by se vytvořil /dev/sda1. Jinak u-boot taky moc na rozložení NAND flash, kde je třeba linux, nehledí. Jinak FATka se oproti tomuhle RAWu zrovna moc neliší, je ale složitější jí implementovat.
loadlin
.
Obdobné obezličky bylo tenkrát třeba i u jiného hadrware, napřiklad než jsem si pořídil pravou SB 16, tak jsem měl jakousi divnou levnou zvukovou kartu, co se až po inicializaci DOSovým programem od výrobce začala jevit SB Pro kompatibilní.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.