Представлен Linux 4.9 – основные изменения, ARM и MIPS архитектуры

Линус Торвальдс представил Linux 4.9:

Итак Linux 4.9 закончен и слияние окна осталось открытым для 4.10.

С дополнительной неделей слияние окна было бы технически завершено в версии 4.9 на рождество, время не очень удобное для этого. Но это чистая формальность, так как я не хотел дальше тянуть, тем более из-за рождества дата окончания скорее всего сдвинулась бы.

Я мог бы расширить слияние окна, точнее разделить его на короткие части, но я не стал этого делать. Я подозреваю, что всем нам нужен спокойный рождественский отдых, так что если ваш товар еще не готов к миграции,лучшим решениям для вас будет подождать версию 4.11.

В любом случае, давайте вернемся к 4.9.

Я уверен, что это самый большой релиз, который мы имеем, по крайней мере по числу “коммитов”. Если смотреть на число измененных строк, у нас уже были большие релизы в прошлом, но они, как правило связаны с решением конкретных проблем (например v4.2 имеет много строк относительно регистрации файлов определения графического процессора AMD и мы были вынуждены сделать много реорганизаций, что привело к большому количеству строк, v3.2 была большой из-за инсценировки, v3.7 имел автоматический uapi заголовок дизинтеграции файла и т.д.). В отличии от остальных 4.9 просто большая.

Правда часть кода занимает новая поддержка greybus, но это не самая большая часть – это всего лишь еще одна маленькая деталь в общей картине “да, v4.9 большая”.

Кроме размера версия 4.9 выглядит нормально. Чуть более двух третей кода занимают драйвера (инсценировка, графический процессор и сетевые адаптеры – это основная масса, но не все конечно), остальное выглядит тоже вполне нормально: архив обновлений, документация, общая сеть, файловая система…

Краткий журнал (16k+ коммитов, совмещенных с другими 1100 коммитами) получился очень большой.

Linux 4.8 принес нам HDMI-CEC структуру, новое ядро документации системы на данный момент базирующееся на Sphinx, пользовательское пространство GPIO подсистема и инструменты, улучшения файловых систем и многое другое.

Некоторые из наиболее заметных изменений Linux 4.9 включают в себя:

  • Промежуточная поддержка greybus. В то время как проект Ara был отменен, код до сих пор используется в одном из телефонов Motorola, также он необходим для чипа Toshiba, а также для других неизвестных пользователей.
  • Доработка файловых систем для CIFS (исправлены ошибки, параметр монтирования ids из sid, улучшено повторное обращение), BTRFS (исправлены ошибки), NFS (исправлены ошибки и новые возможности такие, как серверное копирование), F2FS (исправлены ошибки и улучшения производительности), EXT-4 (“Множество ошибок исправлены и почищены”) и XFS (iomap на базе инфраструктуры DAX и доработан XFS delalloc, исправлены ошибки).
  • Улучшена безопасность с практически сопоставленными стеками ядра и ключи защиты памяти.
  • AMDGPU теперь поддерживает старые графические карты Radeon, поддержка виртуального дисплея и улучшенный сброс.

Некоторые исправления и новый функции ARM архитектуры:

  • Allwinner:
    • Allwinner GR8 – Предварительная поддержка сокета
    • Allwinner AXP209 PMIC – Поддержка GPIO
    • Allwinner A31 – Поддержка SPDIF
    • Allwinner A23/A33 и A31/A31s – Драйвер sunxi-ng CCU
    • Allwinner A33 – Драйвер дисплея
    • Allwinner A64 – Поддержка USB PHY
    • Allwinner H3 – Поддержка PWM, поддержка I2C
    • AXP806 PMIC – Поддержка регулятора
    • AC100 RTC / codec IC – Драйвер mfd, драйвер RTC
    • Новые платы и устройства – Orange Pi PC Plus, Olimex A33-OLinuXino, Orange Pi Lite, Inet q972, Empire Electronix M712, Orange Pi Plus 2, Orange Pi Plus 2E, NanoPi NEO.
  • Rockchip:
    • PCI – Обновление ведущего моста Rockchip rk3399, драйвер DTS и сброс
    • Rockchip RK808 PMIC драйвер
    • Драйвера твиков Rockchip DDR clks и rk3399
    • Драйвер phy для Rockchip usb2phy, встроенный PCIe PHY и USB Type-C PHY на rk3399
    • Обновление совместимости строк для Rockchip efuse (RK3399)
    • Поддержка для Tronsmart Orion R86 бокса (RK3368), эталонная плата Rockchip RK3288 Fennec, платформа Firefly RK3288 Reload
  • Amlogic
    • Изменения сети, часов и usb драйвера для meson-gxbb (S905)
    • Монитор безопасности прошивки для сокетов Amlogic и NVMEM драйвер для EFUSE на базе прошивки этого интерфейса
    • Изменения Amlogic 64-bit DT: добавлен хост USB, I2C, контроллер SPI флеш, PWM, почтовый ящик, MHU, pinctrl: добавлены контакты для SPI, I2C, SDIO
    • Обновления поддержки ИК для новых сокетов
    • Сеть: новый драйвер stmmac glue
  • Samsung
    • Добавлен драйвер Samsung Exynos Low Power Audio (LPASS = Low Power Audio SubSystem)
    • Обновление драйвера samsung clk: подсистема звука связанная с часами, добавление DRAM контроллера связанного с часами для exynos5420
    • Дерево обновления устройства
      • Включен HDMI на плате Arndale Octa.
      • Список обновления часов для FIMC-IS блок на Exynos4x12.
      • Удалено предупреждение компилятора skeleton.dtsi to fix DT.
      • Очистка DT файлов
      • Позволяет скомпилировать тестовый драйвер exynos-mct clocksource на ARM64.
      • Документ совместимости Exynos5433 PMU
      • Выбор набора последовательного битрейта который обеспечивает правильный последовательный вывод, когда загрузчик передает все данные в командной строке
  • Qualcomm
    • Исправлена ошибка одновременного воспроизведения и захвата для ASoC
    • Добавлен интерфейс внешней шины 2 (EBI2) Qualcomm, используемый в чипах некоторых мобильных телефонов для соединения флеш памяти, LCD дисплея или прочей периферии
    • Добавлены драйвера skeletal TSENS для MSM8916/MSM8996. TSENS это тепловой датчик температуры устройства Qualcomm
    • Добавлена поддержка дисплея MSM8916/APQ8016
    • Обновления для MSM8916 включая TSCR, SMSM/SMP2P и резерв MBA
    • Включен параметр defconfig для QDF2432
    • Добавлен одноплатный компьютер Qualcomm DragonBoard 820c в форм факторе 96boards, LG Nexus 5 Phone
    • Дерево изменений устройства:
      • Переделан dr_mode на APQ8064 и Nexus7
      • Добавлен порт MSM8974 BLSP1 UART1
      • Добавлено сопоставление SATA AP148
      • Исправление MSM8660/MSM8064 SPMI/MPP IRQs
      • Добавлен Nexus7 IMEM/reboot reason
      • Добавлена поддержка сенсорного экрана Honami
      • Добавлена поддержка TSENS на MSM8974, APQ8064 и APQ8084
      • Добавлены светодиоды для APQ8060 Dragonboard PM8058
      • Переделан VPH PWR REG для MSM8974
  • Mediatek
    • Добавлен встроенный Mediatek драйвер для mt2701
    • Найден драйвер для mt6577 auxdac в mt2701, mt6577 и mt8173
    • Исправлены некоторые DRM драйвера
  • Прочие новые ARM аппаратные платформы или сокеты:
    • Платформа для разработки Marvell Armada 8040, роутер Netgear WNR854T, платформа сокета Armada 395, GP плата платформы для разработки Armada 390 DB
    • Сокет ZTE ZX296718 STB
    • ТВ сокет SocioNext UniPhier LD11
    • Эталонные платы Broadcom BCM958525er, BCM958522er, BCM988312hr, BCM958623hr и BCM958622hr для платформы Northstar, плата Raspberry Pi Zero
    • Эталонная плата NXP i.MX 7 Warp7, Gateworks Ventana GW553x SBC, Technologic Systems TS-4900 и компьютер на модуле Engicam IMX6UL GEA M6UL, плата Inverse Path USB armory
    • Платформы для разработки Renesas r8a7792/wheat и r7s72100/rskrza1
    • Одно-платный компьютер ST Microelectronics STi B2260 (96boards)
    • Комплект для разработки TI Davinci OMAP-L138 LCDK, одно-платный компьютер beagleboard-x15 rev B1

Так же в Linux 4.9 были внесены изрядные изменения MIPS, вот некоторые из них:

  • Различные обновления основного кода MIPS ядра – универсальная плата на базе DT & поддержка Flattened Image Trees (.itb), поддержка согласования каждого DMA устройства, исправления ошибок для KVM, uprobes, c-r4k, ptrace и прочее
  • Octeon – Удаление мертвого кода и файлов, изменение использование всей памяти на использование по умолчанию, добавлен DTS для D-Link DSR-500N и т.д…
  • Pistachio – Удален ANDROID_TIMED_OUTPUT для defconfig
  • TX39xx & TX49xx – Перемещена установка GPIO из .mem_setup() в .arch_init(), преобразование в Common Clock Framework
  • txx9wdt – Добавлены недостающие часы для CCF
  • BMIPS – Добавлены PW, GPIO SDHCI и NAND устройство узла имен, добавлены DT примеры для BCM63268, BCM3368 и BCM6362, добавлена поддержка для BCM3368 и BCM6362, и т.д…
  • Изменения кода для PCI, CPC, GIC, SMP, USB хост, cpuidle, fbdev, auxdisplay…
  • mt7620 – Удалены ненужные задания из поля “owner” из PCI
  • BCM63xx -Пусть clk_disable() возвращает немедленно, если clk является NULL
  • pm-cps – Изменен FSB обход черного списка CPU, использование MIPS стандарта для легкого направления барьера, окончание барьера и т.д…
  • SEAD3 – Переписано использование DT и общая характеристика ядра
  • Malta – Переписано использование DT
  • Loongson1C – Добавлена поддержка CPU для Loongson1C, добавлена поддержка плат, добавлен defconfig и добавлена поддержка RTC для платы Loongson1C

Полный лист изменений можно найти в журнале изменений Linux 4.9 только с комментариями, созданный с помощью git log v4.8..v4.9 --stat. Вы также найдете более удобочитаемый список изменений для Linux 4.9 на kernelnewbies.org.

Выражаем свою благодарность источнику с которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 votes
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Inline Feedbacks
View all comments