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