mapeando linux / dev / fb0 para DDR para exibição

1

Eu quero escrever um driver linux que mapeie meu espaço de endereço de memória especificado para / dev / fb0.

o driver deve ser especificado por qual parte do linux? drm ou buffer de quadros ou servidor X ou alguma outra coisa? Quais propriedades devo ter no meu driver?

    
por Mojtaba Ahmadi 11.09.2018 / 07:34

1 resposta

2

O driver é um módulo do kernel do Linux.

Faça o download do código-fonte do kernel do Linux, dê uma olhada no código dos drivers de framebuffer existentes em drivers/video/fbdev (github aqui ) e a documentação em Documentation/fb ( github ). Google para tutoriais como escrever módulos do kernel, pratique com um módulo simples primeiro.

Apenas o mapeamento de memória não será suficiente, você precisará implementar alguns ioctl s.

Escrever drivers de kernel não é fácil. Se você tiver que fazer este tipo de perguntas (e você pediu muito nos últimos dias), você provavelmente não será capaz de fazer isso.

X é um servidor para o protocolo X. Ele pode usar hardware através dos módulos do kernel DRM e também pode usar hardware por meio de drivers framebuffer (com o driver fbdev X). Detalhes sobre isso são fáceis de encontrar on-line, google. /dev/fb0 é um dispositivo framebuffer, então você não precisa se preocupar com X ou DRM.

    
por 11.09.2018 / 07:53