In the CMSIS header file of
SDK_2.7.0_LPCXpresso54018\devices\LPC54018\LPC54018.h
the entry
SYSCON_EMCDYCTRL_CMD_DELAY_...
is not identical to the entry in the file
SDK_2.7.0_LPC54628J512\devices\LPC54628\LPC54628.h
here the entry contains an additional "L" in the name i.e. "DLY"
SYSCON_EMCDLYCTRL_CMD_DELAY_...
Can these CMSIS files be streamlined / harmonized in the next SDK release?
Many thanks
Dani
解決済! 解決策の投稿を見る。
Hi, Daniel,
I see your question, the terminology of the same register bits are defined differently in different file, so I think it is a typo, but it does not take effect on the code execution.
Anyway, I will tell the firmware team of the issue.
Thank you for pointing the issue.
BR
XiangJun Rong
FOR LPC54628.h, they are defgined as following:
/*! @name EMCDLYCTRL - EMC clock delay control */
/*! @{ */
#define SYSCON_EMCDLYCTRL_CMD_DELAY_MASK (0x1FU)
#define SYSCON_EMCDLYCTRL_CMD_DELAY_SHIFT (0U)
#define SYSCON_EMCDLYCTRL_CMD_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDLYCTRL_CMD_DELAY_SHIFT)) & SYSCON_EMCDLYCTRL_CMD_DELAY_MASK)
#define SYSCON_EMCDLYCTRL_FBCLK_DELAY_MASK (0x1F00U)
#define SYSCON_EMCDLYCTRL_FBCLK_DELAY_SHIFT (8U)
#define SYSCON_EMCDLYCTRL_FBCLK_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDLYCTRL_FBCLK_DELAY_SHIFT)) & SYSCON_EMCDLYCTRL_FBCLK_DELAY_MASK)
/*! @} */
For LPC54018.h or lpc54s018.h, they are defined as following, the L is missing for unknown reason.
/*! @name EMCDYCTRL - EMC clock delay control */
/*! @{ */
#define SYSCON_EMCDYCTRL_CMD_DELAY_MASK (0x1FU)
#define SYSCON_EMCDYCTRL_CMD_DELAY_SHIFT (0U)
#define SYSCON_EMCDYCTRL_CMD_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDYCTRL_CMD_DELAY_SHIFT)) & SYSCON_EMCDYCTRL_CMD_DELAY_MASK)
#define SYSCON_EMCDYCTRL_FBCLK_DELAY_MASK (0x1F00U)
#define SYSCON_EMCDYCTRL_FBCLK_DELAY_SHIFT (8U)
#define SYSCON_EMCDYCTRL_FBCLK_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDYCTRL_FBCLK_DELAY_SHIFT)) & SYSCON_EMCDYCTRL_FBCLK_DELAY_MASK)
/*! @} */
Hi, Daniel,
I see your question, the terminology of the same register bits are defined differently in different file, so I think it is a typo, but it does not take effect on the code execution.
Anyway, I will tell the firmware team of the issue.
Thank you for pointing the issue.
BR
XiangJun Rong
FOR LPC54628.h, they are defgined as following:
/*! @name EMCDLYCTRL - EMC clock delay control */
/*! @{ */
#define SYSCON_EMCDLYCTRL_CMD_DELAY_MASK (0x1FU)
#define SYSCON_EMCDLYCTRL_CMD_DELAY_SHIFT (0U)
#define SYSCON_EMCDLYCTRL_CMD_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDLYCTRL_CMD_DELAY_SHIFT)) & SYSCON_EMCDLYCTRL_CMD_DELAY_MASK)
#define SYSCON_EMCDLYCTRL_FBCLK_DELAY_MASK (0x1F00U)
#define SYSCON_EMCDLYCTRL_FBCLK_DELAY_SHIFT (8U)
#define SYSCON_EMCDLYCTRL_FBCLK_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDLYCTRL_FBCLK_DELAY_SHIFT)) & SYSCON_EMCDLYCTRL_FBCLK_DELAY_MASK)
/*! @} */
For LPC54018.h or lpc54s018.h, they are defined as following, the L is missing for unknown reason.
/*! @name EMCDYCTRL - EMC clock delay control */
/*! @{ */
#define SYSCON_EMCDYCTRL_CMD_DELAY_MASK (0x1FU)
#define SYSCON_EMCDYCTRL_CMD_DELAY_SHIFT (0U)
#define SYSCON_EMCDYCTRL_CMD_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDYCTRL_CMD_DELAY_SHIFT)) & SYSCON_EMCDYCTRL_CMD_DELAY_MASK)
#define SYSCON_EMCDYCTRL_FBCLK_DELAY_MASK (0x1F00U)
#define SYSCON_EMCDYCTRL_FBCLK_DELAY_SHIFT (8U)
#define SYSCON_EMCDYCTRL_FBCLK_DELAY(x) (((uint32_t)(((uint32_t)(x)) << SYSCON_EMCDYCTRL_FBCLK_DELAY_SHIFT)) & SYSCON_EMCDYCTRL_FBCLK_DELAY_MASK)
/*! @} */