Home | History | Annotate | Line # | Download | only in clock
      1 /*	$NetBSD: bcm281xx.h,v 1.1.1.1 2017/06/15 20:14:23 jmcneill Exp $	*/
      2 
      3 /*
      4  * Copyright (C) 2013 Broadcom Corporation
      5  * Copyright 2013 Linaro Limited
      6  *
      7  * This program is free software; you can redistribute it and/or
      8  * modify it under the terms of the GNU General Public License as
      9  * published by the Free Software Foundation version 2.
     10  *
     11  * This program is distributed "as is" WITHOUT ANY WARRANTY of any
     12  * kind, whether express or implied; without even the implied warranty
     13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14  * GNU General Public License for more details.
     15  */
     16 
     17 #ifndef _CLOCK_BCM281XX_H
     18 #define _CLOCK_BCM281XX_H
     19 
     20 /*
     21  * This file defines the values used to specify clocks provided by
     22  * the clock control units (CCUs) on Broadcom BCM281XX family SoCs.
     23  */
     24 
     25 /*
     26  * These are the bcm281xx CCU device tree "compatible" strings.
     27  * We're stuck with using "bcm11351" in the string because wild
     28  * cards aren't allowed, and that name was the first one defined
     29  * in this family of devices.
     30  */
     31 #define BCM281XX_DT_ROOT_CCU_COMPAT	"brcm,bcm11351-root-ccu"
     32 #define BCM281XX_DT_AON_CCU_COMPAT	"brcm,bcm11351-aon-ccu"
     33 #define BCM281XX_DT_HUB_CCU_COMPAT	"brcm,bcm11351-hub-ccu"
     34 #define BCM281XX_DT_MASTER_CCU_COMPAT	"brcm,bcm11351-master-ccu"
     35 #define BCM281XX_DT_SLAVE_CCU_COMPAT	"brcm,bcm11351-slave-ccu"
     36 
     37 /* root CCU clock ids */
     38 
     39 #define BCM281XX_ROOT_CCU_FRAC_1M		0
     40 #define BCM281XX_ROOT_CCU_CLOCK_COUNT		1
     41 
     42 /* aon CCU clock ids */
     43 
     44 #define BCM281XX_AON_CCU_HUB_TIMER		0
     45 #define BCM281XX_AON_CCU_PMU_BSC		1
     46 #define BCM281XX_AON_CCU_PMU_BSC_VAR		2
     47 #define BCM281XX_AON_CCU_CLOCK_COUNT		3
     48 
     49 /* hub CCU clock ids */
     50 
     51 #define BCM281XX_HUB_CCU_TMON_1M		0
     52 #define BCM281XX_HUB_CCU_CLOCK_COUNT		1
     53 
     54 /* master CCU clock ids */
     55 
     56 #define BCM281XX_MASTER_CCU_SDIO1		0
     57 #define BCM281XX_MASTER_CCU_SDIO2		1
     58 #define BCM281XX_MASTER_CCU_SDIO3		2
     59 #define BCM281XX_MASTER_CCU_SDIO4		3
     60 #define BCM281XX_MASTER_CCU_USB_IC		4
     61 #define BCM281XX_MASTER_CCU_HSIC2_48M		5
     62 #define BCM281XX_MASTER_CCU_HSIC2_12M		6
     63 #define BCM281XX_MASTER_CCU_CLOCK_COUNT		7
     64 
     65 /* slave CCU clock ids */
     66 
     67 #define BCM281XX_SLAVE_CCU_UARTB		0
     68 #define BCM281XX_SLAVE_CCU_UARTB2		1
     69 #define BCM281XX_SLAVE_CCU_UARTB3		2
     70 #define BCM281XX_SLAVE_CCU_UARTB4		3
     71 #define BCM281XX_SLAVE_CCU_SSP0			4
     72 #define BCM281XX_SLAVE_CCU_SSP2			5
     73 #define BCM281XX_SLAVE_CCU_BSC1			6
     74 #define BCM281XX_SLAVE_CCU_BSC2			7
     75 #define BCM281XX_SLAVE_CCU_BSC3			8
     76 #define BCM281XX_SLAVE_CCU_PWM			9
     77 #define BCM281XX_SLAVE_CCU_CLOCK_COUNT		10
     78 
     79 #endif /* _CLOCK_BCM281XX_H */
     80