Message ID | 20250203-exynos7870-v1-0-2b6df476a3f0@disroot.org (mailing list archive) |
---|---|
Headers | show |
Series | Add support for the Exynos7870 SoC, along with three devices | expand |
On 02/02/2025 19:36, Kaustabh Chakraborty wrote: > Samsung Exynos 7870 (codename: Joshua) is an ARM-v8 system-on-chip that was > announced in 2016. The chipset was found in several popular mid-range to > low-end Samsung phones, released within 2016 to 2019. > > This patch series aims to add support for Exynos 7870, starting with the > most basic yet essential components such as CPU, GPU, clock controllers, > PMIC, pin controllers, etc. > > Moreover, the series also adds support for three Exynos 7870 devices via > devicetree. The devices are: > * Samsung Galaxy J7 Prime - released 2016, codename on7xelte > * Samsung Galaxy J6 - released 2018, codename j6lte > * Samsung Galaxy A2 Core - released 2019, codename a2corelte > > Additional features implemented in this series include: > * I2C - touchscreen, IIO sensors, etc. > * UART - bluetooth and serial debugging > * MMC - eMMC, Wi-Fi SDIO, SDCard > * USB - micro-USB 2.0 interface > > The series has commits from me and Sergey, who has given me permission > to upstream their patches with proper attribution. > > Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org> > --- > Kaustabh Chakraborty (26): > dt-bindings: hwinfo: samsung,exynos-chipid: add exynos7870-chipid compatible > dt-bindings: clock: document exynos7870 clock driver CMU bindings > dt-bindings: soc: samsung: exynos-pmu: add exynos7870-pmu compatible > dt-bindings: pinctrl: samsung: add exynos7870-pinctrl compatible > dt-bindings: pinctrl: samsung: add exynos7870-wakeup-eint compatible > dt-bindings: serial: samsung: add exynos7870-uart compatible > dt-bindings: mfd: samsung,s2mps11: add compatible for s2mpu05-pmic This is not related at all to this patchset. > regulator: dt-bindings: add documentation for s2mpu05-pmic regulators Neither is this. > dt-bindings: phy: samsung,usb3-drd-phy: add exynos7870-usbdrd-phy compatible > dt-bindings: usb: samsung,exynos-dwc3: add exynos7870 support > dt-bindings: gpu: arm,mali-midgard: add exynos7870 mali compatible > dt-bindings: i2c: samsung,s3c2410: add exynos7870-i2c compatible > dt-bindings: i2c: exynos5: add exynos7870-hsi2c compatible > dt-bindings: mmc: samsung,exynos-dw-mshc: add exynos7870 support > dt-bindings: soc: samsung,boot-mode: add boot mode definitions for exynos7870 > dt-bindings: arm: samsung: add compatibles for exynos7870 devices > soc: samsung: exynos-chipid: add support for exynos7870 > clk: samsung: add exynos7870 CLKOUT support > tty: serial: samsung: add support for exynos7870 This goes to different patchset. Don't mix with SoC changes or pure bindings. Your CC list is too big. > phy: exynos5-usbdrd: fix MPLL_MULTIPLIER and SSC_REFCLKSEL masks in refclk > phy: exynos5-usbdrd: use GENMASK and FIELD_PREP for Exynos5 PHY registers Different patchset. > usb: dwc3: exynos: add support for exynos7870 As well, with bindings. Please organize your patchset according to standard SoC upstream guidelines - don't mix SoC with non-Soc upstreaming or other subsystems. While putting entire SoC in one patchset is tempting, you added here totally unrelated changes like PMIC drivers. Result: 33 patches and huge cc-list bouncing from mailing lists. https://lore.kernel.org/linux-samsung-soc/CADrjBPq_0nUYRABKpskRF_dhHu+4K=duPVZX==0pr+cjSL_caQ@mail.gmail.com/T/#m2d9130a1342ab201ab49670fa6c858ee3724c83c https://lore.kernel.org/all/20231121-topic-sm8650-upstream-dt-v3-0-db9d0507ffd3@linaro.org/ Best regards, Krzysztof
Samsung Exynos 7870 (codename: Joshua) is an ARM-v8 system-on-chip that was announced in 2016. The chipset was found in several popular mid-range to low-end Samsung phones, released within 2016 to 2019. This patch series aims to add support for Exynos 7870, starting with the most basic yet essential components such as CPU, GPU, clock controllers, PMIC, pin controllers, etc. Moreover, the series also adds support for three Exynos 7870 devices via devicetree. The devices are: * Samsung Galaxy J7 Prime - released 2016, codename on7xelte * Samsung Galaxy J6 - released 2018, codename j6lte * Samsung Galaxy A2 Core - released 2019, codename a2corelte Additional features implemented in this series include: * I2C - touchscreen, IIO sensors, etc. * UART - bluetooth and serial debugging * MMC - eMMC, Wi-Fi SDIO, SDCard * USB - micro-USB 2.0 interface The series has commits from me and Sergey, who has given me permission to upstream their patches with proper attribution. Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org> --- Kaustabh Chakraborty (26): dt-bindings: hwinfo: samsung,exynos-chipid: add exynos7870-chipid compatible dt-bindings: clock: document exynos7870 clock driver CMU bindings dt-bindings: soc: samsung: exynos-pmu: add exynos7870-pmu compatible dt-bindings: pinctrl: samsung: add exynos7870-pinctrl compatible dt-bindings: pinctrl: samsung: add exynos7870-wakeup-eint compatible dt-bindings: serial: samsung: add exynos7870-uart compatible dt-bindings: mfd: samsung,s2mps11: add compatible for s2mpu05-pmic regulator: dt-bindings: add documentation for s2mpu05-pmic regulators dt-bindings: phy: samsung,usb3-drd-phy: add exynos7870-usbdrd-phy compatible dt-bindings: usb: samsung,exynos-dwc3: add exynos7870 support dt-bindings: gpu: arm,mali-midgard: add exynos7870 mali compatible dt-bindings: i2c: samsung,s3c2410: add exynos7870-i2c compatible dt-bindings: i2c: exynos5: add exynos7870-hsi2c compatible dt-bindings: mmc: samsung,exynos-dw-mshc: add exynos7870 support dt-bindings: soc: samsung,boot-mode: add boot mode definitions for exynos7870 dt-bindings: arm: samsung: add compatibles for exynos7870 devices soc: samsung: exynos-chipid: add support for exynos7870 clk: samsung: add exynos7870 CLKOUT support tty: serial: samsung: add support for exynos7870 phy: exynos5-usbdrd: fix MPLL_MULTIPLIER and SSC_REFCLKSEL masks in refclk phy: exynos5-usbdrd: use GENMASK and FIELD_PREP for Exynos5 PHY registers usb: dwc3: exynos: add support for exynos7870 arm64: dts: exynos: add initial devicetree support for exynos7870 arm64: dts: exynos: add initial support for Samsung Galaxy J7 Prime arm64: dts: exynos: add initial support for Samsung Galaxy A2 Core arm64: dts: exynos: add initial support for Samsung Galaxy J6 Sergey Lisov (7): dt-bindings: clock: add clock definitions for exynos7870 CMU clk: samsung: add initial exynos7870 clock driver pinctrl: samsung: add support for exynos7870 pinctrl mfd: sec: add support for S2MPU05 PMIC regulator: s2mps11: Add support for S2MPU05 regulators phy: exynos5-usbdrd: add exynos7870 USBDRD support mmc: dw_mmc: add exynos7870 support, with a quirk for accessing 64-bit FIFOs in two halves .../bindings/arm/samsung/samsung-boards.yaml | 8 + .../bindings/clock/samsung,exynos7870-clock.yaml | 246 +++ .../devicetree/bindings/gpu/arm,mali-midgard.yaml | 5 +- .../bindings/hwinfo/samsung,exynos-chipid.yaml | 1 + .../devicetree/bindings/i2c/i2c-exynos5.yaml | 1 + .../bindings/i2c/samsung,s3c2410-i2c.yaml | 1 + .../devicetree/bindings/mfd/samsung,s2mps11.yaml | 13 + .../bindings/mmc/samsung,exynos-dw-mshc.yaml | 2 + .../bindings/phy/samsung,usb3-drd-phy.yaml | 2 + .../pinctrl/samsung,pinctrl-wakeup-interrupt.yaml | 2 + .../bindings/pinctrl/samsung,pinctrl.yaml | 1 + .../bindings/regulator/samsung,s2mpu05.yaml | 44 + .../devicetree/bindings/serial/samsung_uart.yaml | 2 + .../bindings/soc/samsung/exynos-pmu.yaml | 1 + .../bindings/usb/samsung,exynos-dwc3.yaml | 34 +- arch/arm64/boot/dts/exynos/Makefile | 3 + .../arm64/boot/dts/exynos/exynos7870-a2corelte.dts | 624 +++++++ arch/arm64/boot/dts/exynos/exynos7870-j6lte.dts | 611 +++++++ arch/arm64/boot/dts/exynos/exynos7870-on7xelte.dts | 659 +++++++ arch/arm64/boot/dts/exynos/exynos7870-pinctrl.dtsi | 1035 +++++++++++ arch/arm64/boot/dts/exynos/exynos7870.dtsi | 722 ++++++++ drivers/clk/samsung/Makefile | 1 + drivers/clk/samsung/clk-exynos-clkout.c | 3 + drivers/clk/samsung/clk-exynos7870.c | 1830 ++++++++++++++++++++ drivers/mfd/sec-core.c | 12 + drivers/mfd/sec-irq.c | 85 + drivers/mmc/host/dw_mmc-exynos.c | 41 +- drivers/mmc/host/dw_mmc.c | 94 +- drivers/mmc/host/dw_mmc.h | 27 + drivers/phy/samsung/phy-exynos5-usbdrd.c | 407 ++++- drivers/pinctrl/samsung/pinctrl-exynos-arm64.c | 141 ++ drivers/pinctrl/samsung/pinctrl-exynos.h | 29 + drivers/pinctrl/samsung/pinctrl-samsung.c | 2 + drivers/pinctrl/samsung/pinctrl-samsung.h | 1 + drivers/regulator/Kconfig | 4 +- drivers/regulator/s2mps11.c | 92 +- drivers/soc/samsung/exynos-chipid.c | 1 + drivers/tty/serial/samsung_tty.c | 13 + drivers/usb/dwc3/dwc3-exynos.c | 9 + include/dt-bindings/clock/exynos7870.h | 324 ++++ include/dt-bindings/soc/samsung,boot-mode.h | 6 + include/linux/mfd/samsung/core.h | 1 + include/linux/mfd/samsung/irq.h | 44 + include/linux/mfd/samsung/s2mpu05.h | 152 ++ include/linux/soc/samsung/exynos-regs-pmu.h | 2 + 45 files changed, 7257 insertions(+), 81 deletions(-) --- base-commit: df4b2bbff898227db0c14264ac7edd634e79f755 change-id: 20250201-exynos7870-049587e4b7df Best regards,