Home | History | Annotate | Line # | Download | only in clock
      1 /*	$NetBSD: pistachio-clk.h,v 1.1.1.2 2020/01/03 14:33:04 skrll Exp $	*/
      2 
      3 /* SPDX-License-Identifier: GPL-2.0-only */
      4 /*
      5  * Copyright (C) 2014 Google, Inc.
      6  */
      7 
      8 #ifndef _DT_BINDINGS_CLOCK_PISTACHIO_H
      9 #define _DT_BINDINGS_CLOCK_PISTACHIO_H
     10 
     11 /* PLLs */
     12 #define CLK_MIPS_PLL			0
     13 #define CLK_AUDIO_PLL			1
     14 #define CLK_RPU_V_PLL			2
     15 #define CLK_RPU_L_PLL			3
     16 #define CLK_SYS_PLL			4
     17 #define CLK_WIFI_PLL			5
     18 #define CLK_BT_PLL			6
     19 
     20 /* Fixed-factor clocks */
     21 #define CLK_WIFI_DIV4			16
     22 #define CLK_WIFI_DIV8			17
     23 
     24 /* Gate clocks */
     25 #define CLK_MIPS			32
     26 #define CLK_AUDIO_IN			33
     27 #define CLK_AUDIO			34
     28 #define CLK_I2S				35
     29 #define CLK_SPDIF			36
     30 #define CLK_AUDIO_DAC			37
     31 #define CLK_RPU_V			38
     32 #define CLK_RPU_L			39
     33 #define CLK_RPU_SLEEP			40
     34 #define CLK_WIFI_PLL_GATE		41
     35 #define CLK_RPU_CORE			42
     36 #define CLK_WIFI_ADC			43
     37 #define CLK_WIFI_DAC			44
     38 #define CLK_USB_PHY			45
     39 #define CLK_ENET_IN			46
     40 #define CLK_ENET			47
     41 #define CLK_UART0			48
     42 #define CLK_UART1			49
     43 #define CLK_PERIPH_SYS			50
     44 #define CLK_SPI0			51
     45 #define CLK_SPI1			52
     46 #define CLK_EVENT_TIMER			53
     47 #define CLK_AUX_ADC_INTERNAL		54
     48 #define CLK_AUX_ADC			55
     49 #define CLK_SD_HOST			56
     50 #define CLK_BT				57
     51 #define CLK_BT_DIV4			58
     52 #define CLK_BT_DIV8			59
     53 #define CLK_BT_1MHZ			60
     54 
     55 /* Divider clocks */
     56 #define CLK_MIPS_INTERNAL_DIV		64
     57 #define CLK_MIPS_DIV			65
     58 #define CLK_AUDIO_DIV			66
     59 #define CLK_I2S_DIV			67
     60 #define CLK_SPDIF_DIV			68
     61 #define CLK_AUDIO_DAC_DIV		69
     62 #define CLK_RPU_V_DIV			70
     63 #define CLK_RPU_L_DIV			71
     64 #define CLK_RPU_SLEEP_DIV		72
     65 #define CLK_RPU_CORE_DIV		73
     66 #define CLK_USB_PHY_DIV			74
     67 #define CLK_ENET_DIV			75
     68 #define CLK_UART0_INTERNAL_DIV		76
     69 #define CLK_UART0_DIV			77
     70 #define CLK_UART1_INTERNAL_DIV		78
     71 #define CLK_UART1_DIV			79
     72 #define CLK_SYS_INTERNAL_DIV		80
     73 #define CLK_SPI0_INTERNAL_DIV		81
     74 #define CLK_SPI0_DIV			82
     75 #define CLK_SPI1_INTERNAL_DIV		83
     76 #define CLK_SPI1_DIV			84
     77 #define CLK_EVENT_TIMER_INTERNAL_DIV	85
     78 #define CLK_EVENT_TIMER_DIV		86
     79 #define CLK_AUX_ADC_INTERNAL_DIV	87
     80 #define CLK_AUX_ADC_DIV			88
     81 #define CLK_SD_HOST_DIV			89
     82 #define CLK_BT_DIV			90
     83 #define CLK_BT_DIV4_DIV			91
     84 #define CLK_BT_DIV8_DIV			92
     85 #define CLK_BT_1MHZ_INTERNAL_DIV	93
     86 #define CLK_BT_1MHZ_DIV			94
     87 
     88 /* Mux clocks */
     89 #define CLK_AUDIO_REF_MUX		96
     90 #define CLK_MIPS_PLL_MUX		97
     91 #define CLK_AUDIO_PLL_MUX		98
     92 #define CLK_AUDIO_MUX			99
     93 #define CLK_RPU_V_PLL_MUX		100
     94 #define CLK_RPU_L_PLL_MUX		101
     95 #define CLK_RPU_L_MUX			102
     96 #define CLK_WIFI_PLL_MUX		103
     97 #define CLK_WIFI_DIV4_MUX		104
     98 #define CLK_WIFI_DIV8_MUX		105
     99 #define CLK_RPU_CORE_MUX		106
    100 #define CLK_SYS_PLL_MUX			107
    101 #define CLK_ENET_MUX			108
    102 #define CLK_EVENT_TIMER_MUX		109
    103 #define CLK_SD_HOST_MUX			110
    104 #define CLK_BT_PLL_MUX			111
    105 #define CLK_DEBUG_MUX			112
    106 
    107 #define CLK_NR_CLKS			113
    108 
    109 /* Peripheral gate clocks */
    110 #define PERIPH_CLK_SYS			0
    111 #define PERIPH_CLK_SYS_BUS		1
    112 #define PERIPH_CLK_DDR			2
    113 #define PERIPH_CLK_ROM			3
    114 #define PERIPH_CLK_COUNTER_FAST		4
    115 #define PERIPH_CLK_COUNTER_SLOW		5
    116 #define PERIPH_CLK_IR			6
    117 #define PERIPH_CLK_WD			7
    118 #define PERIPH_CLK_PDM			8
    119 #define PERIPH_CLK_PWM			9
    120 #define PERIPH_CLK_I2C0			10
    121 #define PERIPH_CLK_I2C1			11
    122 #define PERIPH_CLK_I2C2			12
    123 #define PERIPH_CLK_I2C3			13
    124 
    125 /* Peripheral divider clocks */
    126 #define PERIPH_CLK_ROM_DIV		32
    127 #define PERIPH_CLK_COUNTER_FAST_DIV	33
    128 #define PERIPH_CLK_COUNTER_SLOW_PRE_DIV	34
    129 #define PERIPH_CLK_COUNTER_SLOW_DIV	35
    130 #define PERIPH_CLK_IR_PRE_DIV		36
    131 #define PERIPH_CLK_IR_DIV		37
    132 #define PERIPH_CLK_WD_PRE_DIV		38
    133 #define PERIPH_CLK_WD_DIV		39
    134 #define PERIPH_CLK_PDM_PRE_DIV		40
    135 #define PERIPH_CLK_PDM_DIV		41
    136 #define PERIPH_CLK_PWM_PRE_DIV		42
    137 #define PERIPH_CLK_PWM_DIV		43
    138 #define PERIPH_CLK_I2C0_PRE_DIV		44
    139 #define PERIPH_CLK_I2C0_DIV		45
    140 #define PERIPH_CLK_I2C1_PRE_DIV		46
    141 #define PERIPH_CLK_I2C1_DIV		47
    142 #define PERIPH_CLK_I2C2_PRE_DIV		48
    143 #define PERIPH_CLK_I2C2_DIV		49
    144 #define PERIPH_CLK_I2C3_PRE_DIV		50
    145 #define PERIPH_CLK_I2C3_DIV		51
    146 
    147 #define PERIPH_CLK_NR_CLKS		52
    148 
    149 /* System gate clocks */
    150 #define SYS_CLK_I2C0			0
    151 #define SYS_CLK_I2C1			1
    152 #define SYS_CLK_I2C2			2
    153 #define SYS_CLK_I2C3			3
    154 #define SYS_CLK_I2S_IN			4
    155 #define SYS_CLK_PAUD_OUT		5
    156 #define SYS_CLK_SPDIF_OUT		6
    157 #define SYS_CLK_SPI0_MASTER		7
    158 #define SYS_CLK_SPI0_SLAVE		8
    159 #define SYS_CLK_PWM			9
    160 #define SYS_CLK_UART0			10
    161 #define SYS_CLK_UART1			11
    162 #define SYS_CLK_SPI1			12
    163 #define SYS_CLK_MDC			13
    164 #define SYS_CLK_SD_HOST			14
    165 #define SYS_CLK_ENET			15
    166 #define SYS_CLK_IR			16
    167 #define SYS_CLK_WD			17
    168 #define SYS_CLK_TIMER			18
    169 #define SYS_CLK_I2S_OUT			24
    170 #define SYS_CLK_SPDIF_IN		25
    171 #define SYS_CLK_EVENT_TIMER		26
    172 #define SYS_CLK_HASH			27
    173 
    174 #define SYS_CLK_NR_CLKS			28
    175 
    176 /* Gates for external input clocks */
    177 #define EXT_CLK_AUDIO_IN		0
    178 #define EXT_CLK_ENET_IN			1
    179 
    180 #define EXT_CLK_NR_CLKS			2
    181 
    182 #endif /* _DT_BINDINGS_CLOCK_PISTACHIO_H */
    183