1*2b27bdccSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 28926fa4fSEduardo Valentin /* 38926fa4fSEduardo Valentin * DRA752 bandgap registers, bitfields and temperature definitions 48926fa4fSEduardo Valentin * 58926fa4fSEduardo Valentin * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ 68926fa4fSEduardo Valentin * Contact: 78926fa4fSEduardo Valentin * Eduardo Valentin <eduardo.valentin@ti.com> 88926fa4fSEduardo Valentin * Tero Kristo <t-kristo@ti.com> 98926fa4fSEduardo Valentin * 108926fa4fSEduardo Valentin * This is an auto generated file. 118926fa4fSEduardo Valentin */ 128926fa4fSEduardo Valentin #ifndef __DRA752_BANDGAP_H 138926fa4fSEduardo Valentin #define __DRA752_BANDGAP_H 148926fa4fSEduardo Valentin 158926fa4fSEduardo Valentin /** 168926fa4fSEduardo Valentin * *** DRA752 *** 178926fa4fSEduardo Valentin * 188926fa4fSEduardo Valentin * Below, in sequence, are the Register definitions, 198926fa4fSEduardo Valentin * the bitfields and the temperature definitions for DRA752. 208926fa4fSEduardo Valentin */ 218926fa4fSEduardo Valentin 228926fa4fSEduardo Valentin /** 238926fa4fSEduardo Valentin * DRA752 register definitions 248926fa4fSEduardo Valentin * 258926fa4fSEduardo Valentin * Registers are defined as offsets. The offsets are 268926fa4fSEduardo Valentin * relative to FUSE_OPP_BGAP_GPU on DRA752. 278926fa4fSEduardo Valentin * DRA752_BANDGAP_BASE 0x4a0021e0 288926fa4fSEduardo Valentin * 298926fa4fSEduardo Valentin * Register below are grouped by domain (not necessarily in offset order) 308926fa4fSEduardo Valentin */ 318926fa4fSEduardo Valentin 328926fa4fSEduardo Valentin 338926fa4fSEduardo Valentin /* DRA752.common register offsets */ 348926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_OFFSET 0x1a0 358926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_1_OFFSET 0x1c8 368926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_2_OFFSET 0x39c 378926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_2_OFFSET 0x3b8 388926fa4fSEduardo Valentin 398926fa4fSEduardo Valentin /* DRA752.core register offsets */ 408926fa4fSEduardo Valentin #define DRA752_STD_FUSE_OPP_BGAP_CORE_OFFSET 0x8 418926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_CORE_OFFSET 0x154 428926fa4fSEduardo Valentin #define DRA752_BANDGAP_THRESHOLD_CORE_OFFSET 0x1ac 438926fa4fSEduardo Valentin #define DRA752_DTEMP_CORE_1_OFFSET 0x20c 448926fa4fSEduardo Valentin #define DRA752_DTEMP_CORE_2_OFFSET 0x210 458926fa4fSEduardo Valentin 468926fa4fSEduardo Valentin /* DRA752.iva register offsets */ 478926fa4fSEduardo Valentin #define DRA752_STD_FUSE_OPP_BGAP_IVA_OFFSET 0x388 488926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_IVA_OFFSET 0x398 498926fa4fSEduardo Valentin #define DRA752_BANDGAP_THRESHOLD_IVA_OFFSET 0x3a4 508926fa4fSEduardo Valentin #define DRA752_DTEMP_IVA_1_OFFSET 0x3d4 518926fa4fSEduardo Valentin #define DRA752_DTEMP_IVA_2_OFFSET 0x3d8 528926fa4fSEduardo Valentin 538926fa4fSEduardo Valentin /* DRA752.mpu register offsets */ 548926fa4fSEduardo Valentin #define DRA752_STD_FUSE_OPP_BGAP_MPU_OFFSET 0x4 558926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_MPU_OFFSET 0x14c 568926fa4fSEduardo Valentin #define DRA752_BANDGAP_THRESHOLD_MPU_OFFSET 0x1a4 578926fa4fSEduardo Valentin #define DRA752_DTEMP_MPU_1_OFFSET 0x1e4 588926fa4fSEduardo Valentin #define DRA752_DTEMP_MPU_2_OFFSET 0x1e8 598926fa4fSEduardo Valentin 608926fa4fSEduardo Valentin /* DRA752.dspeve register offsets */ 618926fa4fSEduardo Valentin #define DRA752_STD_FUSE_OPP_BGAP_DSPEVE_OFFSET 0x384 628926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_DSPEVE_OFFSET 0x394 638926fa4fSEduardo Valentin #define DRA752_BANDGAP_THRESHOLD_DSPEVE_OFFSET 0x3a0 648926fa4fSEduardo Valentin #define DRA752_DTEMP_DSPEVE_1_OFFSET 0x3c0 658926fa4fSEduardo Valentin #define DRA752_DTEMP_DSPEVE_2_OFFSET 0x3c4 668926fa4fSEduardo Valentin 678926fa4fSEduardo Valentin /* DRA752.gpu register offsets */ 688926fa4fSEduardo Valentin #define DRA752_STD_FUSE_OPP_BGAP_GPU_OFFSET 0x0 698926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_GPU_OFFSET 0x150 708926fa4fSEduardo Valentin #define DRA752_BANDGAP_THRESHOLD_GPU_OFFSET 0x1a8 718926fa4fSEduardo Valentin #define DRA752_DTEMP_GPU_1_OFFSET 0x1f8 728926fa4fSEduardo Valentin #define DRA752_DTEMP_GPU_2_OFFSET 0x1fc 738926fa4fSEduardo Valentin 748926fa4fSEduardo Valentin /** 758926fa4fSEduardo Valentin * Register bitfields for DRA752 768926fa4fSEduardo Valentin * 778926fa4fSEduardo Valentin * All the macros bellow define the required bits for 788926fa4fSEduardo Valentin * controlling temperature on DRA752. Bit defines are 798926fa4fSEduardo Valentin * grouped by register. 808926fa4fSEduardo Valentin */ 818926fa4fSEduardo Valentin 828926fa4fSEduardo Valentin /* DRA752.BANDGAP_STATUS_1 */ 838926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_1_HOT_CORE_MASK BIT(5) 848926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_1_COLD_CORE_MASK BIT(4) 858926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_1_HOT_GPU_MASK BIT(3) 868926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_1_COLD_GPU_MASK BIT(2) 878926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_1_HOT_MPU_MASK BIT(1) 888926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_1_COLD_MPU_MASK BIT(0) 898926fa4fSEduardo Valentin 908926fa4fSEduardo Valentin /* DRA752.BANDGAP_CTRL_2 */ 918926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_2_FREEZE_IVA_MASK BIT(22) 928926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_2_FREEZE_DSPEVE_MASK BIT(21) 938926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_2_MASK_HOT_IVA_MASK BIT(3) 948926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_2_MASK_COLD_IVA_MASK BIT(2) 958926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_2_MASK_HOT_DSPEVE_MASK BIT(1) 968926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_2_MASK_COLD_DSPEVE_MASK BIT(0) 978926fa4fSEduardo Valentin 988926fa4fSEduardo Valentin /* DRA752.BANDGAP_STATUS_2 */ 998926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_2_HOT_IVA_MASK BIT(3) 1008926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_2_COLD_IVA_MASK BIT(2) 1018926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_2_HOT_DSPEVE_MASK BIT(1) 1028926fa4fSEduardo Valentin #define DRA752_BANDGAP_STATUS_2_COLD_DSPEVE_MASK BIT(0) 1038926fa4fSEduardo Valentin 1048926fa4fSEduardo Valentin /* DRA752.BANDGAP_CTRL_1 */ 1058926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_COUNTER_DELAY_MASK (0x7 << 27) 1068926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_FREEZE_CORE_MASK BIT(23) 1078926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_FREEZE_GPU_MASK BIT(22) 1088926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_FREEZE_MPU_MASK BIT(21) 1098926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_MASK_HOT_CORE_MASK BIT(5) 1108926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_MASK_COLD_CORE_MASK BIT(4) 1118926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_MASK_HOT_GPU_MASK BIT(3) 1128926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_MASK_COLD_GPU_MASK BIT(2) 1138926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_MASK_HOT_MPU_MASK BIT(1) 1148926fa4fSEduardo Valentin #define DRA752_BANDGAP_CTRL_1_MASK_COLD_MPU_MASK BIT(0) 1158926fa4fSEduardo Valentin 1168926fa4fSEduardo Valentin /* DRA752.TEMP_SENSOR */ 1178926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_TMPSOFF_MASK BIT(11) 1188926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_EOCZ_MASK BIT(10) 1198926fa4fSEduardo Valentin #define DRA752_TEMP_SENSOR_DTEMP_MASK (0x3ff << 0) 1208926fa4fSEduardo Valentin 1218926fa4fSEduardo Valentin /* DRA752.BANDGAP_THRESHOLD */ 1228926fa4fSEduardo Valentin #define DRA752_BANDGAP_THRESHOLD_HOT_MASK (0x3ff << 16) 1238926fa4fSEduardo Valentin #define DRA752_BANDGAP_THRESHOLD_COLD_MASK (0x3ff << 0) 1248926fa4fSEduardo Valentin 1258926fa4fSEduardo Valentin /** 1268926fa4fSEduardo Valentin * Temperature limits and thresholds for DRA752 1278926fa4fSEduardo Valentin * 1288926fa4fSEduardo Valentin * All the macros bellow are definitions for handling the 1298926fa4fSEduardo Valentin * ADC conversions and representation of temperature limits 1308926fa4fSEduardo Valentin * and thresholds for DRA752. Definitions are grouped 1318926fa4fSEduardo Valentin * by temperature domain. 1328926fa4fSEduardo Valentin */ 1338926fa4fSEduardo Valentin 1348926fa4fSEduardo Valentin /* DRA752.common temperature definitions */ 1358926fa4fSEduardo Valentin /* ADC conversion table limits */ 1368926fa4fSEduardo Valentin #define DRA752_ADC_START_VALUE 540 1378926fa4fSEduardo Valentin #define DRA752_ADC_END_VALUE 945 1388926fa4fSEduardo Valentin 1398926fa4fSEduardo Valentin /* DRA752.GPU temperature definitions */ 1408926fa4fSEduardo Valentin /* bandgap clock limits */ 1418926fa4fSEduardo Valentin #define DRA752_GPU_MAX_FREQ 1500000 1428926fa4fSEduardo Valentin #define DRA752_GPU_MIN_FREQ 1000000 1438926fa4fSEduardo Valentin /* interrupts thresholds */ 1448926fa4fSEduardo Valentin #define DRA752_GPU_T_HOT 800 1458926fa4fSEduardo Valentin #define DRA752_GPU_T_COLD 795 1468926fa4fSEduardo Valentin 1478926fa4fSEduardo Valentin /* DRA752.MPU temperature definitions */ 1488926fa4fSEduardo Valentin /* bandgap clock limits */ 1498926fa4fSEduardo Valentin #define DRA752_MPU_MAX_FREQ 1500000 1508926fa4fSEduardo Valentin #define DRA752_MPU_MIN_FREQ 1000000 1518926fa4fSEduardo Valentin /* interrupts thresholds */ 1528926fa4fSEduardo Valentin #define DRA752_MPU_T_HOT 800 1538926fa4fSEduardo Valentin #define DRA752_MPU_T_COLD 795 1548926fa4fSEduardo Valentin 1558926fa4fSEduardo Valentin /* DRA752.CORE temperature definitions */ 1568926fa4fSEduardo Valentin /* bandgap clock limits */ 1578926fa4fSEduardo Valentin #define DRA752_CORE_MAX_FREQ 1500000 1588926fa4fSEduardo Valentin #define DRA752_CORE_MIN_FREQ 1000000 1598926fa4fSEduardo Valentin /* interrupts thresholds */ 1608926fa4fSEduardo Valentin #define DRA752_CORE_T_HOT 800 1618926fa4fSEduardo Valentin #define DRA752_CORE_T_COLD 795 1628926fa4fSEduardo Valentin 1638926fa4fSEduardo Valentin /* DRA752.DSPEVE temperature definitions */ 1648926fa4fSEduardo Valentin /* bandgap clock limits */ 1658926fa4fSEduardo Valentin #define DRA752_DSPEVE_MAX_FREQ 1500000 1668926fa4fSEduardo Valentin #define DRA752_DSPEVE_MIN_FREQ 1000000 1678926fa4fSEduardo Valentin /* interrupts thresholds */ 1688926fa4fSEduardo Valentin #define DRA752_DSPEVE_T_HOT 800 1698926fa4fSEduardo Valentin #define DRA752_DSPEVE_T_COLD 795 1708926fa4fSEduardo Valentin 1718926fa4fSEduardo Valentin /* DRA752.IVA temperature definitions */ 1728926fa4fSEduardo Valentin /* bandgap clock limits */ 1738926fa4fSEduardo Valentin #define DRA752_IVA_MAX_FREQ 1500000 1748926fa4fSEduardo Valentin #define DRA752_IVA_MIN_FREQ 1000000 1758926fa4fSEduardo Valentin /* interrupts thresholds */ 1768926fa4fSEduardo Valentin #define DRA752_IVA_T_HOT 800 1778926fa4fSEduardo Valentin #define DRA752_IVA_T_COLD 795 1788926fa4fSEduardo Valentin 1798926fa4fSEduardo Valentin #endif /* __DRA752_BANDGAP_H */ 180