uboot/arch/arm/include/asm/arch-rockchip/grf_rk3568.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0+ */
   2/*
   3 * (C) Copyright 2021 Rockchip Electronics Co., Ltd
   4 */
   5
   6#ifndef __SOC_ROCKCHIP_RK3568_GRF_H__
   7#define __SOC_ROCKCHIP_RK3568_GRF_H__
   8
   9struct rk3568_grf {
  10        unsigned int gpio1a_iomux_l;
  11        unsigned int gpio1a_iomux_h;
  12        unsigned int gpio1b_iomux_l;
  13        unsigned int gpio1b_iomux_h;
  14        unsigned int gpio1c_iomux_l;
  15        unsigned int gpio1c_iomux_h;
  16        unsigned int gpio1d_iomux_l;
  17        unsigned int gpio1d_iomux_h;
  18        unsigned int gpio2a_iomux_l;
  19        unsigned int gpio2a_iomux_h;
  20        unsigned int gpio2b_iomux_l;
  21        unsigned int gpio2b_iomux_h;
  22        unsigned int gpio2c_iomux_l;
  23        unsigned int gpio2c_iomux_h;
  24        unsigned int gpio2d_iomux_l;
  25        unsigned int gpio2d_iomux_h;
  26        unsigned int gpio3a_iomux_l;
  27        unsigned int gpio3a_iomux_h;
  28        unsigned int gpio3b_iomux_l;
  29        unsigned int gpio3b_iomux_h;
  30        unsigned int gpio3c_iomux_l;
  31        unsigned int gpio3c_iomux_h;
  32        unsigned int gpio3d_iomux_l;
  33        unsigned int gpio3d_iomux_h;
  34        unsigned int gpio4a_iomux_l;
  35        unsigned int gpio4a_iomux_h;
  36        unsigned int gpio4b_iomux_l;
  37        unsigned int gpio4b_iomux_h;
  38        unsigned int gpio4c_iomux_l;
  39        unsigned int gpio4c_iomux_h;
  40        unsigned int gpio4d_iomux_l;
  41        unsigned int reserved0[(0x0080 - 0x0078) / 4 - 1];
  42        unsigned int gpio1a_p;
  43        unsigned int gpio1b_p;
  44        unsigned int gpio1c_p;
  45        unsigned int gpio1d_p;
  46        unsigned int gpio2a_p;
  47        unsigned int gpio2b_p;
  48        unsigned int gpio2c_p;
  49        unsigned int gpio2d_p;
  50        unsigned int gpio3a_p;
  51        unsigned int gpio3b_p;
  52        unsigned int gpio3c_p;
  53        unsigned int gpio3d_p;
  54        unsigned int gpio4a_p;
  55        unsigned int gpio4b_p;
  56        unsigned int gpio4c_p;
  57        unsigned int gpio4d_p;
  58        unsigned int gpio1a_ie;
  59        unsigned int gpio1b_ie;
  60        unsigned int gpio1c_ie;
  61        unsigned int gpio1d_ie;
  62        unsigned int gpio2a_ie;
  63        unsigned int gpio2b_ie;
  64        unsigned int gpio2c_ie;
  65        unsigned int gpio2d_ie;
  66        unsigned int gpio3a_ie;
  67        unsigned int gpio3b_ie;
  68        unsigned int gpio3c_ie;
  69        unsigned int gpio3d_ie;
  70        unsigned int gpio4a_ie;
  71        unsigned int gpio4b_ie;
  72        unsigned int gpio4c_ie;
  73        unsigned int gpio4d_ie;
  74        unsigned int gpio1a_opd;
  75        unsigned int gpio1b_opd;
  76        unsigned int gpio1c_opd;
  77        unsigned int gpio1d_opd;
  78        unsigned int gpio2a_opd;
  79        unsigned int gpio2b_opd;
  80        unsigned int gpio2c_opd;
  81        unsigned int gpio2d_opd;
  82        unsigned int gpio3a_opd;
  83        unsigned int gpio3b_opd;
  84        unsigned int gpio3c_opd;
  85        unsigned int gpio3d_opd;
  86        unsigned int gpio4a_opd;
  87        unsigned int gpio4b_opd;
  88        unsigned int gpio4c_opd;
  89        unsigned int gpio4d_opd;
  90        unsigned int gpio1a_sus;
  91        unsigned int gpio1b_sus;
  92        unsigned int gpio1c_sus;
  93        unsigned int gpio1d_sus;
  94        unsigned int gpio2a_sus;
  95        unsigned int gpio2b_sus;
  96        unsigned int gpio2c_sus;
  97        unsigned int gpio2d_sus;
  98        unsigned int gpio3a_sus;
  99        unsigned int gpio3b_sus;
 100        unsigned int gpio3c_sus;
 101        unsigned int gpio3d_sus;
 102        unsigned int gpio4a_sus;
 103        unsigned int gpio4b_sus;
 104        unsigned int gpio4c_sus;
 105        unsigned int gpio4d_sus;
 106        unsigned int gpio1a_sl;
 107        unsigned int gpio1b_sl;
 108        unsigned int gpio1c_sl;
 109        unsigned int gpio1d_sl;
 110        unsigned int gpio2a_sl;
 111        unsigned int gpio2b_sl;
 112        unsigned int gpio2c_sl;
 113        unsigned int gpio2d_sl;
 114        unsigned int gpio3a_sl;
 115        unsigned int gpio3b_sl;
 116        unsigned int gpio3c_sl;
 117        unsigned int gpio3d_sl;
 118        unsigned int gpio4a_sl;
 119        unsigned int gpio4b_sl;
 120        unsigned int gpio4c_sl;
 121        unsigned int gpio4d_sl;
 122        unsigned int reserved1[(0x0200 - 0x01bc) / 4 - 1];
 123        unsigned int gpio1a_ds_0;
 124        unsigned int gpio1a_ds_1;
 125        unsigned int gpio1a_ds_2;
 126        unsigned int gpio1a_ds_3;
 127        unsigned int gpio1b_ds_0;
 128        unsigned int gpio1b_ds_1;
 129        unsigned int gpio1b_ds_2;
 130        unsigned int gpio1b_ds_3;
 131        unsigned int gpio1c_ds_0;
 132        unsigned int gpio1c_ds_1;
 133        unsigned int gpio1c_ds_2;
 134        unsigned int gpio1c_ds_3;
 135        unsigned int gpio1d_ds_0;
 136        unsigned int gpio1d_ds_1;
 137        unsigned int gpio1d_ds_2;
 138        unsigned int gpio1d_ds_3;
 139        unsigned int gpio2a_ds_0;
 140        unsigned int gpio2a_ds_1;
 141        unsigned int gpio2a_ds_2;
 142        unsigned int gpio2a_ds_3;
 143        unsigned int gpio2b_ds_0;
 144        unsigned int gpio2b_ds_1;
 145        unsigned int gpio2b_ds_2;
 146        unsigned int gpio2b_ds_3;
 147        unsigned int gpio2c_ds_0;
 148        unsigned int gpio2c_ds_1;
 149        unsigned int gpio2c_ds_2;
 150        unsigned int gpio2c_ds_3;
 151        unsigned int gpio2d_ds_0;
 152        unsigned int gpio2d_ds_1;
 153        unsigned int gpio2d_ds_2;
 154        unsigned int gpio2d_ds_3;
 155        unsigned int gpio3a_ds_0;
 156        unsigned int gpio3a_ds_1;
 157        unsigned int gpio3a_ds_2;
 158        unsigned int gpio3a_ds_3;
 159        unsigned int gpio3b_ds_0;
 160        unsigned int gpio3b_ds_1;
 161        unsigned int gpio3b_ds_2;
 162        unsigned int gpio3b_ds_3;
 163        unsigned int gpio3c_ds_0;
 164        unsigned int gpio3c_ds_1;
 165        unsigned int gpio3c_ds_2;
 166        unsigned int gpio3c_ds_3;
 167        unsigned int gpio3d_ds_0;
 168        unsigned int gpio3d_ds_1;
 169        unsigned int gpio3d_ds_2;
 170        unsigned int gpio3d_ds_3;
 171        unsigned int gpio4a_ds_0;
 172        unsigned int gpio4a_ds_1;
 173        unsigned int gpio4a_ds_2;
 174        unsigned int gpio4a_ds_3;
 175        unsigned int gpio4b_ds_0;
 176        unsigned int gpio4b_ds_1;
 177        unsigned int gpio4b_ds_2;
 178        unsigned int gpio4b_ds_3;
 179        unsigned int gpio4c_ds_0;
 180        unsigned int gpio4c_ds_1;
 181        unsigned int gpio4c_ds_2;
 182        unsigned int gpio4c_ds_3;
 183        unsigned int gpio4d_ds_0;
 184        unsigned int gpio4d_ds_1;
 185        unsigned int gpio4d_ds_2;
 186        unsigned int gpio4d_ds_3;
 187        unsigned int iofunc_sel0;
 188        unsigned int iofunc_sel1;
 189        unsigned int iofunc_sel2;
 190        unsigned int iofunc_sel3;
 191        unsigned int iofunc_sel4;
 192        unsigned int iofunc_sel5;
 193        unsigned int reserved2[(0x0340 - 0x0314) / 4 - 1];
 194        unsigned int vi_con0;
 195        unsigned int vi_con1;
 196        unsigned int vi_status0;
 197        unsigned int reserved3[(0x0360 - 0x0348) / 4 - 1];
 198        unsigned int vo_con0;
 199        unsigned int vo_con1;
 200        unsigned int vo_con2;
 201        unsigned int vo_con3;
 202        unsigned int reserved4[(0x0380 - 0x036c) / 4 - 1];
 203        unsigned int mac0_con0;
 204        unsigned int mac0_con1;
 205        unsigned int mac1_con0;
 206        unsigned int mac1_con1;
 207        unsigned int reserved5[(0x03a0 - 0x038c) / 4 - 1];
 208        unsigned int biu_con0;
 209        unsigned int biu_con1;
 210        unsigned int biu_con2;
 211        unsigned int reserved6[(0x03c0 - 0x03a8) / 4 - 1];
 212        unsigned int gic_con0;
 213        unsigned int gic_con1;
 214        unsigned int gic_con2;
 215        unsigned int reserved7[(0x03f0 - 0x03c8) / 4 - 1];
 216        unsigned int gpu_con0;
 217        unsigned int gpu_con1;
 218        unsigned int reserved8[(0x0400 - 0x03f4) / 4 - 1];
 219        unsigned int cpu_con0;
 220        unsigned int reserved9[(0x0420 - 0x0400) / 4 - 1];
 221        unsigned int cpu_status0;
 222        unsigned int reserved10[(0x0500 - 0x0420) / 4 - 1];
 223        unsigned int soc_con0;
 224        unsigned int soc_con1;
 225        unsigned int soc_con2;
 226        unsigned int soc_con3;
 227        unsigned int reserved11[(0x0514 - 0x050c) / 4 - 1];
 228        unsigned int soc_con5;
 229        unsigned int soc_con6;
 230        unsigned int reserved12[(0x0580 - 0x0518) / 4 - 1];
 231        unsigned int soc_status0;
 232        unsigned int reserved13[(0x05c0 - 0x0580) / 4 - 1];
 233        unsigned int ram_con;
 234        unsigned int core_ram_con;
 235        unsigned int reserved14[(0x0600 - 0x05c4) / 4 - 1];
 236        unsigned int tsadc_con;
 237        unsigned int reserved15[(0x0610 - 0x0600) / 4 - 1];
 238        unsigned int saradc_con;
 239        unsigned int reserved16[(0x0700 - 0x0610) / 4 - 1];
 240        unsigned int gpupvtpll_con0;
 241        unsigned int gpupvtpll_con1;
 242        unsigned int gpupvtpll_con2;
 243        unsigned int gpupvtpll_con3;
 244        unsigned int reserved17[(0x0740 - 0x070c) / 4 - 1];
 245        unsigned int npupvtpll_con0;
 246        unsigned int npupvtpll_con1;
 247        unsigned int npupvtpll_con2;
 248        unsigned int npupvtpll_con3;
 249        unsigned int reserved18[(0x0800 - 0x074c) / 4 - 1];
 250        unsigned int chip_id;
 251        unsigned int reserved19[(0x0840 - 0x0800) / 4 - 1];
 252        unsigned int gpio1c5_ds;
 253        unsigned int gpio2a2_ds;
 254        unsigned int gpio2b0_ds;
 255        unsigned int gpio3a0_ds;
 256        unsigned int gpio3a6_ds;
 257        unsigned int gpio4a0_ds;
 258        unsigned int reserved20[(0x0900 - 0x0854) / 4 - 1];
 259        unsigned int dmac0_con0;
 260        unsigned int dmac0_con1;
 261        unsigned int dmac0_con2;
 262        unsigned int dmac0_con3;
 263        unsigned int dmac0_con4;
 264        unsigned int dmac0_con5;
 265        unsigned int dmac0_con6;
 266        unsigned int dmac0_con7;
 267        unsigned int dmac0_con8;
 268        unsigned int dmac0_con9;
 269        unsigned int reserved21[(0x0940 - 0x0924) / 4 - 1];
 270        unsigned int dmac1_con0;
 271        unsigned int dmac1_con1;
 272        unsigned int dmac1_con2;
 273        unsigned int dmac1_con3;
 274        unsigned int dmac1_con4;
 275        unsigned int dmac1_con5;
 276        unsigned int dmac1_con6;
 277        unsigned int dmac1_con7;
 278        unsigned int dmac1_con8;
 279        unsigned int dmac1_con9;
 280};
 281
 282check_member(rk3568_grf, dmac1_con9, 0x0964);
 283
 284struct rk3568_pmugrf {
 285        unsigned int pmu_gpio0a_iomux_l;
 286        unsigned int pmu_gpio0a_iomux_h;
 287        unsigned int pmu_gpio0b_iomux_l;
 288        unsigned int pmu_gpio0b_iomux_h;
 289        unsigned int pmu_gpio0c_iomux_l;
 290        unsigned int pmu_gpio0c_iomux_h;
 291        unsigned int pmu_gpio0d_iomux_l;
 292        unsigned int reserved0[(0x0020 - 0x0018) / 4 - 1];
 293        unsigned int pmu_gpio0a_p;
 294        unsigned int pmu_gpio0b_p;
 295        unsigned int pmu_gpio0c_p;
 296        unsigned int pmu_gpio0d_p;
 297        unsigned int pmu_gpio0a_ie;
 298        unsigned int pmu_gpio0b_ie;
 299        unsigned int pmu_gpio0c_ie;
 300        unsigned int pmu_gpio0d_ie;
 301        unsigned int pmu_gpio0a_opd;
 302        unsigned int pmu_gpio0b_opd;
 303        unsigned int pmu_gpio0c_opd;
 304        unsigned int pmu_gpio0d_opd;
 305        unsigned int pmu_gpio0a_sus;
 306        unsigned int pmu_gpio0b_sus;
 307        unsigned int pmu_gpio0c_sus;
 308        unsigned int pmu_gpio0d_sus;
 309        unsigned int pmu_gpio0a_sl;
 310        unsigned int pmu_gpio0b_sl;
 311        unsigned int pmu_gpio0c_sl;
 312        unsigned int pmu_gpio0d_sl;
 313        unsigned int pmu_gpio0a_ds_0;
 314        unsigned int pmu_gpio0a_ds_1;
 315        unsigned int pmu_gpio0a_ds_2;
 316        unsigned int pmu_gpio0a_ds_3;
 317        unsigned int pmu_gpio0b_ds_0;
 318        unsigned int pmu_gpio0b_ds_1;
 319        unsigned int pmu_gpio0b_ds_2;
 320        unsigned int pmu_gpio0b_ds_3;
 321        unsigned int pmu_gpio0c_ds_0;
 322        unsigned int pmu_gpio0c_ds_1;
 323        unsigned int pmu_gpio0c_ds_2;
 324        unsigned int pmu_gpio0c_ds_3;
 325        unsigned int pmu_gpio0d_ds_0;
 326        unsigned int pmu_gpio0d_ds_1;
 327        unsigned int pmu_gpio0d_ds_2;
 328        unsigned int pmu_gpio0d_ds_3;
 329        unsigned int reserved1[(0x0100 - 0x00ac) / 4 - 1];
 330        unsigned int pmu_soc_con0;
 331        unsigned int pmu_soc_con1;
 332        unsigned int pmu_soc_con2;
 333        unsigned int pmu_soc_con3;
 334        unsigned int pmu_soc_con4;
 335        unsigned int pmu_soc_con5;
 336        unsigned int reserved2[(0x0124 - 0x0114) / 4 - 1];
 337        unsigned int pmu_io_vsel0;
 338        unsigned int pmu_io_vsel1;
 339        unsigned int pmu_io_vsel2;
 340        unsigned int reserved3[(0x0180 - 0x012c) / 4 - 1];
 341        unsigned int pmu_dll_con0;
 342        unsigned int reserved4[(0x0200 - 0x0180) / 4 - 1];
 343        unsigned int pmu_os_reg0;
 344        unsigned int pmu_os_reg1;
 345        unsigned int pmu_os_reg2;
 346        unsigned int pmu_os_reg3;
 347        unsigned int pmu_os_reg4;
 348        unsigned int pmu_os_reg5;
 349        unsigned int pmu_os_reg6;
 350        unsigned int pmu_os_reg7;
 351        unsigned int pmu_os_reg8;
 352        unsigned int pmu_os_reg9;
 353        unsigned int pmu_os_reg10;
 354        unsigned int pmu_os_reg11;
 355        unsigned int pmu_reset_function_status;
 356        unsigned int pmu_reset_function_clr;
 357        unsigned int reserved5[(0x0380 - 0x0234) / 4 - 1];
 358        unsigned int pmu_sig_detect_con;
 359        unsigned int reserved6[(0x0390 - 0x0380) / 4 - 1];
 360        unsigned int pmu_sig_detect_status;
 361        unsigned int reserved7[(0x03a0 - 0x0390) / 4 - 1];
 362        unsigned int pmu_sig_detect_status_clear;
 363        unsigned int reserved8[(0x03b0 - 0x03a0) / 4 - 1];
 364        unsigned int pmu_sdmmc_det_counter;
 365};
 366
 367check_member(rk3568_pmugrf, pmu_sdmmc_det_counter, 0x03b0);
 368
 369#endif
 370