Driver OpenGL de código aberto da Intel adiciona suporte para "conteúdo protegido"

Driver OpenGL de código aberto da Intel adiciona suporte para "conteúdo protegido"
OpenGL faz 30 anos

O suporte a “conteúdo protegido” em conjunto com a extensão EGL_EXT_protected_content acaba de ser fundido no Mesa 22.3 para o driver Intel “Iris” Gallium3D. O EGL_EXT_protected_content permite criar contextos protegidos e, por sua vez, superfícies e EGLImages que são “protegidas” e só podem ser utilizadas em contextos protegidos. Portanto, o driver OpenGL de código aberto da Intel adiciona suporte para “conteúdo protegido”.

Isso pode ser usado para cenários como Gerenciamento de Direitos Digitais e outros cenários voltados à segurança. Até agora, o EGL_EXT_protected_content foi aproveitado principalmente por aplicativos Android e essa extensão EGL também foi iniciada por fornecedores de SoC móveis.

O conjunto de dez patches mesclados hoje fornece o suporte de conteúdo protegido para o driver Intel Iris Gallium3D, bem como o rastreador de estado Gallium3D necessário e as alterações de infraestrutura EGL.

Driver OpenGL de código aberto da Intel adiciona suporte para “conteúdo protegido”

A partir do driver do kernel, esse suporte a conteúdo protegido por Iris depende de I915_GEM_CREATE_EXT_PROTECTED_CONTENT. Por sua vez, isso depende do Protected Xe Path (PXP) encontrado com gráficos Intel Gen12 e mais recentes.

O Intel Protected Xe Path permite objetos protegidos/criptografados. Para aqueles preocupados com gerenciamento de direitos digitais e configurações “protegidas”, com algumas operações PXP envolvendo também o Intel Management Engine (ME), o suporte pode ser desabilitado no momento da compilação do kernel usando a opção Kconfig CONFIG_DRM_I915_PXP. O suporte Intel PXP foi mesclado de volta no Linux 5.16.

Com o Vulkan 1.1 também há suporte a conteúdo protegido, mas as mudanças atuais no espaço de usuário do Mesa são apenas sobre o suporte Iris Gallium3D (OpenGL) no momento.

Os interessados no suporte de conteúdo protegido podem saber mais por meio desta solicitação de mesclagem das quase mil linhas de novo código inserido no Mesa 22.3.

Este lote de atualizações de código para o driver de kernel Intel DRM no Linux 5.16 traz as seguintes alterações:

  • O Protected Xe Path (PXP) criptografado da Intel está finalmente chegando à linha principal. Intel PXP funciona com Gen12 e mais recente como uma sessão protegida por hardware para clientes em Xe Graphics com memória de vídeo criptografada e aproveitando um ambiente de execução confiável para proteger essas sessões de outros clientes. PXP no Linux está em andamentopor um tempo, mas agora está finalmente pronto para a linha principal no Linux 5.16. As alterações do Mesa para PXP estão pendentes e devem ser mescladas assim que os bits do kernel estiverem na linha principal.
  • A proteção force_probe Intel Alder Lake S (ADL-S) foi finalmente removida. Isso significa que os gráficos Alder Lake S serão habilitados por padrão no Linux 5.16. É um pouco surpreendente que a opção force_probe ainda não tenha sido removida para ADL-S, dado que o estado parece/parecia estar maduro no Linux 5.14~5.15, mas agora isso está acontecendo apenas no 5.16. Veremos se esta e quaisquer correções de ADL-S são portadas para séries estáveis anteriores ou para kernels de distribuição para melhorar a experiência pronta para uso dos gráficos Alder Lake, já que os chips iniciais serão enviados em breve. Caso contrário, os usuários precisarão usar a opção i915.force_probe para ver os gráficos Alder Lake S funcionando. Sem mais escondê-lo por trás dessa opção, este é o ponto em que os engenheiros do driver gráfico Intel Linux estão basicamente chamando o suporte de estável e pronto para uso.
  • Adição dos IDs PCI DG1 ao driver do kernel, mas ainda não vinculando os gráficos discretos Intel iniciais por padrão, a menos que use a opção de módulo i915.force_probe . O código DG1 também não está mais por trás da proteção de tempo de compilação da “memória local falsa”, seguindo muito código novo neste ciclo, estabilizando ainda mais as coisas.
  • Ativação de páginas enormes transparentes (THP) quando o IOMMU está ativado para compensar o impacto no desempenho causado pelo uso do IOMMU.
  • Atualização contínua do hardware Intel Xe HP e Xe HP SDV/DG2 Alchemist.
  • Várias alterações de código para tentar simplificar algumas áreas do driver e limpá-lo, mas “algumas regressões de desempenho são esperadas”.
  • Continuação do trabalho em torno da migração para submissão baseada em GuC e outros trabalhos relacionados a GuC/HuC. A base de código do GuC passou por um “grande retrabalho”.