Elektroda.pl
Elektroda.pl
X
PCBway
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Nowa wersja jądra Linuksa - 5.3 - właśnie udostępniona

ghost666 18 Wrz 2019 18:23 759 0
  • Nowa wersja jądra Linuksa - 5.3 - właśnie udostępniona
    Linus Torvalds, opiekun systemu operacyjnego Linuks, właśnie ogłosił informację o nowej wersji jądra (5.3) dla tego systemu operacyjnego.

    W poprzedniej wersji (5.2) system dodał do jądra oprogramowanie układowe dla procesorów DSP audio, nowy interfejs API do montowania pamięci dla bardziej złożonych scenariuszy, a także poprawę wydajności schedulera BFQ IO. System uzupełniono również o otwarte sterowniki dla Lima i Panfrost - procesorów GPU, znajdujących się w niektórych układach ARM.

    Nowa wersja systemu również przynosi ze sobą wiele dużych zmian. Dla wersji 5.3 główne zmiany to:

    * Obsługa procesorów graficznych AMD Navi - procesory graficzne AMD RX5700 dodane zostały do sterowników amdgpu z obsługą podstawowego sterownika do wyświetlania (DCN2) oraz aplikacji graficznch i obliczeniowych (GFX10), a także systemowego DMA (SDMA 5), dekodowania i kodowania multimediów (VCN2) oraz zarządzania energią.
    * Obsługa procesorów Zhaoxin x86 - architektura rodziny procesorów ZX jest kontynuacją projektu VIA Centaur Technology x86-64 Isaiah.
    * Obsługa Intel Speed ??Select - technologia zarządzania energią, która pozwala użytkownikom konfigurować serwery pod kątem przepustowości i wydajności poszczególnych rdzeni, umożliwiając priorytetyzację wydajności dla niektórych obciążeń działających na określonych rdzeniach, poświęcając wydajność innych rdzeni. Działa tylko na niektórych procesorach z rodziny Xeon.
    * Wsparcie dla 16 milionów nowych adresów IPv4 - zakres adresów IPv4 0.0.0.0/8 zostanie zaakceptowany przez Linuksa (mimo że nie jest jeszcze deklarowany jako taki w standardach) jako prawidłowy zakres adresów, co pozwala na dodanie do puli IPv4 16 milionów nowych adresów.
    * Dodano układ nadzoru IoT ACRN - hypervisor ACRN to elastyczny, lekki pakiet referencyjny, zbudowany z myślą o bezpieczeństwie w czasie rzeczywistym i zoptymalizowany pod kątem systemów wbudowanych o ograniczonych zasobach.

    System operacyjny Linuks jest bardzo często wykorzystywany w urządzeniach wbudowanych. Przyjrzyjmy się bliżej zmianom, jakie wprowadzono dla procesorów z rdzeniami/architekturami typowo stosowanymi w urządzeniach klasy embedded.

    Zmiany dla architektury ARM

    Allwinner
    * A64 - LRADC i RGB LCD
    * A83T - interfejs kamery CSI
    * H6 - DMA i watchdog
    * wiele układów - Cedrus h264

    Rockchip
    * mfd ? dodano wsparcie dla RK809 i RK817
    * Sterownik zegara - różne porządki i optymalizacja w kodzie
    * Dodano plik dtsi RK3399Pro
    * Nowe płytki i urządzenia - Hugsun X99 TV Box (Rockchip RK3399), Khadas Edge/Edge-V/Captain (Rockchip RK3399)

    Amlogic
    * Dodano wsparcie dla Amlogic G12B (4x Cortex-A73 + 2x Cortex-A53)
    * Sterownik zegara - dodano zegary audio meson8, sensora temperatury G12a, oraz procesorów g12a i g12b
    * Linux-media - sterownik przemieszczania dla dekodera wideo Meson (na razie MPEG1 i MPEG2)
    * Drzewo urządzeń Armv8
    - dodano przerwania i linie resetu z Ethernet PHY
    - G12A: dodano wsparcie dla audio, PWM, IR, I?C, SD/eMMC, WiFi, Bluetooth, sieci
    - Płytka gxbb-vega-s95: naprawiono problemy z WiFi/BT, włączono więcej urządzeń peryferyjnych
    * Drzewo urządzenia z 32-bitowym ARM:
    - Aktualizacje SPDX
    - Przejście do ogólnych powiązań dla resetu Ethernet PHY
    - Dodano moduł canvas
    - Płyka MXIII-plus: dodano obsługę stabilizatorów
    * Nowe płyty - Hardkernel ODROID-N2 (Amlogic G12B)

    Samsung
    * Sterownik zegara
    - Dodanie zegarów wymaganych dla nowej sterownika kontrolera pamięci dynamicznej Exynos5422
    - Definicja zegara dla Exynos4412 Mali
    - Optymalizacja kodu w clk-exynos5433.c
    * Drzewo urządzeń ARM64
    - Dodano wsparcie dla Mali do Exynos5433 i Exynos7
    * Drzewo urządzeń
    - Uruchomiono ADC na płycie Odroid XU z Exynos5410
    - Naprawiono nieprecyzyjne przerywanie na Exynos4210, spowodowane przez nowo dodane węzły Mali,
    - Zreorganizowano węzły Mali w katalogu /soc,
    - Dostosowano napięcia stabilizatorów buck na Arndale Octa i Odroid XU3/XU4 do rozsądnych wartości

    Qualcomm
    * Pinctrl - Subdriver dla SDM845 i SM8150
    * PHY - Dodaj nowy sterownik PHY dla Qualcomm PCIe2 PHY
    * Aktualizacje ARM64 :
    - Przejście na PON drugiej generacji na PM8998
    - Dodano stany idle dla procesora w PSCI dla MSM8996, MSM8998 i SDM845
    - Dodano kontroler resetowania PHY MSM8996 UFS
    - Dodano właściwe skalowanie pojemności procesora na MSM8996
    - Poprawiono domeny APR, starszych zegarów i opóźnienia wejścia PSCI na MSM8996
    - Włączono SMMU na MSM8996
    - Dodano węzeł Q6V5, GPU, GMU i AOSS QMP do SDM845
    - Poprawiono topologię procesora na SDM845
    - Zmieniono USB1 na peryferyjny na SDM845 MTP
    - Dodano węzły PCIe PHY, RC, ANOC1 SMMU i RPMPD do MSM8998
    - Zaktualizowano powiązania coresight dla MSM8916
    - Zaktualizowano nazwy stanu bezczynności i metodę wprowadzania na MSM8916
    - Dodano stany procesora dla PCIe, RPMPD, LPASS, Q6, TCSR, TuringCC, PSCI, i CDSP na QCS404
    - Dodano właściwość reset-cells do węzła GCC QCS404
    - Poprawiono napięcie maksymalne s3, napięcie minimalne l3, literówka w sile sterowania wyjścia i definicji zasilania s3 w QCS404-evb
    - Poprawiono wyjścia ADC i kalibrację VADC na PMS40
    * Różne aktualizacje sterowników:
    - Dodano obsługę ACPI do Qualcomm GENI SE
    - Zaktualizowano wpis Qualcomm Maintainers, aby usunąć Davida Browna jako opiekuna i poprawiono literówki oraz nieprawidłowy wpis w pliku DT
    - Poprawiono identyfikator domeny APR i wykonywanie połączeń zwrotnych w kontekście nieatomowym
    - Dodano sterownik AOSS QMP (sterownik przesyłania komunikatów zawsze włączonego podsystemu) i powiązania
    - Dodaj domeny zasilania dla MSM8998 i QCS404 w QCOM RPMPD
    - Dodano makra narożne, obsługę maksymalnego stanu i poprawki do ustawiania stanu wydajności dla Qcom RPMPD
    * Zmiany w drzewie urządzeń
    - Dodano obsługę wyświetlania do MSM8974
    - Dodano obsługę wyświetlacza, podświetlenia i ekranu dotykowego do MSM8974 Hammerhead
    - Zaktualizowano wiązania coresight dla MSM8974 i APQ8064
    - Dodano obsługę silnika wibracji dla Fairphone 2 opartego na MSM8974
    * Defconfig - Dodano obsługę sieci USB i opcji związanych z wyświetlaniem
    * Dodano nowe płytki i urządzenia - Google Cheza Chromebook (Qualcomm SDM845), Qualcomm Dragonboard 845c (Qualcomm SDM845)

    MediaTek
    * Dodano Mediatek MT8183 (4x Cortex-A73 + 4x Cortex-A53)
    * Naprawiono wyciek pamięci w sterowniku DRM

    Inne platformy/SoC z rdzeniem ARM
    * Aspeed - obsługa BMC dla wielu nowych platform serwerowych
    * NXP - Kontron SMARC SoM (kilka wersji i.MX6), Noverkech Meerkat96 (i.MX7), Purism Librem5 devkit (i.MX8MQ)
    * STMicro - płytka Avenger96 (STM32MP1 Cortex-A7 / M4)
    * Texas Instruments - TI J721E (2x Cortex-A72 + 3x Cortex-R5F + 3 DSPs + MMA)

    Zmiany dla układów o architekturze MIPS dla Linuksa 5.3:

    * Usunięto readq i writeq dla jąder MIPS32 tam, gdzie by powodowały BUG(), pozwalając by sterowniki lub inny kod działał poprawnie.
    * Ulepszenia dla systemów Jgen JZ4740, w tym wsparcie dla zewnętrznych kontrolerów pamięci i poprawki przełączania pinów dla systemów qi_lb60/NanoNote
    * Ulepszenia systemów Lantiq, w szczególności w zakresie SMP i IPI.
    * Aktualizacje DT dla systemów Ralink/MediaTek MT7628a w celu umozliwienia sondowania i konfiguracji większej liczy urządzeń.
    * Optymalizacja kodu i poprawki w kompilacji.

    Zmiany dla układów z rdzeniem RISC-V w Linuksie 5.3:

    * Obsługa Hugepage
    * Obsługa nagłówka ?Image? dla plików binarnych jądra RISC-V, zgodnych z bieżącym nagłówkiem ?Image? ARM64
    * Początkowa konfiguracja tabeli stron jest teraz podzielona na dwa etapy
    * Obsługa CONFIG_SOC (zaczynając od SiFive SoCs)
    * Unikanie rezerwowania pamięci między początkiem pamięci RAM a wejściem jądra w setup_bootmem ()
    * Włączono liczniki wysokiej rozdzielczości i dynamiczne zaznaczanie w defconfig RV64
    * Usunięto przestarzałe odcinki obszaru bramy
    * Zaktualizowano sekcję MAINTAINERS, aby przejść do nowo utworzonego współdzielonego repozytorium git dla i naprawić problem z get_maintainers.pl dla poprawek obejmujących Adresy e-mail SiFive
    * Dodano obsługę nowego wywołania systemowego clone3 dla RV64, w zależności od
    ogólnego wsparcie
    * Dodano dane DT dla kontrolera Gigabit Ethernet na SiFive FU540 i płycie HiFive Unleashed
    * Zaktualizowano MAINTAINERS, aby dodać Paula Walmsleya do listy opiekunów arch/riscv
    * Dodano obsługę przerwań sygnalizowanych komunikatami PCIe, ponownie wykorzystując ogólny plik nagłówka

    Jak widać wiele z poprawek dotyczy niezwykle popularnych układów ? od SoCów, wykorzystywanych w wielu urządzeniach wbudowanych i mobilnych poprzez procesory aplikacyjne, a na mikrokontrolerach skończywszy.

    Dokładniejsze informacje na temat zmian w Linuksie 5.3 znaleźć można w changelogu systemu operacyjnego, dostępnym w linku poniżej.

    Czy w nowej wersji jest jakaś poprawka na którą czekaliście? A może Wasz kod został włączony do głównej gałęzi jądra? Zapraszam do wypowiedzi.

    Źródła:
    https://www.cnx-software.com/2019/09/16/linux-5-3-release-main-changes-arm-mips-risc-v-architectures/
    https://www.cnx-software.com/html/Linux-5.3-Changelog.txt

    Fajne! Ranking DIY
    O autorze
    ghost666
    Tłumacz Redaktor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    ghost666 napisał 9427 postów o ocenie 7105, pomógł 157 razy. Mieszka w mieście Warszawa. Jest z nami od 2003 roku.
  • PCBway