[rulkc] [GIT PULL] Amlogic changes for landau-linux v7.0

Dmitry Rokosov rockosov at rulkc.org
Thu Aug 13 15:39:03 MSK 2026


Hi Dmitry and Sergey!

The following changes since commit 028ef9c96e96197026887c0f092424679298aae8:

  Linux 7.0 (2026-04-12 13:48:06 -0700)

are available in the Git repository at:

  ssh://git@git.rulkc.org/pub/scm/landau/linux/kernel/git/amlogic/linux.git tags/linux-amlogic/landau-v7.0

for you to fetch changes up to 0e0488eb915954f96e9ce4b40c0a9d8da6eebc19:

  configs: introduce Khadas vim3 defconfig (2026-08-13 14:41:35 +0300)

----------------------------------------------------------------
Amlogic SoC updates for LANDAU Linux v7.0
----------------------------------------------------------------

This pull request contains a comprehensive set of updates for Amlogic
SoC support, including new clock controllers, audio improvements,
LED driver enhancements, and hardware enablement for various platforms.

Key highlights:
- New A1 CPU and audio clock controllers
- A1 SoC audio subsystem support (EQDRC, TDM, PDM, codec glue)
- New Amlogic BBT parser for NAND
- AW200xx LED driver enhancements with framebuffer support
- ES7243E audio ADC driver
- New defconfigs: Odroid-C1, Khadas Vim1/Vim3, AC200

----------------------------------------------------------------
New drivers introduced in this release:

1. HX3203 Ambient Light Sensor (IIO)
   - Driver for Nanjing TianYiHeXin Electronics HX3203 ALS
   - Features: 8-18 bit resolution, programmable gain (1x-64x),
     interrupt support, I2C interface

2. ES7243E Audio ADC (ASoC)
   - Driver for Everest Semiconductor ES7243E
   - Four-channel audio ADC with PGA control
   - Supports 8-48kHz sample rates, I2S interface

3. Amlogic A1 CPU Clock Controller
   - Supports CPU frequency scaling with OPP table
   - SysPLL management with DVFS notifier

4. Amlogic A1 Audio Clock Controller
   - Comprehensive clock management for A1 audio subsystem
   - Master clock generation and TDM support

5. Amlogic NAND BBT Parser (Amlogic format)
   - Amlogic-specific bad block table format
   - Reserved area management with record-based storage

6. AW200xx LED Driver Enhancements
   - Added framebuffer support with backlight control
   - Pattern controllers (3 independent patterns)
   - HWEN pin support, configurable pattern parameters

----------------------------------------------------------------
Alexey Romanov (2):
      drivers: mtd: nand: raw: amlogic: fix buffer overflow
      mtd: spinand: micron: correct parameters for MT29F2G01ABAGD

Amirreza Zarrabi (1):
      tee: optee: prevent use-after-free when the client exits before the supplicant

Arseniy Krasnov (3):
      mtd: rawnand: meson: suppress OOB write
      mtd: introduce BBT parser for Amlogic format
      mtd: two fixes for Amlogic BBT parser

Dmitry Rokosov (17):
      arm64: dts: amlogic: ad402: fix model name and dai-link-2 name
      clk: meson: a1: pll: support 'syspll' general-purpose PLL for CPU clock
      clk: meson: a1: peripherals: support 'sys_pll_div16' clock as GEN input
      dt-bindings: clock: meson: add A1 CPU clock controller bindings
      clk: meson: a1: add Amlogic A1 CPU clock controller driver
      arm64: dts: amlogic: a1: add new syspll_in input for clkc_pll controller
      arm64: dts: amlogic: a1: declare cpu clock controller
      arm64: dts: amlogic: a1: add new input clock 'sys_pll' to clkc_periphs
      arm64: dts: amlogic: a1: setup CPU power management
      ASoC: meson: sm1-eqdrc: set continuous rates
      iio: light: add Nanjing TianYiHeXin HX3203 Ambient Light Sensor driver
      dt-bindings: leds: aw200xx: Fix maximum LED number for all Awinics
      clk: meson: a1: apply dev pointer for pdev->dev for shorter usage
      clk: meson: a1: audio: use meson common reset auxiliary driver
      arm64: dts: amlogic: meson-a1: add reset for audio clock controller
      ASoC: meson: sm1: eqdrc: use snd_kcontrol_chip()
      ASoC: meson: t9015: replace idle_bias_off with idle_bias

Evgeny Bachinin (1):
      mtd: spinand: esmt: OTP: fix pagesize as unused var

George Stark (16):
      dt-bindings: pwm: amlogic: Add a new binding for meson a1 pwm types
      leds: aw200xx: Drop manual aw200xx_disable() if probe failed
      leds: aw200xx: Fix calculating display_rows
      leds: aw200xx: Redesign driver's probing stage
      leds: aw200xx: Fully initialize chip before registering LEDs
      leds: aw200xx: Support default-state DT property
      leds: aw200xx: Introduce separate internal aw200xx_dim_fill()
      leds: aw200xx: Update led states thru delayed work queue
      leds: aw200xx: Add support for framebuffer interface
      dt-bindings: leds: aw200xx: add properties for framebuffer
      drivers/leds: Add framebuffer and backlight dependencies for AW200XX
      leds: aw200xx: Share framebuffer's leds with patterns
      configs: introduce defconfig for odroid-c1 (amlogic s805) board
      arm: dts: amlogic: odroidc1: enable usb0 in otg mode
      configs: introduce defconfig for khadas vim1 (amlogic s905) board
      configs: introduce Khadas vim3 defconfig

Igor Prusov (4):
      ASoC: dt-bindings: Add bindings for Everest ES7243E
      ASoC: codecs: add ES7243E ADC driver
      ASoC: codecs: add ntp8835_mute function
      ASoC: codecs: remove unused ntp8835_mute_info

Ilias Izmaylov (3):
      ASoC: codecs: ntp8918: fix snd_soc_component_update_bits handling
      ASoC: codecs: ntp8835: fix snd_soc_component_update_bits handling
      ASoC: codecs: ntp8918: calculate bclk using tdm params

Jan Dakinevich (38):
      clk: meson: a1: add the audio clock controller driver
      ASoC: meson: codec-glue: add support for capture stream
      ASoC: meson: g12a-toacodec: fix "Lane Select" width
      ASoC: meson: g12a-toacodec: rework the definition of bits
      ASoC: dt-bindings: meson: g12a-toacodec: add support for A1 SoC family
      ASoC: meson: g12a-toacodec: add support for A1 SoC family
      ASoC: meson: t9015: prepare to adding new platforms
      ASoC: dt-bindings: meson: t9015: add support for A1 SoC family
      ASoC: meson: t9015: add support for A1 SoC family
      ASoC: dt-bindings: meson: axg-pdm: document 'sysrate' property
      ASoC: meson: axg-pdm: introduce 'sysrate' property
      ASoC: dt-bindings: meson: meson-axg-audio-arb: claim support of A1 SoC family
      ASoC: dt-bindings: meson: axg-fifo: claim support of A1 SoC family
      ASoC: dt-bindings: meson: axg-pdm: claim support of A1 SoC family
      ASoC: dt-bindings: meson: axg-sound-card: claim support of A1 SoC family
      ASoC: dt-bindings: meson: axg-tdm-formatters: claim support of A1 SoC family
      ASoC: dt-bindings: meson: axg-tdm-iface: claim support of A1 SoC family
      arm64: dts: meson: a1: add audio devices
      arm64: dts: ad402: enable audio
      ASoC: dt-bindings: meson: t9015: document linein/lineout properties
      ASoC: meson: t9015: configure linein/lineout using device tree
      arm64: dts: ad402: configure linein/lineout using device tree
      ASoC: meson: axg-frddr: add "OUT 8" sink widget in SM1
      ASoC: meson: axg-tdmout: add "IN EQDRC" source widget in SM1
      ASoC: meson: introduce BE<->BE connections
      ASoC: dt-bindings: meson: sm1-eqdrc: document EQDRC module
      ASoC: meson: sm1-eqdrc: introduce EQDRC module driver
      arm64: dts: meson: a1: add EQDRC module
      ASoC: meson: sm1-eqdrc: fix unexpected register's value
      clk: meson: a1: don't set automatically the rate of master clocks
      arm64: dts: ad402: configure audio master clock for 48kHz sample-rate family
      ASoC: meson: t9015: avoid pop noise during BIAS operations
      ASoC: meson: t9015: allow output driver to be always enabled
      dt-bindings: clock: meson: add A1 audio clock and reset controller bindings
      ASoC: es7243e: fix using of snd_soc_component_update_bits()
      ASoC: es7243e: fix constraints handling
      arch/arm64: dts: ac200: introduce device tree
      configs: ac200: introduce meson_sm1_amlogic_ac200_defconfig

Martin Kurbanov (13):
      mtd: spinand: micron: fixing the offset for OOB
      ASoC: dt-bindigs: es7243e: add sclk/lrclk clocks binding
      ASoC: es7243e: add sclk/lrclk clocks handling
      dt-bindings: leds: aw200xx: add 'interrupts' property
      mtd: spinand: esmt: introduce read/write OTP ops
      mtd: spinand: esmt: enable ECC for read/write OTP
      mtd: spinand: esmt: fix return value for OTP read/write
      mtd: rawnand: amlogic_bbt: use rsv-info API
      arm64: dts: amlogic: a1: set vddcore voltage to 0.84V
      iio: hx3203: switch to sparse friendly iio_device_claim/release_direct
      leds: aw200xx: Support for hw pattern controllers
      arm64: dts: amlogic: a1: add uart_AO_c node
      leds: aw200xx: add support for "all" in pattern LED selection

 .../ABI/testing/sysfs-class-led-driver-aw200xx     |  108 ++
 .../bindings/clock/amlogic,a1-audio-clkc.yaml      |   83 ++
 .../bindings/clock/amlogic,a1-cpu-clkc.yaml        |   64 +
 .../devicetree/bindings/leds/awinic,aw200xx.yaml   |   50 +-
 .../devicetree/bindings/pwm/pwm-amlogic.yaml       |    2 +
 .../reset/amlogic,meson-axg-audio-arb.yaml         |   10 +-
 .../bindings/sound/amlogic,axg-fifo.yaml           |    8 +
 .../devicetree/bindings/sound/amlogic,axg-pdm.yaml |    5 +
 .../bindings/sound/amlogic,axg-sound-card.yaml     |    6 +-
 .../bindings/sound/amlogic,axg-tdm-formatters.yaml |   22 +-
 .../bindings/sound/amlogic,axg-tdm-iface.yaml      |    6 +-
 .../bindings/sound/amlogic,g12a-toacodec.yaml      |    1 +
 .../bindings/sound/amlogic,sm1-eqdrc.yaml          |   66 +
 .../devicetree/bindings/sound/amlogic,t9015.yaml   |   58 +-
 .../devicetree/bindings/sound/everest,es7243e.yaml |   57 +
 Documentation/leds/leds-aw200xx.rst                |  274 ++++
 arch/arm/boot/dts/amlogic/meson8b-odroidc1.dts     |    9 +
 arch/arm/configs/meson8_odroid_c1_defconfig        |  228 +++
 arch/arm64/boot/dts/amlogic/meson-a1-ad402.dts     |  114 ++
 arch/arm64/boot/dts/amlogic/meson-a1.dtsi          |  581 +++++++-
 arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dts    |   26 +
 .../arm64/configs/meson_g12b_khadas_vim3_defconfig |  402 ++++++
 arch/arm64/configs/meson_gxl_khadas_vim1_defconfig |  397 ++++++
 .../configs/meson_sm1_amlogic_ac200_defconfig      |  338 +++++
 drivers/clk/meson/Kconfig                          |   22 +
 drivers/clk/meson/Makefile                         |    2 +
 drivers/clk/meson/a1-audio.c                       |  560 ++++++++
 drivers/clk/meson/a1-audio.h                       |   58 +
 drivers/clk/meson/a1-cpu.c                         |  331 +++++
 drivers/clk/meson/a1-peripherals.c                 |   18 +-
 drivers/clk/meson/a1-pll.c                         |   77 ++
 drivers/iio/light/Kconfig                          |   13 +
 drivers/iio/light/Makefile                         |    1 +
 drivers/iio/light/hx3203.c                         | 1462 ++++++++++++++++++++
 drivers/leds/Kconfig                               |    3 +
 drivers/leds/leds-aw200xx.c                        | 1414 +++++++++++++++++--
 drivers/mtd/nand/raw/Kconfig                       |   11 +
 drivers/mtd/nand/raw/Makefile                      |    8 +-
 drivers/mtd/nand/raw/meson_nand.c                  |    9 +-
 drivers/mtd/nand/raw/nand_bbt_amlogic.c            |  881 ++++++++++++
 drivers/mtd/nand/spi/esmt.c                        |   68 +-
 drivers/mtd/nand/spi/micron.c                      |   28 +-
 drivers/tee/optee/supp.c                           |  107 +-
 include/dt-bindings/clock/amlogic,a1-audio-clkc.h  |  122 ++
 include/dt-bindings/clock/amlogic,a1-cpu-clkc.h    |   19 +
 include/dt-bindings/sound/meson-g12a-toacodec.h    |    5 +
 sound/soc/codecs/Kconfig                           |    3 +
 sound/soc/codecs/Makefile                          |    2 +
 sound/soc/codecs/es7243e.c                         |  688 +++++++++
 sound/soc/codecs/ntp8835.c                         |   72 +-
 sound/soc/codecs/ntp8918.c                         |   60 +-
 sound/soc/meson/Kconfig                            |    8 +
 sound/soc/meson/Makefile                           |    2 +
 sound/soc/meson/axg-frddr.c                        |   55 +-
 sound/soc/meson/axg-pdm.c                          |   10 +-
 sound/soc/meson/axg-tdmout.c                       |   13 +-
 sound/soc/meson/g12a-toacodec.c                    |  298 +++-
 sound/soc/meson/meson-card-utils.c                 |   34 +-
 sound/soc/meson/meson-codec-glue.c                 |  174 ++-
 sound/soc/meson/meson-codec-glue.h                 |   23 +
 sound/soc/meson/sm1-eqdrc.c                        |  673 +++++++++
 sound/soc/meson/t9015.c                            |  425 +++++-
 62 files changed, 10331 insertions(+), 343 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/clock/amlogic,a1-audio-clkc.yaml
 create mode 100644 Documentation/devicetree/bindings/clock/amlogic,a1-cpu-clkc.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/amlogic,sm1-eqdrc.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/everest,es7243e.yaml
 create mode 100644 Documentation/leds/leds-aw200xx.rst
 create mode 100644 arch/arm/configs/meson8_odroid_c1_defconfig
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-ac200.dts
 create mode 100644 arch/arm64/configs/meson_g12b_khadas_vim3_defconfig
 create mode 100644 arch/arm64/configs/meson_gxl_khadas_vim1_defconfig
 create mode 100644 arch/arm64/configs/meson_sm1_amlogic_ac200_defconfig
 create mode 100644 drivers/clk/meson/a1-audio.c
 create mode 100644 drivers/clk/meson/a1-audio.h
 create mode 100644 drivers/clk/meson/a1-cpu.c
 create mode 100644 drivers/iio/light/hx3203.c
 create mode 100644 drivers/mtd/nand/raw/nand_bbt_amlogic.c
 create mode 100644 include/dt-bindings/clock/amlogic,a1-audio-clkc.h
 create mode 100644 include/dt-bindings/clock/amlogic,a1-cpu-clkc.h
 create mode 100644 sound/soc/codecs/es7243e.c
 create mode 100644 sound/soc/meson/sm1-eqdrc.c



More information about the rulkc mailing list