From f0a00f685a6a5368c4ade01d55c24b81c7a938c2 Mon Sep 17 00:00:00 2001 From: Gregory Nutt Date: Sat, 28 Feb 2015 11:54:47 -0600 Subject: [PATCH] PIC32MZ: Fix some configuration settings and POSC mode should be external clock --- arch/mips/src/pic32mz/chip/pic32mzec-features.h | 2 ++ arch/mips/src/pic32mz/pic32mz-config.h | 10 +++++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/arch/mips/src/pic32mz/chip/pic32mzec-features.h b/arch/mips/src/pic32mz/chip/pic32mzec-features.h index 7ff41004435..7cc9b2634af 100644 --- a/arch/mips/src/pic32mz/chip/pic32mzec-features.h +++ b/arch/mips/src/pic32mz/chip/pic32mzec-features.h @@ -439,6 +439,8 @@ #define DEVCFG1_DMTCNT_SHIFT (26) /* Bits 26-30: Deadman Timer Count Select bits */ #define DEVCFG1_DMTCNT_MASK (31 << DEVCFG1_DMTCNT_SHIFT) # define DEVCFG1_DMTCNT(n) ((uint32_t)((n)-8) << DEVCFG1_DMTCNT_SHIFT) /* 2**n, n=8..31 */ +# define DEVCFG1_DMTCNT_MIN (0 << DEVCFG1_DMTCNT_SHIFT) /* 2**8 (256) */ +# define DEVCFG1_DMTCNT_MAX (12 << DEVCFG1_DMTCNT_SHIFT) /* 2**318 (2147483648) */ #define DEVCFG1_FDMTEN (1 << 31) /* Bit 31: Deadman Timer enable bit */ #define DEVCFG1_RWO 0x00003800 /* Bits 11-13: Reserved, write as one */ diff --git a/arch/mips/src/pic32mz/pic32mz-config.h b/arch/mips/src/pic32mz/pic32mz-config.h index 38c49798ca5..5440fecaf8d 100644 --- a/arch/mips/src/pic32mz/pic32mz-config.h +++ b/arch/mips/src/pic32mz/pic32mz-config.h @@ -211,13 +211,13 @@ #if (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 5000000 # error BOARD_PLL_INPUT / BOARD_PLL_IDIV too low # define CONFIG_PIC32MZ_FPLLRNG DEVCFG2_FPLLRNG_BYPASS /* < 5 MHz */ -#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 9000000 +#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 8000000 # define CONFIG_PIC32MZ_FPLLRNG DEVCFG2_FPLLRNG_5_10MHZ /* 5-10 MHz */ -#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 14500000 +#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 13000000 # define CONFIG_PIC32MZ_FPLLRNG DEVCFG2_FPLLRNG_8_16MHZ /* 8-16 MHz */ -#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 23500000 +#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 210000000 # define CONFIG_PIC32MZ_FPLLRNG DEVCFG2_FPLLRNG_13_26MHZ /* 13-26 MHz */ -#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 39000000 +#elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 36000000 # define CONFIG_PIC32MZ_FPLLRNG DEVCFG2_FPLLRNG_21_42MHZ /* 21-42 MHz */ #elif (BOARD_PLL_INPUT / BOARD_PLL_IDIV) < 64000000 # define CONFIG_PIC32MZ_FPLLRNG DEVCFG2_FPLLRNG_34_64MHZ /* 36-64 MHz */ @@ -393,7 +393,7 @@ #define CONFIG_PIC32MZ_WDTSPGM DEVCFG1_WDTSPGM_STOP #define CONFIG_PIC32MZ_WINDIS DEVCFG1_WDT_NORMAL #define CONFIG_PIC32MZ_FWDTWINSZ DEVCFG1_FWDTWINSZ_25 -#define CONFIG_PIC32MZ_DMTCNT DEVCFG1_DMTCNT_MASK +#define CONFIG_PIC32MZ_DMTCNT DEVCFG1_DMTCNT_MAX #define CONFIG_PIC32MZ_FDMTEN 0 /* DEVCFG0 */