1 /* $OpenBSD: prcmvar.h,v 1.9 2024/05/13 01:15:50 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 21 #define PRCM_CLK_SPEED_32 0 22 #define PRCM_CLK_SPEED_SYS 1 23 24 enum PRCM_MODULES { 25 PRCM_TIMER0, 26 PRCM_TIMER1, 27 PRCM_TIMER2, 28 PRCM_TIMER3, 29 PRCM_GPIO0, 30 PRCM_GPIO1, 31 PRCM_GPIO2, 32 PRCM_GPIO3, 33 PRCM_GPIO4, 34 PRCM_GPIO5, 35 PRCM_TPCC, 36 PRCM_TPTC0, 37 PRCM_TPTC1, 38 PRCM_TPTC2, 39 PRCM_MMC0, 40 PRCM_MMC1, 41 PRCM_MMC2, 42 PRCM_MMC3, 43 PRCM_MMC4, 44 PRCM_USB, 45 PRCM_USBTLL, 46 PRCM_USBP1_PHY, 47 PRCM_USBP1_UTMI, 48 PRCM_USBP1_HSIC, 49 PRCM_USBP2_PHY, 50 PRCM_USBP2_UTMI, 51 PRCM_USBP2_HSIC, 52 PRCM_I2C0, 53 PRCM_I2C1, 54 PRCM_I2C2, 55 PRCM_I2C3, 56 PRCM_LCDC, 57 PRCM_RNG, 58 }; 59 60 #define PRCM_REG_MAX 6 61 /* need interface for CM_AUTOIDLE */ 62