Module Name: src
Committed By: hkenken
Date: Wed Jun 20 07:05:37 UTC 2018
Modified Files:
src/sys/arch/arm/imx: files.imx6 imx6_ccm.c imx6_ccmreg.h imx6_reg.h
src/sys/arch/evbarm/nitrogen6: nitrogen6_usb.c
Log Message:
Modified CCM register defines.
To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/arm/imx/files.imx6
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/arm/imx/imx6_ccm.c
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/arm/imx/imx6_ccmreg.h \
src/sys/arch/arm/imx/imx6_reg.h
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/evbarm/nitrogen6/nitrogen6_usb.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/arm/imx/files.imx6
diff -u src/sys/arch/arm/imx/files.imx6:1.13 src/sys/arch/arm/imx/files.imx6:1.14
--- src/sys/arch/arm/imx/files.imx6:1.13 Sat Mar 17 18:34:09 2018
+++ src/sys/arch/arm/imx/files.imx6 Wed Jun 20 07:05:37 2018
@@ -1,4 +1,4 @@
-# $NetBSD: files.imx6,v 1.13 2018/03/17 18:34:09 ryo Exp $
+# $NetBSD: files.imx6,v 1.14 2018/06/20 07:05:37 hkenken Exp $
#
# Configuration info for the Freescale i.MX6
#
@@ -36,6 +36,8 @@ device imxccm
attach imxccm at axi
file arch/arm/imx/imx6_ccm.c imxccm needs-flag
defflag opt_imx6clk.h IMXCCMDEBUG
+defparam opt_imx6clk.h IMX6_OSC_FREQ
+defparam opt_imx6clk.h IMX6_CKIL_FREQ
# iMX6 Enhanced Periodic Interrupt Timer
device imxclock
Index: src/sys/arch/arm/imx/imx6_ccm.c
diff -u src/sys/arch/arm/imx/imx6_ccm.c:1.8 src/sys/arch/arm/imx/imx6_ccm.c:1.9
--- src/sys/arch/arm/imx/imx6_ccm.c:1.8 Wed May 23 10:42:05 2018
+++ src/sys/arch/arm/imx/imx6_ccm.c Wed Jun 20 07:05:37 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: imx6_ccm.c,v 1.8 2018/05/23 10:42:05 hkenken Exp $ */
+/* $NetBSD: imx6_ccm.c,v 1.9 2018/06/20 07:05:37 hkenken Exp $ */
/*
* Copyright (c) 2010-2012, 2014 Genetec Corporation. All rights reserved.
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: imx6_ccm.c,v 1.8 2018/05/23 10:42:05 hkenken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: imx6_ccm.c,v 1.9 2018/06/20 07:05:37 hkenken Exp $");
#include "opt_imx.h"
#include "opt_imx6clk.h"
@@ -556,7 +556,7 @@ imx6_get_clock(enum imx6_clock_id clk)
break;
case IMX6CLK_PLL7:
v = imx6_ccm_analog_read(CCM_ANALOG_PLL_USB2);
- freq = IMX6_OSC_FREQ * ((v & CCM_ANALOG_PLL_USBn_DIV_SELECT) ? 22 : 20);
+ freq = IMX6_OSC_FREQ * ((v & CCM_ANALOG_PLL_DIV_SELECT) ? 22 : 20);
break;
#if 0
@@ -899,7 +899,7 @@ imx6_pll_power(uint32_t pllreg, int on,
v = imx6_ccm_analog_read(pllreg);
if (on) {
v |= en;
- v &= ~CCM_ANALOG_PLL_USBn_BYPASS;
+ v &= ~CCM_ANALOG_PLL_BYPASS;
} else {
v &= ~en;
}
Index: src/sys/arch/arm/imx/imx6_ccmreg.h
diff -u src/sys/arch/arm/imx/imx6_ccmreg.h:1.7 src/sys/arch/arm/imx/imx6_ccmreg.h:1.8
--- src/sys/arch/arm/imx/imx6_ccmreg.h:1.7 Wed May 23 10:42:05 2018
+++ src/sys/arch/arm/imx/imx6_ccmreg.h Wed Jun 20 07:05:37 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: imx6_ccmreg.h,v 1.7 2018/05/23 10:42:05 hkenken Exp $ */
+/* $NetBSD: imx6_ccmreg.h,v 1.8 2018/06/20 07:05:37 hkenken Exp $ */
/*
* Copyright (c) 2014 Ryo Shimizu <[email protected]>
@@ -44,6 +44,9 @@
#ifndef IMX6_OSC_FREQ
#define IMX6_OSC_FREQ (24 * 1000 * 1000) /* 24MHz */
#endif
+#ifndef IMX6_CKIL_FREQ
+#define IMX6_CKIL_FREQ 32768
+#endif
#define CCM_CCR 0x00000000
#define CCM_CCR_RBC_EN __BIT(27)
@@ -292,6 +295,9 @@
#define CCM_CCGR6_USBOH3_CLK_ENABLE __BITS(1, 0)
#define CCM_ANALOG_PLL_ARM 0x00000000 /* = 020c8000 */
+#define CCM_ANALOG_PLL_ARM_SET 0x00000004
+#define CCM_ANALOG_PLL_ARM_CLR 0x00000008
+#define CCM_ANALOG_PLL_ARM_TOG 0x0000000c
#define CCM_ANALOG_PLL_ARM_LOCK __BIT(31)
#define CCM_ANALOG_PLL_ARM_PLL_SEL __BIT(19)
#define CCM_ANALOG_PLL_ARM_LVDS_24MHZ_SEL __BIT(18)
@@ -302,10 +308,13 @@
#define CCM_ANALOG_PLL_ARM_POWERDOWN __BIT(12)
#define CCM_ANALOG_PLL_ARM_DIV_SELECT __BITS(6, 0)
-#define CCM_ANALOG_PLL_ARM_SET 0x00000004
-#define CCM_ANALOG_PLL_ARM_CLR 0x00000008
-#define CCM_ANALOG_PLL_ARM_TOG 0x0000000c
-#define CCM_ANALOG_PLL_ARM_DIV_SELECT __BITS(6, 0)
+#define CCM_ANALOG_PLL_LOCK __BIT(31)
+#define CCM_ANALOG_PLL_BYPASS __BIT(16)
+#define CCM_ANALOG_PLL_BYPASS_CLK_SRC __BITS(15, 14)
+#define CCM_ANALOG_PLL_ENABLE __BIT(13)
+#define CCM_ANALOG_PLL_POWER __BIT(12)
+#define CCM_ANALOG_PLL_EN_USB_CLK __BIT(6)
+#define CCM_ANALOG_PLL_DIV_SELECT __BITS(1, 0)
#define CCM_ANALOG_PLL_USB1 0x00000010
#define CCM_ANALOG_PLL_USB1_SET 0x00000014
@@ -331,14 +340,6 @@
#define CCM_ANALOG_PLL_USB2_EN_USB_CLK __BIT(6)
#define CCM_ANALOG_PLL_USB2_DIV_SELECT __BITS(1, 0)
-#define CCM_ANALOG_PLL_USBn_LOCK __BIT(31)
-#define CCM_ANALOG_PLL_USBn_BYPASS __BIT(16)
-#define CCM_ANALOG_PLL_USBn_BYPASS_CLK_SRC __BITS(15, 14)
-#define CCM_ANALOG_PLL_USBn_ENABLE __BIT(13)
-#define CCM_ANALOG_PLL_USBn_POWER __BIT(12)
-#define CCM_ANALOG_PLL_USBn_EN_USB_CLK __BIT(6)
-#define CCM_ANALOG_PLL_USBn_DIV_SELECT __BITS(1, 0)
-
#define CCM_ANALOG_PLL_SYS 0x00000030
#define CCM_ANALOG_PLL_SYS_SET 0x00000034
#define CCM_ANALOG_PLL_SYS_CLR 0x00000038
@@ -346,6 +347,7 @@
#define CCM_ANALOG_PLL_SYS_BYPASS __BIT(16)
#define CCM_ANALOG_PLL_SYS_BYPASS_CLK_SRC __BITS(15, 14)
#define CCM_ANALOG_PLL_SYS_ENABLE __BIT(13)
+#define CCM_ANALOG_PLL_SYS_POWERDOWN __BIT(12)
#define CCM_ANALOG_PLL_SYS_DIV_SELECT __BIT(0)
#define CCM_ANALOG_PLL_SYS_SS 0x00000040
#define CCM_ANALOG_PLL_SYS_NUM 0x00000050
@@ -358,6 +360,7 @@
#define CCM_ANALOG_PLL_AUDIO_BYPASS __BIT(16)
#define CCM_ANALOG_PLL_AUDIO_BYPASS_CLK_SRC __BITS(15, 14)
#define CCM_ANALOG_PLL_AUDIO_ENABLE __BIT(13)
+#define CCM_ANALOG_PLL_AUDIO_POWERDOWN __BIT(12)
#define CCM_ANALOG_PLL_AUDIO_DIV_SELECT __BITS(6, 0)
#define CCM_ANALOG_PLL_AUDIO_NUM 0x00000080
#define CCM_ANALOG_PLL_AUDIO_DENOM 0x00000090
@@ -366,6 +369,7 @@
#define CCM_ANALOG_PLL_VIDEO_BYPASS __BIT(16)
#define CCM_ANALOG_PLL_VIDEO_BYPASS_CLK_SRC __BITS(15, 14)
#define CCM_ANALOG_PLL_VIDEO_ENABLE __BIT(13)
+#define CCM_ANALOG_PLL_VIDEO_POWERDOWN __BIT(12)
#define CCM_ANALOG_PLL_VIDEO_DIV_SELECT __BITS(6, 0)
#define CCM_ANALOG_PLL_VIDEO_SET 0x000000a4
#define CCM_ANALOG_PLL_VIDEO_CLR 0x000000a8
Index: src/sys/arch/arm/imx/imx6_reg.h
diff -u src/sys/arch/arm/imx/imx6_reg.h:1.7 src/sys/arch/arm/imx/imx6_reg.h:1.8
--- src/sys/arch/arm/imx/imx6_reg.h:1.7 Thu Nov 9 05:57:23 2017
+++ src/sys/arch/arm/imx/imx6_reg.h Wed Jun 20 07:05:37 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: imx6_reg.h,v 1.7 2017/11/09 05:57:23 hkenken Exp $ */
+/* $NetBSD: imx6_reg.h,v 1.8 2018/06/20 07:05:37 hkenken Exp $ */
/*-
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -131,9 +131,10 @@
#define AIPS1_DCIC2_BASE 0x000e8000
#define AIPS1_DCIC1_BASE 0x000e4000
#define AIPS1_IOMUXC_BASE 0x000e0000
-#define AIPS1_IOMUXC_SIZE 0x00005000
+#define AIPS1_IOMUXC_SIZE 0x00004000
#define AIPS1_GPC_BASE 0x000dc000
#define AIPS1_SRC_BASE 0x000d8000
+#define AIPS1_SRC_SIZE 0x00004000
#define AIPS1_EPIT2_BASE 0x000d4000
#define AIPS1_EPIT1_BASE 0x000d0000
#define AIPS1_EPIT_SIZE 0x00000020
Index: src/sys/arch/evbarm/nitrogen6/nitrogen6_usb.c
diff -u src/sys/arch/evbarm/nitrogen6/nitrogen6_usb.c:1.3 src/sys/arch/evbarm/nitrogen6/nitrogen6_usb.c:1.4
--- src/sys/arch/evbarm/nitrogen6/nitrogen6_usb.c:1.3 Thu Nov 9 05:57:23 2017
+++ src/sys/arch/evbarm/nitrogen6/nitrogen6_usb.c Wed Jun 20 07:05:37 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: nitrogen6_usb.c,v 1.3 2017/11/09 05:57:23 hkenken Exp $ */
+/* $NetBSD: nitrogen6_usb.c,v 1.4 2018/06/20 07:05:37 hkenken Exp $ */
/*
* Copyright (c) 2013 Genetec Corporation. All rights reserved.
@@ -27,7 +27,7 @@
*
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nitrogen6_usb.c,v 1.3 2017/11/09 05:57:23 hkenken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nitrogen6_usb.c,v 1.4 2018/06/20 07:05:37 hkenken Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -127,13 +127,13 @@ init_otg(struct imxehci_softc *sc)
imx6_ccm_analog_write(USB_ANALOG_USB1_CHRG_DETECT,
USB_ANALOG_USB_CHRG_DETECT_EN_B |
USB_ANALOG_USB_CHRG_DETECT_CHK_CHRG_B);
- imx6_pll_power(CCM_ANALOG_PLL_USB1, 1, CCM_ANALOG_PLL_USBn_ENABLE);
+ imx6_pll_power(CCM_ANALOG_PLL_USB1, 1, CCM_ANALOG_PLL_ENABLE);
imx6_ccm_analog_write(CCM_ANALOG_PLL_USB1_CLR,
- CCM_ANALOG_PLL_USBn_BYPASS);
+ CCM_ANALOG_PLL_BYPASS);
imx6_ccm_analog_write(CCM_ANALOG_PLL_USB1_SET,
- CCM_ANALOG_PLL_USBn_ENABLE |
- CCM_ANALOG_PLL_USBn_POWER |
- CCM_ANALOG_PLL_USBn_EN_USB_CLK);
+ CCM_ANALOG_PLL_ENABLE |
+ CCM_ANALOG_PLL_POWER |
+ CCM_ANALOG_PLL_EN_USB_CLK);
imxehci_reset(sc);
@@ -157,11 +157,11 @@ init_h1(struct imxehci_softc *sc)
USB_ANALOG_USB_CHRG_DETECT_EN_B |
USB_ANALOG_USB_CHRG_DETECT_CHK_CHRG_B);
imx6_ccm_analog_write(CCM_ANALOG_PLL_USB2_CLR,
- CCM_ANALOG_PLL_USBn_BYPASS);
+ CCM_ANALOG_PLL_BYPASS);
imx6_ccm_analog_write(CCM_ANALOG_PLL_USB2_SET,
- CCM_ANALOG_PLL_USBn_ENABLE |
- CCM_ANALOG_PLL_USBn_POWER |
- CCM_ANALOG_PLL_USBn_EN_USB_CLK);
+ CCM_ANALOG_PLL_ENABLE |
+ CCM_ANALOG_PLL_POWER |
+ CCM_ANALOG_PLL_EN_USB_CLK);
v = bus_space_read_4(usbc->sc_iot, usbc->sc_ioh, USBNC_USB_UH1_CTRL);
v |= USBNC_USB_UH1_CTRL_OVER_CUR_POL;