User Tools

Site Tools


start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
start [2021/03/08 08:55]
narmstrong [TODO]
start [2021/10/11 15:51]
narmstrong [Work in Progress]
Line 13: Line 13:
 ===== How to Contribute ? ===== ===== How to Contribute ? =====
  
-  * Our IRC channel is **#linux-amlogic** on **Freenode**+  * Our IRC channel is **#linux-amlogic** on <del>**Freenode**</del> **[[https://Libera.Chat|Libera.Chat]]** (see [[https://lore.kernel.org/linux-amlogic/CAFBinCBuFzJVXFdDqpy9HgWt4AMMk_jeOWvQ-mYke2z274FXPQ@mail.gmail.com/|here]] for background)
   * [[http://lists.infradead.org/mailman/listinfo/linux-amlogic|Mailing list for Linux Development]]   * [[http://lists.infradead.org/mailman/listinfo/linux-amlogic|Mailing list for Linux Development]]
   * [[https://groups.io/g/u-boot-amlogic|Mailing list for U-Boot Development]]   * [[https://groups.io/g/u-boot-amlogic|Mailing list for U-Boot Development]]
 +  * Build & Use Linux (& see [[start#howto|How-To]])<code>
 +git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
 +make -C linux ARCH=arm64
 +</code>
 +  * Build & Use U-Boot (& see [[https://u-boot.readthedocs.io/en/latest/board/amlogic/index.html|U-boot Board documentation]])<code>
 +git clone https://source.denx.de/u-boot/u-boot.git
 +make -C u-boot my-board_defconfig
 +make -C u-boot
 +</code>
 +
  
 The Amlogic Upstream development looks for contributors, so don't hesitate to contact the other developers The Amlogic Upstream development looks for contributors, so don't hesitate to contact the other developers
Line 29: Line 39:
   * **Armbian** (https://www.armbian.com) Switched to mainline Linux for all of the Amlogic SoC support images   * **Armbian** (https://www.armbian.com) Switched to mainline Linux for all of the Amlogic SoC support images
   * **Generic ArchLinux ARM** (https://archlinuxarm.org/platforms/armv8/generic) Uses mainline defconfig, thus enabling Amlogic SoC support, but you will need to setup the boot yourself   * **Generic ArchLinux ARM** (https://archlinuxarm.org/platforms/armv8/generic) Uses mainline defconfig, thus enabling Amlogic SoC support, but you will need to setup the boot yourself
 +  * **EndeavourOS** (https://endeavouros.com/news/the-september-release-and-endeavouros-arm-arrived/) runs on the Odroid-N2(+)
 +  * **Home Assistant OS** has been optimized to run on Odroid-N2 (https://www.home-assistant.io/installation/odroid/)
   * **Debian Testing** (https://wiki.debian.org/DebianTesting) Uses a fairly recent Linux release with most of the needed Linux config options to run on Amlogic SoCs, you will be able to use EFI boot or you will need to setup the boot yourself   * **Debian Testing** (https://wiki.debian.org/DebianTesting) Uses a fairly recent Linux release with most of the needed Linux config options to run on Amlogic SoCs, you will be able to use EFI boot or you will need to setup the boot yourself
   * **openSUSE Tumbleweed** (https://en.opensuse.org/HCL:LibreTech-CC) Uses a fairly recent Linux release with most of the needed Linux config options to run on Amlogic SoCs, you will be able to use EFI boot or you will need to setup the boot yourself as described in the Wiki   * **openSUSE Tumbleweed** (https://en.opensuse.org/HCL:LibreTech-CC) Uses a fairly recent Linux release with most of the needed Linux config options to run on Amlogic SoCs, you will be able to use EFI boot or you will need to setup the boot yourself as described in the Wiki
Line 134: Line 146:
 ^ MHU/Mailbox        | N/A                | N/A         | N/A         | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | //WiP//     | //WiP//     | ^ MHU/Mailbox        | N/A                | N/A         | N/A         | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | //WiP//     | //WiP//     |
 ^ DVFS              | __No__             | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | ^ DVFS              | __No__             | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     |
-^ eMMC              | __No__             ''Partial'' ''Partial'' | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     |+^ eMMC              | __No__             **yes**     **yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     |
 ^ SDCard            | __No__             | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | N/A         | **Yes**     | **Yes**     | ^ SDCard            | __No__             | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | N/A         | **Yes**     | **Yes**     |
 ^ SDIO              | __No__             | ''Partial'' | ''Partial'' | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | ^ SDIO              | __No__             | ''Partial'' | ''Partial'' | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     | **Yes**     |
Line 162: Line 174:
  
 ===== Kernel mainlining progress ===== ===== Kernel mainlining progress =====
-v5.12 (work in progress)+v5.16 (work in progress) 
 +  * ARM64 DT 
 +    * New Boards (with bindings): 
 +      * Radxa Zero 
 +      * Jethub D1 & H1 home automation controllers 
 +    * Misc Changes: 
 +      * add Ethernet PHY reset line for ODROID-C4/HC4 
 +      * add audio playback nodes to rbox-pro 
 +      * Fix the pwm regulator supply properties 
 +      * meson-g12b-odroid-n2: add missing 5v regulator gpio 
 +  * SoC Drivers 
 +    * soc: amlogic: meson-gx-socinfo: Add the SOC ID for the S905Y2 used in the Radxa Zero 
 +    * soc: amlogic: meson-clk-measure/canvas: Make use of devm_platform_ioremap_resource() 
 + 
 +v5.15 (work in progress) 
 +  * ARM64 DT 
 +    * nanoki-k2: enable bluetooth 
 +    * khadas vim & vim2: improve wifi 
 +    * add audio to nodes vega-s95 
 +    * add audio to nodes nexbox-a1 
 +  * ARM DT 
 +    * meson8: use a default higher default GPU clock to solve probe failure 
 +    * meson: add AIU audio controller and codec for ec100 
 +    * meson8b: fix pwm regulator supply property name 
 +  * Misc 
 +    * Enable CONFIG_MMC_MESON_MX_SDHC controller used on meson8/8bEnable CONFIG_MMC_MESON_MX_SDHC controller used on meson8/8b 
 + 
 +v5.14 
 +  * ARM64 DT 
 +    * new boards: Banana Pi M5 
 +    * set 128bytes FIFO size on uart A 
 +    * meson-sm1: add toacodec node to use internal audio DAC 
 +    * enable hdmi audio loopback on VIM3 board 
 +    * various fixes for Odroid C4/HC4 regulators handling, USB and SPI NOR Flash for HC4 
 +  * ARM DT 
 +    * Set the fifo-size of uart_A to 128 bytes like the ARM64 counterpart 
 +  * ARM64 SoC Drivers 
 +    * meson-ee-pwrc: Rename "get_power" to "is_powered_off" 
 +  * Clocks 
 +    * Use determine_rate() for the pll ops instead of round_rate() 
 +    * Restrict gp0/1 and audio plls range on g12a/sm1 
 +    * Improve axg-audio controller error on deferral 
 +    * Add NNA clocks on g12a 
 + 
 +v5.13 (work in progress) 
 +  * ARM64 DT 
 +    * new boards: MeCool KII & KIII, Minix NEO U9-H 
 +    * used fixed index for MMC devices 
 +    * updates/cleanups for Hardkernel Odroid N2/N2+ 
 +  * drm/bridge: dw-hdmi: disable loading of DW-HDMI CEC sub-driver 
 +  * Audio FIFO Depth/IRQ fixes for G12A/G12B/SM1 
 + 
 +v5.12
   * Clock Changes   * Clock Changes
     * pll driver fixup     * pll driver fixup
Line 935: Line 999:
  
 ===== U-Boot mainlining progress ===== ===== U-Boot mainlining progress =====
 +v2022.01 (Work in progress):
 +  * Add new SoC ID for S905Y2 found in Radxa Zero
 +  * pcie_dw_meson: fix usb fail when pci link fails to go up
 +  * Sync Amlogic DT from Linux 5.14
 +  * dwc3-meson-gxl: add AXG compatible
 +  * dts: keep back HW order for MMC devices since change in Upstream Linux
 +  * Cleanup local AXG DT USB nodes now everything is upstream
 +  * distro_bootcmd: run pci enum for scsi_boot just like it is done for nvme_boot
 +  * New Boards:
 +    * Odroid-HC4: a variant of Odroid-C4 with 2 SATA ports (via PCIe-SATA bridge)
 +    * Beelink GS-King X: A variant of the other Beelink board with 2 SATA ports (via USB3-SATA bridge)
 +    * Banana Pi M5: another credit card SBC
 +    * JetHub D1/H1: home automation controllers
 +    * Radxa Zero: another RPi Zero sized SBC
 +
 +v2021.10:
 +  * Add SMBIOS info for Khadas VIM boards
 +  * Fix meson-axg-mipi PHY build
 +  * Fix VIM3 board phy-names property setup
 +  * Return correct value for non emmc boot sources on VIM3
 +  * add kernel compression vars
 +  * odroid-n2: fix fdtfile suffix for n2-plus
 +  * sei610 & meson64_android cleanups to prepare android 11 boot support
 +  * use Android BCB mechanism for reboot reason instead of HW reboot flag
 +  * Switch meson64_android boot flow to use abootimg for A/B, AVB and DTBO support
 +
 +v2021.07:
 +  * Add proper Ethernet glue to drop mach-meson code
 +  * Add proper MDIO mux driver to drop mach-meson code
 +  * Add support for PCIe for A113d/G12A/G12B/SM1
 +
 v2021.04: v2021.04:
 +  * **HDMI BROKEN on G12A/G12B/SM1** HDMI is broken, [[https://patchwork.ozlabs.org/project/uboot/patch/20210420084226.2996654-3-narmstrong@baylibre.com/|this patch]] must be applied to fix it
   * sync amlogic GX & AXG DT to Linux 5.10   * sync amlogic GX & AXG DT to Linux 5.10
   * Add new MESON_EE driver support for GXBB & AXG   * Add new MESON_EE driver support for GXBB & AXG
Line 948: Line 1044:
  
 v2021.01: v2021.01:
 +  * **HDMI BROKEN on G12A/G12B/SM1** HDMI is broken, [[https://patchwork.ozlabs.org/project/uboot/patch/20210420084226.2996654-3-narmstrong@baylibre.com/|this patch]] must be applied to fix it
   * Add PWM driver   * Add PWM driver
  
Line 1052: Line 1149:
 ^ DSI Output    | N/A       | N/A        | N/A        | //WiP//    | //WiP//    |//WiP//     | //WiP//    | ^ DSI Output    | N/A       | N/A        | N/A        | //WiP//    | //WiP//    |//WiP//     | //WiP//    |
 ^ SoC (version) information    | **Yes**   | **Yes**    | **Yes**    | **Yes**    | **Yes**    | **Yes**    | **Yes**    | ^ SoC (version) information    | **Yes**   | **Yes**    | **Yes**    | **Yes**    | **Yes**    | **Yes**    | **Yes**    |
 +^ PCIe | N/A       | N/A        | N/A        | **Yes**    | **Yes**    | **Yes**    | **Yes**    |
  
  
 ===== Work in Progress ===== ===== Work in Progress =====
   * DSI Output support for AXG   * DSI Output support for AXG
-  * Add proper Ethernet glue to drop mach-meson code 
-  * Add proper MDIO mux driver to drop mach-meson code 
-  * Add support for PCIe for A113d/G12A/G12B/SM1 
 ===== TODO ===== ===== TODO =====
   * Add support for changing rate of serial port (setbgr op)   * Add support for changing rate of serial port (setbgr op)
Line 1067: Line 1162:
 Our main source of information is the [[http://openlinux.amlogic.com:8000/download/ARM/|open source kernel code]]  and [[http://openlinux.amlogic.com:8000/deploy/|Linux SDK published by Amlogic]]. Our main source of information is the [[http://openlinux.amlogic.com:8000/download/ARM/|open source kernel code]]  and [[http://openlinux.amlogic.com:8000/deploy/|Linux SDK published by Amlogic]].
  
-[[http://dn.odroid.com/S805/Datasheet/S805_Datasheet%20V0.8%2020150126.pdf|partial S805 SoC manual]] and a [[http://dn.odroid.com/S905/DataSheet/S905_Public_Datasheet_V1.1.4.pdf|partial S905 SoC manual]] has been published by Hardkernel.\\ +SoC Manuals: 
-[[http://www.mediafire.com/file/5bpt054va5ut7v9/S905X_Datasheet_V0.3_20170314publicversion-Wesion.pdf|partial S905X SoC manual]] and a [[http://www.mediafire.com/file/aib1ibnoxsc4j1x/S912_Datasheet_V0.220170314publicversion-Wesion.pdf|partial S912 SoC manual]] manual have been published by [[http://docs.khadas.com/|Khadas (on their docs page)]] +  * [[http://dn.odroid.com/S805/Datasheet/S805_Datasheet%20V0.8%2020150126.pdf|S805 SoC DataSheet]]  
-[[https://dn.odroid.com/S922X/ODROID-N2/Datasheet/S922X_Public_Datasheet_V0.2.pdf|partial S922X SoC manual]] has been published by Hardkernel+  * [[http://dn.odroid.com/S905/DataSheet/S905_Public_Datasheet_V1.1.4.pdf|S905 SoC DataSheet]] has been published by Hardkernel 
 +  [[https://dl.khadas.com/Hardware/VIM1/Datasheet/S905X_Datasheet%20V0.3%2020170314publicversion-Wesion.pdf|S905X SoC DataSheet]]  have been published by [[http://docs.khadas.com/|Khadas (on their docs page)]] 
 +  * [[https://dl.khadas.com/Hardware/VIM2/Datasheet/S912_Datasheet_V0.220170314publicversion-Wesion.pdf|S912 SoC DataSheet]] have been published by [[http://docs.khadas.com/|Khadas (on their docs page)]] 
 +  * [[https://dl.khadas.com/Hardware/VIM3/Datasheet/S905D3_datasheet_0.2_Wesion.pdf|S905D3 SoC DataSheet]] manual have been published by [[http://docs.khadas.com/|Khadas (on their docs page)]] 
 +  * [[https://dl.khadas.com/Hardware/VIM3/Datasheet/A311D_Datasheet_01_Wesion.pdf|A311D SoC DataSheet]] manual have been published by [[http://docs.khadas.com/|Khadas (on their docs page)]] 
 +  * [[https://dn.odroid.com/S905X3/ODROID-C4/Docs/S905X3_Public_Datasheet_Hardkernel.pdf|S905X3 SoC DataSheet]] has been published by Hardkernel 
 +  * [[https://dn.odroid.com/S922X/ODROID-N2/Datasheet/S922X_Public_Datasheet_V0.2.pdf|S922X SoC DataSheet]] has been published by Hardkernel
  
 Based on the Amlogic kernel code, these git trees also contain some interesting developments: Based on the Amlogic kernel code, these git trees also contain some interesting developments:
Line 1078: Line 1179:
   * [[https://github.com/codesnake/linux|Wetek Play OpenELEC kernel]]   * [[https://github.com/codesnake/linux|Wetek Play OpenELEC kernel]]
   * [[https://github.com/khadas/linux|Khadas VIM kernel]] (contains some of Amlogic's git history)   * [[https://github.com/khadas/linux|Khadas VIM kernel]] (contains some of Amlogic's git history)
 +
 +Here you can find log of past IRC discutions :
 +  * now defunct Freenode channel: https://freenode.irclog.whitequark.org/linux-amlogic
 +  * new Libera.Chat channel: https://libera.irclog.whitequark.org/linux-amlogic
  
 All new developments will ultimately go into the official Linux tree. All new developments will ultimately go into the official Linux tree.
 In the meantime, you can find in-development or ready-to-merge changes in these trees : In the meantime, you can find in-development or ready-to-merge changes in these trees :
-  * [[https://git.kernel.org/cgit/linux/kernel/git/khilman/linux-amlogic.git|Official arm-soc Amlogic sub-architecture linux integration tree]] +  * [[https://git.kernel.org/cgit/linux/kernel/git/amlogic/linux.git|Official arm-soc Amlogic sub-architecture linux integration tree]]
-  * [[https://cgit.freedesktop.org/~narmstrong/linux/|Amlogic Meson DRM Display driver linux integration tree]]+
   * [[https://github.com/baylibre/clk-meson|Amlogic Meson Clock driver linux integration tree]]   * [[https://github.com/baylibre/clk-meson|Amlogic Meson Clock driver linux integration tree]]
   * [[http://git.denx.de/?p=u-boot/u-boot-amlogic.git;a=summary|U-Boot Amlogic custodian tree]]   * [[http://git.denx.de/?p=u-boot/u-boot-amlogic.git;a=summary|U-Boot Amlogic custodian tree]]
start.txt · Last modified: 2021/10/11 15:53 by narmstrong