2.1. Hardware Suportado

Debian não impõe requisitos de hardware para além do que é requerido pelo kernel Linux ou pelo kernel kFreeBSD e pelas ferramentas GNU. Por isso qualquer arquitectura ou plataforma para a qual tenha sido portado o kernel Linux ou kFreeBSD, libc, gcc, etc. e para a qual exista um port de Debian, poderá correr Debian. Para mais detalhes sobre sistemas com a arquitectura 64-bit ARM que tenham sido testados com Debian GNU/Linux, por favor, veja as páginas dos Ports em https://www.debian.org/ports/arm/.

Em vez de tentar descrever todas a configurações de hardware que são suportadas por 64-bit ARM , esta secção contém informação geral e indicações de onde se pode encontrar informação adicional.

2.1.1. Arquitecturas Suportadas

Debian GNU/Linux 10 suporta dez arquitecturas de maior relevo e várias variações de cada arquitectura conhecidas por flavors.

Arquitectura Designação Debian Sub-arquitectura Flavor
Baseado em Intel x86 i386 máquinas x86 por defeito por defeito
apenas domínios Xen PV xen
AMD64 & Intel 64 amd64    
ARM armel Marvell Kirkwood e Orion marvell
ARM com FPU em hardware armhf multi-plataforma armmp
ARM 64bit arm64    
MIPS 32bit (big endian) mips MIPS Malta 4kc-malta
Cavium Octeon octeon
MIPS 64bit (little endian) mips64el MIPS Malta 5kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
MIPS 32bit (little endian) mipsel MIPS Malta 4kc-malta
Cavium Octeon octeon
Loongson 3 loongson-3
Power Systems ppc64el IBM POWER8 ou máquinas mais recentes  
IBM S/390 de 64bit s390x IPL a partir de VM-reader e DASD generic

Este documento cobre a instalação para a arquitectura 64-bit ARM utilizando o Linux. Se está à procura de informação acerca de qualquer uma das outras arquitecturas suportadas por Debian veja a página dos Debian-Ports.

Este é o primeiro lançamento oficial de Debian GNU/Linux para a arquitectura 64-bit ARM . Nós sentimos que já se provou o suficiente para ser lançado. No entanto, devido a não ter a exposição (e consequentemente o teste por utilizadores) que algumas outras arquitecturas tiveram, poderá encontrar alguns bugs. Utilize o nosso Sistema de Seguimento de Bugs para relatar quaisquer problemas; não se esqueça de mencionar o facto que o bug está presente na arquitectura 64-bit ARM utilizando o kernel Linux. Pode ser necessário usar também a mailing list debian-arm

2.1.2. Três ports ARM diferentes

A arquitectura ARM evoluiu ao longo do tempo e os processadores ARM modernos têm funcionalidades que não estão disponíveis nos modelos mais antigos. Por isso Debian disponibiliza três ports ARM para dar o melhor suporte a uma larga gama de máquinas diferentes:

  • Debian/armel dirige-se a processadores ARM de 32-bit mais antigos, sem suporte para hardware de unidade de vírgula flutuante (FPU).

  • Debian/armhf funciona apenas em processadores ARM de 32-bit que implementem pelo menos a arquitectura ARMv7 com a versão 3 da especificação de vector de vírgula flutuante ARM (VFPv3). Faz uso de funcionalidades estendidas e melhorias de performance disponíveis nesses modelos.

  • Debian/arm64 funciona em processadores ARM de 64-bit que implementem pelo menos a arquitectura ARMv8.

Tecnicamente, todos os actuais CPUs ARM disponíveis podem correr em qualquer modo endian (big ou little), mas na prática a vasta maioria utiliza o modo little-endian. Debian/armhf, Debian/armhf e Debian/armel suportam apenas sistemas little-endian.

2.1.3. Variações em designs de CPUs ARM e a complexidade de suporte

Os sistemas ARM são muito mais heterogéneos do que os baseados nas arquitecturas PC i386/amd64, por isso a situação de suporte pode ser muito mais complicada.

A arquitectura ARM é utilizada principalmente nos chamados systems-on-chip (SoCs). Estes SoCs são desenhados por muitas empresas diferentes, muitas vezes com vastos componentes de hardware diferentes mesmo para as funcionalidades básicas necessárias para arrancar o sistema. As versões mais antigas da arquitectura ARM têm visto diferenças massivas de um SoC para o próximo. No entanto, o ARMv8 (arm64) é muito mais standardizado e por isso é mais fácil de ser suportado pelo kernel Linux e por outro software.

As versões de servidor de hardware ARMv8 são configuradas tipicamente utilizando os standards Unified Extensible Firmware Interface (UEFI) e Advanced Configuration and Power Interface (ACPI). Estes dois disponibilizam formas comuns e independentes dos dispositivos de arrancar e configurar o hardware do computador. Estas são também usuais no mundo dos PCs x86.

2.1.4. Plataformas suportadas por Debian/arm64

O hardware Arm64/AArch64/ARMv8 tornou-se disponível bastante tarde no ciclo de lançamento da Debian Buster por isso não muitas plataformas tiverem o suporte fundido na versão do kernel oficial deste lançamento; este é o principal requisito para ter o debian-installer a funcionar nestes. As seguintes plataformas são conhecidas por serem suportadas por Debian/arm64 neste lançamento. Existe apenas uma única imagem de kernel, a qual suporta as plataformas listadas.

Applied Micro (APM) Mustang/X-Gene

O APM Mustang foi o primeiro sistema ARMv8 disponível capaz de Linux. Utiliza o SoC X-gene, o qual também já é utilizado noutras máquinas. Tem um CPU de 8 cores, com ethernet, USB e série. É um fator de forma comum tal como a caixa do desktop PC, mas no futuro são esperadas muitas outras versões. A maioria do hardware é suportada no kernel original, mas nesta altura falta o suporte USB no kernel Buster.

ARM Juno Development Platform

Juno é uma placa de desenvolvimento com CPU de 6-core (2xA57, 4xA53) ARMv8-A 800Mhz, gráficos Mali (T624), 8GB DDR3 RAM, Ethernet, USB e série. Foi desenhada para desenvolvimento de sistemas e testes avançados por isso não é nem pequena nem barata, mas foi uma das primeiras placas disponíveis. Todo o hardware da placa é suportado no kernel oficial e em Buster.

Ao utilizar o debian-installer em sistemas que não sejam UEFI, tem de manualmente fazer com que o sistema arranque no final da instalação, e.g. ao correr os comandos necessários na shell iniciada a partir do debian-installer. O flash-kernel sabe como configurar o sistema X-Gene para arrancar com U-Boot.

2.1.4.1. Outras plataformas

O suporte multi-plataforma no kernel Linux arm64 pode também permitir correr o debian-installer em sistemas arm64 não explicitamente listados acima. Por isso desde que o kernel utilizado pelo debian-installer tenha suporte para os componentes dos sistemas a que se destina e que esteja disponível um ficheiro device-tree para esse alvo, então um novo sistema alvo poderá trabalhar correctamente. Nesses casos, o instalador pode normalmente fornecer uma instalação funcional, e desde que o UEFI esteja em uso, deve ser capaz de tornar também o sistema iniciável. Se não for utilizado UEFI poderá necessitar também de alguns passos manuais para tornar o sistema iniciável.

2.1.5. Múltiplos Processadores

O suporte a multi-processador — também chamado de multiprocessamento simétrico ou SMP — está disponível para esta arquitectura. Ter vários processadores num computador era originalmente um tópico para sistemas servidor topo de gama mas nos últimos anos tornaram-se vulgares com a introdução dos chamados processadores multi-core. Estes contêm duas ou mais unidades de processamento, chamadas de cores, num único chip.

A imagem standard de kernel de Debian 10 foi compilada com suporte para SMP. Também é utilizável, sem qualquer problema, em sistemas não-SMP.

2.1.6. Suporte de Hardware Gráfico

O suporte para interfaces gráficos de Debian é determinado pelo suporte encontrado no sistema X11 do X.Org e do kernel. São disponibilizados pelo kernel gráficos básicos de framebuffer, enquanto que os ambientes gráficos utilizam o X11. A disponibilidade das funcionalidades avançadas da placa gráfica tal como aceleração 3D por hardware ou vídeo acelerado por hardware, depende do próprio hardware gráfico utilizado no sistema e em alguns casos da instalação de firmware adicional (veja Secção 2.2, “Dispositivos que Necessitam de Firmware”).

Quase todas as máquinas ARM têm hardware gráfico embutido, em vez de uma placa de encaixar. Algumas máquinas têm slots de expansão que podem tomar uma placa gráfica, mas é uma raridade. O hardware desenhado para ser headless sem quaisquer gráficos é comum. Enquanto que o vídeo de framebuffer básico disponibilizado pelo kernel deve funcionar em todos os dispositivos que tenham gráficos, os gráficos 3D invariavelmente necessitam de drivers binários para funcionar. Esta situação está a mudar rapidamente mas na altura do lançamento buster estão disponíveis neste lançamento drivers livres noveau (Nvidia Tegra K1 SoC) e freedreno (Qualcomm Snapdragon SoCs). Outro hardware necessita de drivers não livres de terceiros.

Detalhes de hardware gráfico e dispositivos apontadores suportados podem ser encontrados em https://wiki.freedesktop.org/xorg/. Debian 10 é lançado com X.Org versão 7.7.

2.1.7. Hardware Para Ligação em Rede

Quase todas as placas de rede (NIC) suportadas pelo kernel Linux devem também ser suportadas pelo sistema de instalação; os controladores devem ser carregados automaticamente.

Em 64-bit ARM é suportada a maioria dos dispositivos Ethernet embutidos e são disponibilizados módulos para dispositivos adicionais PCI e USB.

2.1.8. Periféricos e Outro Hardware

Linux suporta uma grande variedade de dispositivos de hardware tais como ratos, impressoras, scanners, dispositivos PCMCIA/CardBus/ExpressCard e USB. No entanto a maioria destes dispositivos não são necessários durante a instalação do sistema.