1# $NetBSD: files.rockchip,v 1.29 2022/11/19 09:17:57 yamt Exp $ 2# 3# Configuration info for Rockchip family SoCs 4# 5# 6 7file arch/arm/rockchip/rk_platform.c soc_rockchip 8 9file arch/arm/rockchip/rk3066_smp.c soc_rk3288 & multiprocessor 10 11# Clock and reset unit (CRU) 12device rkcru: rk_cru 13file arch/arm/rockchip/rk_cru.c rk_cru 14file arch/arm/rockchip/rk_cru_arm.c rk_cru 15file arch/arm/rockchip/rk_cru_composite.c rk_cru 16file arch/arm/rockchip/rk_cru_gate.c rk_cru 17file arch/arm/rockchip/rk_cru_mux.c rk_cru 18file arch/arm/rockchip/rk_cru_pll.c rk_cru 19 20ifdef arm 21 22# RK3288 clock and reset unit 23attach rkcru at fdt with rk3288_cru 24file arch/arm/rockchip/rk3288_cru.c rk3288_cru & soc_rk3288 25 26else 27 28# RK3328 clock and reset unit 29attach rkcru at fdt with rk3328_cru 30file arch/arm/rockchip/rk3328_cru.c rk3328_cru & soc_rk3328 31 32# RK3399 clock and reset unit 33attach rkcru at fdt with rk3399_cru 34file arch/arm/rockchip/rk3399_cru.c rk3399_cru & soc_rk3399 35attach rkcru at fdt with rk3399_pmucru 36file arch/arm/rockchip/rk3399_pmucru.c rk3399_pmucru & soc_rk3399 37 38# RK3588 clock and reset unit 39attach rkcru at fdt with rk3588_cru 40file arch/arm/rockchip/rk3588_cru.c rk3588_cru & soc_rk3588 41 42endif 43 44# IOMUX control 45device rkiomux { } 46 47ifdef arm 48 49attach rkiomux at fdt with rk3288_iomux 50file arch/arm/rockchip/rk3288_iomux.c rk3288_iomux & soc_rk3288 51 52else 53 54attach rkiomux at fdt with rk3328_iomux 55file arch/arm/rockchip/rk3328_iomux.c rk3328_iomux & soc_rk3328 56attach rkiomux at fdt with rk3399_iomux 57file arch/arm/rockchip/rk3399_iomux.c rk3399_iomux & soc_rk3399 58attach rkiomux at fdt with rk3588_iomux 59file arch/arm/rockchip/rk3588_iomux.c rk3588_iomux & soc_rk3588 60 61endif 62 63# GPIO 64device rkgpio: gpiobus 65attach rkgpio at rkiomux with rk_gpio 66file arch/arm/rockchip/rk_gpio.c rk_gpio 67 68# I2C 69device rkiic: i2cbus, i2cexec 70attach rkiic at fdt with rk_i2c 71file arch/arm/rockchip/rk_i2c.c rk_i2c 72 73# SPI 74device rkspi: spibus 75attach rkspi at fdt with rk_spi 76file arch/arm/rockchip/rk_spi.c rk_spi 77 78# USB PHY 79device rkusb { } 80attach rkusb at fdt with rk_usb 81device rkusbphy 82attach rkusbphy at rkusb with rk_usbphy 83file arch/arm/rockchip/rk_usb.c rk_usb | rk_usbphy 84 85device rk3288usb { } 86attach rk3288usb at fdt with rk3288_usb 87device rk3288usbphy 88attach rk3288usbphy at rk3288usb with rk3288_usbphy 89file arch/arm/rockchip/rk3288_usb.c rk3288_usb | rk3288_usbphy 90 91# GMAC 92attach awge at fdt with rk_gmac 93file arch/arm/rockchip/rk_gmac.c rk_gmac 94 95# EQOS 96attach eqos at fdt with rk_eqos 97file arch/arm/rockchip/rk_eqos.c rk_eqos 98 99# PCIe PHY 100device rkpciephy 101attach rkpciephy at fdt 102file arch/arm/rockchip/rk3399_pcie_phy.c rkpciephy 103 104# PCIe host 105device rkpcie: pcibus, pcihost_fdt 106attach rkpcie at fdt 107file arch/arm/rockchip/rk3399_pcie.c rkpcie 108 109# eMMC PHY 110device rkemmcphy 111attach rkemmcphy at fdt 112file arch/arm/rockchip/rk_emmcphy.c rkemmcphy 113 114# TSADC temperature sensors 115device rktsadc: sysmon_envsys 116attach rktsadc at fdt with rk_tsadc 117file arch/arm/rockchip/rk_tsadc.c rk_tsadc 118 119# PWM 120device rkpwm: pwm 121attach rkpwm at fdt with rk_pwm 122file arch/arm/rockchip/rk_pwm.c rk_pwm 123 124# DRM master 125define rkfbbus { } 126device rkdrm: drmkms, ddc_read_edid, rkfbbus 127attach rkdrm at fdt with rk_drm 128file arch/arm/rockchip/rk_drm.c rk_drm 129makeoptions rk_drm "CPPFLAGS.rk_drm"+="${CPPFLAGS.drmkms}" 130 131# DRM framebuffer console 132device rkfb: rkfbbus, drmfb, wsemuldisplaydev 133attach rkfb at rkfbbus with rk_fb 134file arch/arm/rockchip/rk_fb.c rk_fb 135makeoptions rk_fb "CPPFLAGS.rk_fb"+="${CPPFLAGS.drmkms}" 136 137# Visual Output Processor 138device rkvop: drmkms 139attach rkvop at fdt with rk_vop 140file arch/arm/rockchip/rk_vop.c rk_vop 141makeoptions rk_vop "CPPFLAGS.rk_vop"+="${CPPFLAGS.drmkms}" 142 143# HDMI TX (Designware based) 144attach dwhdmi at fdt with rk_dwhdmi 145file arch/arm/rockchip/rk_dwhdmi.c rk_dwhdmi 146makeoptions rk_dwhdmi "CPPFLAGS.rk_dwhdmi"+="${CPPFLAGS.drmkms}" 147 148# DP/eDP (Analogix-based) 149attach anxdp at fdt with rk_anxdp 150file arch/arm/rockchip/rk_anxdp.c rk_anxdp 151makeoptions rk_anxdp "CPPFLAGS.rk_anxdp"+="${CPPFLAGS.drmkms}" 152 153# I2S/PCM controller 154device rki2s 155attach rki2s at fdt with rk_i2s 156file arch/arm/rockchip/rk_i2s.c rk_i2s 157 158# Crypto engine v1 159device rkv1crypto 160attach rkv1crypto at fdt with rk_v1crypto 161file arch/arm/rockchip/rk_v1crypto.c rk_v1crypto 162 163# SOC parameters 164defflag opt_soc.h SOC_ROCKCHIP 165defflag opt_soc.h SOC_RK3288: SOC_ROCKCHIP 166defflag opt_soc.h SOC_RK3328: SOC_ROCKCHIP 167defflag opt_soc.h SOC_RK3399: SOC_ROCKCHIP 168defflag opt_soc.h SOC_RK3588: SOC_ROCKCHIP 169