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