Preciso de um driver framebuffer para um sistema CLI mínimo sem X?

1

Eu criei recentemente um sistema Linux From Scratch no meu laptop Apple Macbook; no entanto, tenho lutado para entender o hardware gráfico e as opções de driver do kernel que preciso ativar.

O sistema LFS é (atualmente) um sistema bastante minimalista que inicializa no Bash, mas não possui o sistema X Window ou qualquer DE. O laptop é um Macbook 2,1, que inclui um chip gráfico Intel GMA 950. Eu habilitei o que eu acredito ser o driver apropriado no Kernel para este GPU, que é o driver i915; no entanto, a menos que eu também ative algumas outras opções relacionadas a 'dispositivos framebuffer' (ainda não identifiquei as opções de configuração exatas), nada é impresso na tela durante a inicialização (embora a tela mude para um tom diferente de preto algumas vezes ).

Alguém pode explicar o que está acontecendo aqui? Se o driver i915 for o correto para a GPU, isso não seria suficiente para o sistema imprimir a saída do terminal na tela? Se não, então o que mais eu preciso, além do driver i915?

Eu também tenho o Trisquel instalado no mesmo laptop, que inicializa bem no ambiente LXDE e, de acordo com lsmod , o driver i915 é o correto e o kernel não parece estar carregando nenhum objeto relacionado ao framebuffer drivers.

Estou confuso!

    
por Time4Tea 01.12.2017 / 21:35

1 resposta

0

Eu tenho feito algumas pesquisas sobre isso, e a resposta curta parece ser: sim - eu preciso de um framebuffer para habilitar o console.

De acordo com o artigo da Wikipedia sobre o Linux Console , o console tem dois modos: modo de texto e framebuffer. A partir da descrição, parece que o modo de texto é bastante básico e pode não funcionar com todo o hardware gráfico. Então, isso deixa o console do framebuffer, que obviamente vai exigir que um framebuffer funcione.

Eu copiei a saída de lsmod para um arquivo, para a configuração do kernel onde eu estava trabalhando, o que mostra isso quando canalizado para grep fb :

$ less lsmod_LFS | grep fb
fbcon                  49152  70
bitblit                16384  1 fbcon
fbcon_rotate           16384  1 bitblit
fbcon_ccw              16384  1 fbcon_rotate
fbcon_ud               20480  1 fbcon_rotate
fbcon_cw               16384  1 fbcon_rotate
softcursor             16384  4 fbcon_ud,fbcon_cw,fbcon_ccw,bitblit
cfbfillrect            16384  1 drm_kms_helper
cfbimgblt              16384  1 drm_kms_helper
fb_sys_fops            16384  1 drm_kms_helper
cfbcopyarea            16384  1 drm_kms_helper
fb                     65536  8 fbcon_ud,fbcon_cw,fbcon_ccw,bitblit,softcursor,i915,fbcon,drm_kms_helper
fbdev                  16384  2 fb,fbcon

Então, estava usando o console framebuffer (fbcon).

A próxima pergunta é por que eu não consigo fazer o módulo fbcon carregar mais (o que parece ser a razão pela qual nada está imprimindo na minha tela).

    
por 02.12.2017 / 23:18