1 /* $OpenBSD: prcmvar.h,v 1.6 2016/07/18 15:03:01 jsg Exp $ */ 2 /* 3 * Copyright (c) 2007,2009 Dale Rahn <drahn@openbsd.org> 4 * 5 * Permission to use, copy, modify, and distribute this software for any 6 * purpose with or without fee is hereby granted, provided that the above 7 * copyright notice and this permission notice appear in all copies. 8 * 9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 */ 17 18 void prcm_setclock(int clock, int speed); 19 void prcm_enablemodule(int mod); 20 void prcm_disablemodule(int mod); 21 22 #define PRCM_CLK_SPEED_32 0 23 #define PRCM_CLK_SPEED_SYS 1 24 25 enum PRCM_MODULES { 26 PRCM_TIMER0, 27 PRCM_TIMER1, 28 PRCM_TIMER2, 29 PRCM_TIMER3, 30 PRCM_GPIO0, 31 PRCM_GPIO1, 32 PRCM_GPIO2, 33 PRCM_GPIO3, 34 PRCM_GPIO4, 35 PRCM_GPIO5, 36 PRCM_TPCC, 37 PRCM_TPTC0, 38 PRCM_TPTC1, 39 PRCM_TPTC2, 40 PRCM_MMC0, 41 PRCM_MMC1, 42 PRCM_MMC2, 43 PRCM_MMC3, 44 PRCM_MMC4, 45 PRCM_USB, 46 PRCM_USBTLL, 47 PRCM_USBP1_PHY, 48 PRCM_USBP1_UTMI, 49 PRCM_USBP1_HSIC, 50 PRCM_USBP2_PHY, 51 PRCM_USBP2_UTMI, 52 PRCM_USBP2_HSIC, 53 PRCM_I2C0, 54 PRCM_I2C1, 55 PRCM_I2C2, 56 PRCM_I2C3, 57 }; 58 59 #define PRCM_REG_MAX 6 60 /* need interface for CM_AUTOIDLE */ 61