mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 05:45:09 +07:00
b7c7b05065
The H6 has clock/reset controls in PRCM part, like old SoCs such as H3 and A64. However, the PRCM CCU is rearranged; the register arragement is now similar to the main CCU of H6, and the PRCM now has two APB buses to control -- one is clocked from AHB clock derivde from AR100 clock, the other is clocked from the same mux with AR100 clock. Therefore a new driver is written for it. As there's no official document about the PRCM in H6, all the information are indirectly collected from BSP and parts of the document, and the information source is noted as comments in the driver's source code. If reliable information is provided furtherly, the driver needs to be rechecked. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
50 lines
1.9 KiB
Makefile
50 lines
1.9 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
# Common objects
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_common.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_mmc_timing.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_reset.o
|
|
|
|
# Base clock types
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_div.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_frac.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_gate.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_mux.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_mult.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_phase.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_sdm.o
|
|
|
|
# Multi-factor clocks
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_nk.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_nkm.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_nkmp.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_nm.o
|
|
lib-$(CONFIG_SUNXI_CCU) += ccu_mp.o
|
|
|
|
# SoC support
|
|
obj-$(CONFIG_SUN50I_A64_CCU) += ccu-sun50i-a64.o
|
|
obj-$(CONFIG_SUN50I_H6_CCU) += ccu-sun50i-h6.o
|
|
obj-$(CONFIG_SUN50I_H6_R_CCU) += ccu-sun50i-h6-r.o
|
|
obj-$(CONFIG_SUN4I_A10_CCU) += ccu-sun4i-a10.o
|
|
obj-$(CONFIG_SUN5I_CCU) += ccu-sun5i.o
|
|
obj-$(CONFIG_SUN6I_A31_CCU) += ccu-sun6i-a31.o
|
|
obj-$(CONFIG_SUN8I_A23_CCU) += ccu-sun8i-a23.o
|
|
obj-$(CONFIG_SUN8I_A33_CCU) += ccu-sun8i-a33.o
|
|
obj-$(CONFIG_SUN8I_A83T_CCU) += ccu-sun8i-a83t.o
|
|
obj-$(CONFIG_SUN8I_H3_CCU) += ccu-sun8i-h3.o
|
|
obj-$(CONFIG_SUN8I_V3S_CCU) += ccu-sun8i-v3s.o
|
|
obj-$(CONFIG_SUN8I_DE2_CCU) += ccu-sun8i-de2.o
|
|
obj-$(CONFIG_SUN8I_R_CCU) += ccu-sun8i-r.o
|
|
obj-$(CONFIG_SUN8I_R40_CCU) += ccu-sun8i-r40.o
|
|
obj-$(CONFIG_SUN9I_A80_CCU) += ccu-sun9i-a80.o
|
|
obj-$(CONFIG_SUN9I_A80_CCU) += ccu-sun9i-a80-de.o
|
|
obj-$(CONFIG_SUN9I_A80_CCU) += ccu-sun9i-a80-usb.o
|
|
|
|
# The lib-y file goals is supposed to work only in arch/*/lib or lib/. In our
|
|
# case, we want to use that goal, but even though lib.a will be properly
|
|
# generated, it will not be linked in, eventually resulting in a linker error
|
|
# for missing symbols.
|
|
#
|
|
# We can work around that by explicitly adding lib.a to the obj-y goal. This is
|
|
# an undocumented behaviour, but works well for now.
|
|
obj-$(CONFIG_SUNXI_CCU) += lib.a
|