Version Linux 6.0 – Principales modifications, architectures Arm, RISC-V et MIPS

Version Linux 6.0 - Principales modifications, architectures Arm, RISC-V et MIPS

Linux 6.0 vient d’être publié par Linus Torvalds :

Donc, comme nous l’espérons clair pour tout le monde, le changement majeur de numéro de version concerne davantage le fait que je manque de doigts et d’orteils que de grands changements fondamentaux.

Mais bien sûr, il y a beaucoup de changements divers dans la 6.0 – nous avons au total plus de 15 000 commits sans fusion, après tout, et en tant que tel, la 6.0 est l’une des plus grosses versions au moins en nombre de commits depuis un certain temps.

Le petit journal des changements ci-dessous ne concerne que la dernière semaine depuis la 6.0-rc7. Un peu de tout, bien que le diffstat soit dominé par drm (principalement le support des nouvelles puces amd) et les pilotes réseau.

Et cela signifie évidemment que demain j’ouvrirai la fenêtre de fusion pour la 6.1. Ce qui, contrairement à 6.0, contient un certain nombre de nouveautés assez essentielles. Mais pour l’instant, s’il vous plaît, donnez un coup d’œil à cette version la plus récente du noyau,

Linus

La version précédente de Linux 5.19 nous apportait la prise en charge de BIG TCP pour les réseaux à haut débit (100 Gbps +), les mécanismes Secure Nested Paging d’AMD et les extensions de domaine de confiance d’Intel, l’architecture de processeur Loongson « LoongArch » et supprimait complètement le format exécutable a.out sur x86 , parmi de nombreux autres changements.

Version Linux 6.0

Il n’y a pas de nouvelles fonctionnalités révolutionnaires dans Linux 6.0, mais certains des changements notables incluent :

  • Meilleure utilisation de l’énergie avec la suppression de l’heuristique de marge énergétique qui limitait la migration des processus entre les processeurs
  • D’autres travaux ont été effectués sur les architectures OpenRISC et LoongArch, les deux ayant pris en charge les bus PCI.
  • La version 2 du protocole « d’envoi » Btrfs a été ajoutée avec la prise en charge de l’envoi de données en gros morceaux, l’envoi d’étendues compressées brutes et l’inclusion de plus de métadonnées.
  • L’API de l’espace utilisateur H.265/HEVC est maintenant déclarée stable.

Armer les mises à jour sous Linux 6.0

  • L’architecture Arm64 peut désormais échanger d’énormes pages transparentes sans qu’il soit nécessaire de les diviser en pages de base au préalable. Cette fonctionnalité est incompatible avec l’extension de marquage de mémoire.
  • Tout gagnant
    • Allwinner A31 – Ajout de la prise en charge du contrôleur MIPI-DSI
    • Allwinner H6 – Prise en charge du GPU DFS
    • Allwinner H616 – Assistance préliminaire
    • Allwinner R329 – Ajout de la prise en charge de RTC
    • Defconfig – Activer les codecs audio analogiques
    • Nouvelles cartes et appareils – Orange Pi Zero2 SBC, décodeur X96 Mate
  • Éclat de roche
    • Pilote MMC – Ajout de la prise en charge des variantes Rockchip RV1126 et RK3588
    • Arborescence des appareils
      • Activer le noyau GPU sur le Rockchip RK3568 BananaPi R2 Pro
      • Activez le contrôleur I2S0 et le nœud hdmi-sound sur le Rockchip RK3568 EVB1
      • Ajouter la série Rockchip RK3588
    • Nouveaux appareils et cartes
  • Amlogique
    • Pilote PHY – Amlogic G12A Pilote analogique MIPI D-PHY
    • DRM – Prend en charge la sortie YUV422 du VPU Amlogic Meson SoC vers le contrôleur HDMI.
    • Changement ARM DT – Ajuster les espaces autour de ‘=’ dans ARM meson DT
    • Changements ARM64 DT pour Linux 6.0 :
      • Ajouter un nœud de contrôleur de réinitialisation pour le SoC Meson-S4
      • Corriger les propriétés des clés gpio
      • Aligner les noms de nœud gpio-key avec dtschema
      • Ajouter le contrôle gpio-fan à GS King X
  • Samsung
    • Pilote de contrôleur Exynos PCIe – Correction du pilote phy-exynos-pcie afin qu’il suive le modèle de programmation PHY ‘phy_init() avant phy_power_on()’ (Marek Szyprowski)
    • PHY – Samsung FSD ufs phy
    • Pilote SPI – Ajout de la prise en charge dans Samsung Exynos Auto v9 et 4210
    • Changements DTS ARM pour Linux 6.0
      • Ajoutez un panneau d’affichage et un rétroéclairage à la famille P4 Note (Samsung Galaxy Note 10.1).
      • Nettoyage DTS : espaces blancs, noms de nœuds, couleur/fonction LED.
      • Passez à l’en-tête DTS-local pour les valeurs de registre pinctrl au lieu de l’en-tête de liaisons. L’en-tête des liaisons est obsolète car il ne reflète pas l’objectif des liaisons.
      • Nettoyages : alignez les noms de nœud SDHCI.
      • Liaisons DT : documentez le schéma de nommage compatible préféré.
    • Changements DTS ARM64
      • Ajoutez le cache CPU, UFS à Tesla FSD.
      • Ajoutez le mode de redémarrage (démarrez en mode chargeur de démarrage spécifique) à ExynosAutov9.
      • Ajoutez des chiens de garde à ExynosAutov9.
      • Ajoutez eMMC à Exynos7885 JackpotLTE (Samsung Galaxy A8).
      • Nettoyage DTS – espaces blancs, noms de nœuds, couleur/fonction LED.
      • Passez à l’en-tête DTS-local pour les valeurs de registre pinctrl au lieu de l’en-tête de liaisons. L’en-tête des liaisons est obsolète car il ne reflète pas l’objectif des liaisons.
      • Ajoutez plus d’appareils USI (I2C/SPI/UART) à ExynosAutov9.
  • Qualcomm
    • Ajout de Qualcomm Snapdragon 8cx Gen3 (SC8280XP) et de sa variante automobile, le SA8540P.
    • Qualcomm MSM8909 (Snapdragon 210) est ajouté à divers pilotes
    • Pinctrl
      • Ajout de nouveaux pilotes pour Qualcomm MSM8909, PM8226, PMP8074 et SM6375
      • Gestion du multiplexage d’horloge Qualcomm SC7280 ADSP, Qualcomm MSM8916 CAMSS GP
    • ASoC – Ajout de la prise en charge de Qualcomm SDM845, WCD9335 et WAS883x
    • Pilote de contrôleur PCIe :
      • Horloge de reprise, réinitialisation, ordre de mise sous tension PHY pour éviter les blocages et améliorer la cohérence
      • Déplacer la gestion pipe_clk vers les pilotes PHY
      • Ajouter la prise en charge IPQ60xx
      • Autoriser ASPM L1 et les sous-états pour 2.7.0
      • Ajout de la prise en charge de plus de 32 interruptions MSI
    • PHY – Prise en charge Qualcomm IPQ8074 PCIe Gen3 PHY
    • Horloge – Ajout de la prise en charge du contrôleur d’horloge de caméra dans Qualcomm SM8450 et des contrôleurs d’affichage et d’horloge GPU dans Qualcomm SM8350
    • Mises à jour ARM64 DT :
      • DB845c (SDM845) prend en charge le deuxième contrôleur GPI DMA et a les instances GENI I2C et SPI câblées à leur contrôleur GPI DMA respectif.
      • QCS404 – Le contrôleur USB et l’affectation PHY sont corrigés
      • IPQ8074 gagne la définition APCS pour gérer les interruptions IPC sortantes.
      • Une série de problèmes de validation Devicetree sont résolus
    • Mises à jour Arm64 DT pour Linux 6.0 :
      • IPQ8074 gagne le support GDSC. La ligne de réinitialisation SDHCI a été définie pour mettre les périphériques de stockage dans un état connu.
      • Les fournisseurs d’interconnexion MSM8996, la deuxième interface DSI, les réinitialisations pour SDHCI sont introduits.
      • Les définitions de gain des Dragonboard 820c, DB845c et SHIFT 6mq pour leurs LED.
      • MSM8998 – Divers correctifs de nettoyage, le FxTec Pro1 est séparé de l’utilisation des appareils MTP dts et Sony Xperia sur la plate-forme « Yoshino » gagne le capteur ToF.
      • Carte Herobrine basée sur SC7280 – DisplayPort est activé, la fréquence d’horloge flash SPI est modifiée, le WiFi est activé et le chemin du micrologiciel du modem est mis à jour. Les cartes Villager bénéficient d’un écran tactile et d’un rétroéclairage du clavier.
      • Petit correctif sur les SDM630 et SDM660
      • SDM845 – Ajout d’un moniteur de bande passante pour le sous-système CPU, les états inactifs du CPU et du cluster sont basculés vers les états hiérarchiques OSI.
      • La configuration DLL/DDR pour les nœuds SDHCI est définie pour le SM6125.
      • SM8250 – Les tableaux de pages par processus GPU sont activés et pour RB5, les LED basées sur le générateur d’impulsions lumineuses sont ajoutées.
      • Le contrôleur d’horloge d’affichage est introduit pour le SM8350.
      • SM8450 – Ajout du contrôleur d’horloge de la caméra et de l’UART généralement utilisé pour Bluetooth. Le chemin d’interconnexion pour le moteur de chiffrement est ajouté au nœud SCM, pour s’assurer qu’il est correctement cadencé.
      • La fréquence d’horloge attribuée au processeur d’affichage est supprimée de plusieurs plates-formes, maintenant que le pilote déduit le min et le max de l’horloge.
      • Large gamme de correctifs pour les problèmes stylistiques et les problèmes découverts grâce à la validation de liaison Devicetree sur de nombreuses plates-formes et cartes
    • Mises à jour de déconfiguration
      • Activer le moniteur de bande passante Qualcomm
      • Activer les pilotes d’interconnexion qcom
      • Activer qcom ss & hs USB phy
      • Activer le pilote de LED Qualcomm LPG
      • Activer les fournisseurs Qualcomm SC8280XP
      • Rétrograder les PHY USB Qualcomm en modules
    • Nouveaux appareils et cartes
      • Ordinateur portable Lenovo Thinkpad X13s avec Snapdragon 8cx Gen3
      • Quelques machines basées sur SC7180, dont le Lenovo IdeaPad Chromebook Duet 3
      • Téléphones Xiaomi Mi Mix2s, LG G7 et LG V35 basés sur Qualcomm SDM845 et Xiaomi Mi 5s Plus basés sur MSM8996.
      • En vigueur IFC6560 SBC (Qualcomm SDM660)
  • MediaTek
    • IOMMU – refactorisation et prise en charge de TTBR jusqu’à 35 bits
    • MFD – Régulateur, RTC et clés ajoutés dans MediaTek MT6357 PMIC utilisé avec MT6331 et MT6332
    • Pilote de contrôleur PCIe – Ajoutez Airoha EN7532 à la liaison DT, permettant la construction du pilote pour ARCH_AIROHA
    • Pilote de contrôleur PCIe Gen3 – Imprimer l’état LTSSM décodé lorsque le lien n’est pas établi
    • Pilote d’horloge – Ajoutez la prise en charge de la réinitialisation à plus de pilotes ; nettoyages
    • Ethernet – Ajouter la prise en charge de XDP
    • Pilote SPI – Ajout de la prise en charge dans MediaTek MT8188 et MT8365
    • GDN
      • Ajouter la prise en charge de Mediatek Soc DRM (vdosys0 et vdosys1) pour MT8195
      • Coopérer avec les appareils DSI RX pour modifier les fonctions DSI et retarder MIPI haut pour coopérer avec la séquence du panneau
      • Ajoutez MT8186 compatible DSI et convertissez dsi_dtbinding en .yaml
      • Ajouter le pilote MT8195 dp_intf
    • Nouveaux appareils – Acer Chromebook 514 (MT8192), Acer Chromebook Spin 513 (MT8195)
  • Autres nouvelles plates-formes matérielles Arm et SoC
    • Broadcom
      • SoC haut débit ajoutés : BCM63178, BCM63158, BCM4912, BCM6858, BCM6878, BCM6846, BCM63146, BCM6856, BCM6855, BCM6756, BCM63148 et BCM6813. Chaque SoC est également livré avec une carte de référence correspondante.
      • Le routeur Asus GT-AX6000 et le point d’accès Cisco Meraki MR26
    • Intel – Carte FPGA Google Chameleon v3 basée sur la plate-forme virtuelle logicielle Intel Arria10 et Stratix 10, toutes deux dans la plate-forme SoCFPGA.
    • NXP
      • SoC i.MX93 avec cœurs Cortex-A55 et NPU Ethos-U65.
      • Plusieurs cartes Toradex Colibri utilisant les supports « Iris » et « Ixora », DH electronics i.MX8M Plus DHCOM et PDK2, TQ-Systems TQMa8MPQL et phytech phyBOARD-Polis-i.MX8MM.
    • Marvell – Puce de commutateur réseau Prestera 98DX2530 (AlleyCat5) de la famille Armada SoC basée sur le cœur Cortex-A55.
    • Microchip – Carte de développement PCB8309 (Microchip lan966x)
    • STMicro – Carte de développement compacte DH DRC alimentée par STM32MP1

Changements RISC-V dans Linux 6.0

Voici quelques-uns des principaux changements apportés à l’architecture RISC-V

  • L’architecture RISC-V prend désormais en charge l’extension « Zicbom », qui permet la gestion des appareils avec DMA non cohérent avec le cache.
  • L’activation du FPU est maintenant un static_key
  • Améliorations de la prise en charge de Svpbmt
  • Liaisons de topologie CPU pour une poignée de systèmes
  • Prise en charge des systèmes avec ID hart 64 bits
  • De nombreux paramètres ont été activés dans le defconfig, y compris la prise en charge des systèmes StarFive et de nombreuses exigences Docker
  • Allwinner D1 – Ajout d’un écran LCD RVB, I2C, Pinctrl, RTC, minuteries, USB
  • Renesas – RZ / Five SoC obtient des pilotes pour les horloges, IRQ,
  • SiFive
    • IRQ – Optimisation de Hotpath pour SiFive PLIC
    • Pilote PWM ajouté

Mises à jour MIPS

Il y a encore une activité pour MIPS, bien que limitée

  • Ajout de la prise en charge de Netgear WNR3500L v2
  • Suppression de la prise en charge du SoC VR41xx et des plates-formes basées sur celui-ci
  • Nettoyages et correctifs

Pour plus de détails, vous pouvez consulter le journal des modifications de Linux 6.0 avec les messages de validation uniquement, généré avec la commande git log v5.19..v6.0-rc7 --stat. Un journal des modifications plus lisible devrait également être trouvé sur le site Web de KernelNewbies sur le site Web est mis à jour.