Other Parts Discussed in Thread: SYSCONFIG, DRV8316
Tool/software:
Dear TI Support Team,
I am encountering an issue with the CPTS (SOC_RcmPeripheralId_CPTS) clock configuration after modifying the AM2612 CPU frequency to 400MHz.
typedef enum SOC_RcmPeripheralId_e { /** * \brief Value specifying MCAN0 */ SOC_RcmPeripheralId_MCAN0, /** * \brief Value specifying MCAN1 */ SOC_RcmPeripheralId_MCAN1, /** * \brief Value specifying OSPI0 */ SOC_RcmPeripheralId_OSPI0, /** * \brief Value specifying OSPI0 */ SOC_RcmPeripheralId_OSPI1, /** * \brief Value specifying RTI0 */ SOC_RcmPeripheralId_RTI0, /** * \brief Value specifying RTI1 */ SOC_RcmPeripheralId_RTI1, /** * \brief Value specifying RTI2 */ SOC_RcmPeripheralId_RTI2, /** * \brief Value specifying RTI3 */ SOC_RcmPeripheralId_RTI3, /** * \brief Value specifying WDT0 */ SOC_RcmPeripheralId_WDT0, /** * \brief Value specifying WDT1 */ SOC_RcmPeripheralId_WDT1, /** * \brief Value specifying MCSPI0 */ SOC_RcmPeripheralId_MCSPI0, /** * \brief Value specifying MCSPI1 */ SOC_RcmPeripheralId_MCSPI1, /** * \brief Value specifying MCSPI2 */ SOC_RcmPeripheralId_MCSPI2, /** * \brief Value specifying MCSPI3 */ SOC_RcmPeripheralId_MCSPI3, /** * \brief Value specifying MMC0 */ SOC_RcmPeripheralId_MMC0, /** * \brief Value specifying ICSSM0_CORE */ SOC_RcmPeripheralId_ICSSM0_CORE, /** * \brief Value specifying ICSSM0_UART0 */ SOC_RcmPeripheralId_ICSSM0_UART0, /** * \brief Value specifying ICSSM1_CORE */ SOC_RcmPeripheralId_ICSSM1_CORE, /** * \brief Value specifying ICSSM1_UART0 */ SOC_RcmPeripheralId_ICSSM1_UART0, /** * \brief Value specifying CPTS */ SOC_RcmPeripheralId_CPTS, /** * \brief Value specifying GPMC */ SOC_RcmPeripheralId_GPMC, /** * \brief Value specifying CONTROLSS_PLL */ SOC_RcmPeripheralId_CONTROLSS_PLL, /** * \brief Value specifying I2C */ SOC_RcmPeripheralId_I2C, /** * \brief Value specifying LIN0_UART0 */ SOC_RcmPeripheralId_LIN0_UART0, /** * \brief Value specifying LIN1_UART1 */ SOC_RcmPeripheralId_LIN1_UART1, /** * \brief Value specifying LIN2_UART2 */ SOC_RcmPeripheralId_LIN2_UART2, /** * \brief Value specifying LIN3_UART3 */ SOC_RcmPeripheralId_LIN3_UART3, }SOC_RcmPeripheralId;
I have attached my SysConfig files and clock settings for reference
/** * These arguments were used when this file was generated. They will be automatically applied on subsequent loads * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments. * @cliArgs --device "AM261x_ZCZ" --part "AM2612" --package "ZCZ" --context "r5fss0-0" --product "MCU_PLUS_SDK_AM261x@10.00.01" * @v2CliArgs --device "AM2612" --package "NFBGA (ZCZ)" --context "r5fss0-0" --product "MCU_PLUS_SDK_AM261x@10.00.01" * @versions {"tool":"1.22.0+3893"} */ /** * Import the modules used in this configuration. */ const flash = scripting.addModule("/board/flash/flash", {}, false); const flash1 = flash.addInstance(); const ioexp = scripting.addModule("/board/ioexp/ioexp", {}, false); const ioexp1 = ioexp.addInstance(); const adc = scripting.addModule("/drivers/adc/adc", {}, false); const adc1 = adc.addInstance(); const adc2 = adc.addInstance(); const adc3 = adc.addInstance(); const edma = scripting.addModule("/drivers/edma/edma", {}, false); const edma1 = edma.addInstance(); const epwm = scripting.addModule("/drivers/epwm/epwm", {}, false); const epwm1 = epwm.addInstance(); const epwm2 = epwm.addInstance(); const gpio = scripting.addModule("/drivers/gpio/gpio", {}, false); const gpio1 = gpio.addInstance(); const gpio2 = gpio.addInstance(); const gpio3 = gpio.addInstance(); const gpio4 = gpio.addInstance(); const gpio5 = gpio.addInstance(); const gpio6 = gpio.addInstance(); const gpio7 = gpio.addInstance(); const gpio8 = gpio.addInstance(); const gpio9 = gpio.addInstance(); const gpio10 = gpio.addInstance(); const gpio11 = gpio.addInstance(); const gpio12 = gpio.addInstance(); const gpio13 = gpio.addInstance(); const gpio14 = gpio.addInstance(); const gpio15 = gpio.addInstance(); const gpio16 = gpio.addInstance(); const gpio17 = gpio.addInstance(); const gpio18 = gpio.addInstance(); const gpio19 = gpio.addInstance(); const gpio20 = gpio.addInstance(); const gpio21 = gpio.addInstance(); const gpio22 = gpio.addInstance(); const gpio23 = gpio.addInstance(); const gpio24 = gpio.addInstance(); const gpio25 = gpio.addInstance(); const i2c = scripting.addModule("/drivers/i2c/i2c", {}, false); const i2c1 = i2c.addInstance(); const i2c2 = i2c.addInstance(); const mcan = scripting.addModule("/drivers/mcan/mcan", {}, false); const mcan1 = mcan.addInstance(); const mcspi = scripting.addModule("/drivers/mcspi/mcspi", {}, false); const mcspi1 = mcspi.addInstance(); const mcspi2 = mcspi.addInstance(); const mcspi3 = mcspi.addInstance(); const mcspi4 = mcspi.addInstance(); const rti = scripting.addModule("/drivers/rti/rti", {}, false); const rti1 = rti.addInstance(); const clock = scripting.addModule("/kernel/dpl/clock"); const debug_log = scripting.addModule("/kernel/dpl/debug_log"); const dpl_cfg = scripting.addModule("/kernel/dpl/dpl_cfg"); const mpu_armv7 = scripting.addModule("/kernel/dpl/mpu_armv7", {}, false); const mpu_armv71 = mpu_armv7.addInstance(); const mpu_armv72 = mpu_armv7.addInstance(); const mpu_armv73 = mpu_armv7.addInstance(); const mpu_armv74 = mpu_armv7.addInstance(); const mpu_armv75 = mpu_armv7.addInstance(); const mpu_armv76 = mpu_armv7.addInstance(); const mpu_armv77 = mpu_armv7.addInstance(); const default_linker = scripting.addModule("/memory_configurator/default_linker", {}, false); const default_linker1 = default_linker.addInstance(); const general = scripting.addModule("/memory_configurator/general", {}, false); const general1 = general.addInstance(); const region = scripting.addModule("/memory_configurator/region", {}, false); const region1 = region.addInstance(); const section = scripting.addModule("/memory_configurator/section", {}, false); const section1 = section.addInstance(); const section2 = section.addInstance(); const section3 = section.addInstance(); const section4 = section.addInstance(); const section5 = section.addInstance(); const section6 = section.addInstance(); const section7 = section.addInstance(); const section8 = section.addInstance(); const section9 = section.addInstance(); const section10 = section.addInstance(); const section11 = section.addInstance(); const section12 = section.addInstance(); const section13 = section.addInstance(); const section14 = section.addInstance(); const section15 = section.addInstance(); const enet_cpsw = scripting.addModule("/networking/enet_cpsw/enet_cpsw", {}, false); const enet_cpsw1 = enet_cpsw.addInstance(); const int_xbar = scripting.addModule("/xbar/int_xbar/int_xbar", {}, false); const int_xbar1 = int_xbar.addInstance(); /** * Write custom configuration values to the imported modules. */ flash1.$name = "CONFIG_FLASH0"; flash1.xspiWipRdCmd = "0x05"; flash1.device = "CUSTOM_FLASH"; flash1.flashBlockSize = 65536; flash1.flashQeType = "6"; flash1.resetType = "0x10"; flash1.dummy_cfgReg = "0x00"; flash1.proto_cfgReg = "0x00"; flash1.strDtr_cmdRegRd = "00"; flash1.strDtr_cmdRegWr = "00"; flash1.strDtr_mask = "0"; flash1.deviceBusyType = "1"; flash1.fname = "Winbond"; flash1.protocol = "1s_1s_1s"; flash1.flashManfId = "0xEF"; flash1.flashDeviceId = "0x4018"; flash1.flashSize = 16777216; flash1.cmdBlockErase4B = "0xD8"; flash1.cmdSectorErase4B = "0x20"; flash1.flashDeviceBusyTimeout = 40000000; flash1.flashPageProgTimeout = 704; flash1.addressByteSupport = "0x00"; flash1.fourByteEnableSeq = "0x00"; flash1.enable4BAddr = false; flash1.peripheralDriver.$name = "CONFIG_OSPI0"; flash1.peripheralDriver.dmaEnable = true; flash1.peripheralDriver.inputClkFreq = 83333333; flash1.peripheralDriver.baudRateDiv = 32; flash1.peripheralDriver.OSPI.$assign = "OSPI0"; flash1.peripheralDriver.OSPI.CLK.$assign = "GPIO2"; flash1.peripheralDriver.OSPI.CSn0.$assign = "GPIO0"; flash1.peripheralDriver.OSPI.DQS.$assign = "GPIO9"; flash1.peripheralDriver.OSPI.DQS.$used = false; flash1.peripheralDriver.OSPI.D7.$assign = "GPIO68"; flash1.peripheralDriver.OSPI.D7.$used = false; flash1.peripheralDriver.OSPI.D6.$assign = "GPIO8"; flash1.peripheralDriver.OSPI.D6.$used = false; flash1.peripheralDriver.OSPI.D5.$assign = "GPIO67"; flash1.peripheralDriver.OSPI.D5.$used = false; flash1.peripheralDriver.OSPI.D4.$assign = "GPIO7"; flash1.peripheralDriver.OSPI.D4.$used = false; flash1.peripheralDriver.OSPI.D3.$assign = "GPIO6"; flash1.peripheralDriver.OSPI.D2.$assign = "GPIO5"; flash1.peripheralDriver.OSPI.D1.$assign = "GPIO4"; flash1.peripheralDriver.OSPI.D0.$assign = "GPIO3"; flash1.peripheralDriver.child.$name = "drivers_ospi_v0_ospi_v0_am261x_template0"; ioexp1.$name = "CONFIG_IOEXP0"; adc1.$name = "CONFIG_ADC0"; adc1.adcClockPrescaler = "ADC_CLK_DIV_4_0"; adc1.soc1Channel = "ADC_CH_ADCIN1"; adc1.soc2Channel = "ADC_CH_ADCIN2"; adc1.soc3Channel = "ADC_CH_ADCIN3"; adc1.soc4Channel = "ADC_CH_ADCIN4"; adc1.soc5Channel = "ADC_CH_ADCIN5"; adc1.soc0SampleWindow = 20; adc1.soc1SampleWindow = 20; adc1.soc3SampleWindow = 20; adc1.soc2SampleWindow = 20; adc1.soc4SampleWindow = 20; adc1.soc5SampleWindow = 20; adc1.soc0Trigger = "ADC_TRIGGER_RTI2"; adc1.soc1Trigger = "ADC_TRIGGER_RTI2"; adc1.soc2Trigger = "ADC_TRIGGER_RTI2"; adc1.soc3Trigger = "ADC_TRIGGER_RTI2"; adc1.soc4Trigger = "ADC_TRIGGER_RTI2"; adc1.soc5Trigger = "ADC_TRIGGER_RTI2"; adc1.enableConverter = true; adc1.enableInterrupt1 = true; adc1.interruptPulseMode = "ADC_PULSE_END_OF_CONV"; adc1.ADC.$assign = "ADC0"; adc1.ADC.AIN0.$assign = "ADC0_AIN0"; adc1.ADC.AIN1.$assign = "ADC0_AIN1"; adc1.ADC.AIN2.$assign = "ADC0_AIN2"; adc1.ADC.AIN3.$assign = "ADC0_AIN3"; adc1.ADC.AIN4.$assign = "ADC0_AIN4"; adc1.ADC.AIN5.$assign = "ADC0_AIN5"; adc2.$name = "CONFIG_ADC1"; adc2.adcClockPrescaler = "ADC_CLK_DIV_2_0"; adc2.soc1Channel = "ADC_CH_ADCIN1"; adc2.soc2Channel = "ADC_CH_ADCIN2"; adc2.soc3Channel = "ADC_CH_ADCIN3"; adc2.soc4Channel = "ADC_CH_ADCIN4"; adc2.soc5Channel = "ADC_CH_ADCIN5"; adc2.soc0SampleWindow = 20; adc2.soc1SampleWindow = 20; adc2.soc2SampleWindow = 20; adc2.soc3SampleWindow = 20; adc2.soc4SampleWindow = 20; adc2.soc5SampleWindow = 20; adc2.soc0Trigger = "ADC_TRIGGER_RTI2"; adc2.soc1Trigger = "ADC_TRIGGER_RTI2"; adc2.soc2Trigger = "ADC_TRIGGER_RTI2"; adc2.soc3Trigger = "ADC_TRIGGER_RTI2"; adc2.soc4Trigger = "ADC_TRIGGER_RTI2"; adc2.soc5Trigger = "ADC_TRIGGER_RTI2"; adc2.enableConverter = true; adc2.ADC.$assign = "ADC1"; adc2.ADC.AIN0.$assign = "ADC1_AIN0"; adc2.ADC.AIN1.$assign = "ADC1_AIN1"; adc2.ADC.AIN2.$assign = "ADC1_AIN2"; adc2.ADC.AIN3.$assign = "ADC1_AIN3"; adc2.ADC.AIN4.$assign = "ADC1_AIN4"; adc2.ADC.AIN5.$assign = "ADC1_AIN5"; adc3.$name = "CONFIG_ADC2"; adc3.adcClockPrescaler = "ADC_CLK_DIV_2_0"; adc3.soc1Channel = "ADC_CH_ADCIN1"; adc3.soc2Channel = "ADC_CH_ADCIN2"; adc3.soc3Channel = "ADC_CH_ADCIN3"; adc3.soc4Channel = "ADC_CH_ADCIN4"; adc3.soc5Channel = "ADC_CH_ADCIN5"; adc3.soc0SampleWindow = 20; adc3.soc1SampleWindow = 20; adc3.soc2SampleWindow = 20; adc3.soc3SampleWindow = 20; adc3.soc4SampleWindow = 20; adc3.soc5SampleWindow = 20; adc3.soc0Trigger = "ADC_TRIGGER_RTI2"; adc3.soc1Trigger = "ADC_TRIGGER_RTI2"; adc3.soc2Trigger = "ADC_TRIGGER_RTI2"; adc3.soc3Trigger = "ADC_TRIGGER_RTI2"; adc3.soc4Trigger = "ADC_TRIGGER_RTI2"; adc3.soc5Trigger = "ADC_TRIGGER_RTI2"; adc3.enableConverter = true; adc3.ADC.$assign = "ADC2"; adc3.ADC.AIN0.$assign = "ADC2_AIN0"; adc3.ADC.AIN1.$assign = "ADC2_AIN1"; adc3.ADC.AIN2.$assign = "ADC2_AIN2"; adc3.ADC.AIN3.$assign = "ADC2_AIN3"; adc3.ADC.AIN4.$assign = "ADC2_AIN4"; adc3.ADC.AIN5.$assign = "ADC2_AIN5"; epwm1.$name = "MCU_TMON_PWM_OUT"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_ZERO = "EPWM_AQ_OUTPUT_HIGH"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_UP_CMPA = "EPWM_AQ_OUTPUT_LOW"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_PERIOD = "EPWM_AQ_OUTPUT_LOW"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_DOWN_CMPA = "EPWM_AQ_OUTPUT_HIGH"; epwm1.epwmTimebase_emulationMode = "EPWM_EMULATION_FREE_RUN"; epwm1.epwmTimebase_periodLoadMode = "EPWM_PERIOD_DIRECT_LOAD"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_ZERO = "EPWM_AQ_OUTPUT_HIGH"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_PERIOD = "EPWM_AQ_OUTPUT_LOW"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_UP_CMPA = "EPWM_AQ_OUTPUT_LOW"; epwm1.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_DOWN_CMPA = "EPWM_AQ_OUTPUT_HIGH"; epwm1.EPWM.$assign = "EPWM3"; epwm1.EPWM.A.$used = false; epwm1.EPWM.B.$assign = "GPIO50"; epwm2.$name = "MCU_VCC_WINDOW_PWM"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_ZERO = "EPWM_AQ_OUTPUT_HIGH"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_PERIOD = "EPWM_AQ_OUTPUT_LOW"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_UP_CMPA = "EPWM_AQ_OUTPUT_LOW"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_A_ON_TIMEBASE_DOWN_CMPA = "EPWM_AQ_OUTPUT_HIGH"; epwm2.epwmTimebase_emulationMode = "EPWM_EMULATION_FREE_RUN"; epwm2.epwmTimebase_periodLoadMode = "EPWM_PERIOD_DIRECT_LOAD"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_ZERO = "EPWM_AQ_OUTPUT_HIGH"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_PERIOD = "EPWM_AQ_OUTPUT_LOW"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_UP_CMPA = "EPWM_AQ_OUTPUT_LOW"; epwm2.epwmActionQualifier_EPWM_AQ_OUTPUT_B_ON_TIMEBASE_DOWN_CMPA = "EPWM_AQ_OUTPUT_HIGH"; epwm2.EPWM.$assign = "EPWM0"; epwm2.EPWM.A.$assign = "GPIO43"; epwm2.EPWM.A.$used = false; epwm2.EPWM.B.$assign = "GPIO44"; gpio1.$name = "MCU_PHY_PTP_CLK_IN"; gpio1.pinDir = "OUTPUT"; gpio1.GPIO_n.$assign = "GPIO71"; gpio2.$name = "MCU_PHY_PTP_INT1"; gpio2.pinDir = "OUTPUT"; gpio2.GPIO_n.$assign = "GPIO72"; gpio3.$name = "MCU_PHY_PTP_CLK_OUT"; gpio3.GPIO_n.$assign = "GPIO73"; gpio4.$name = "MCU_PHY_PTP_INT2"; gpio4.GPIO_n.$assign = "GPIO74"; gpio5.$name = "MCU_PHY_CLKO_25MHZ"; gpio5.trigType = "RISE_EDGE"; gpio5.GPIO_n.$assign = "GPIO123"; gpio6.$name = "PL_WINDOW_EN"; gpio6.pinDir = "OUTPUT"; gpio6.GPIO_n.$assign = "GPIO94"; gpio7.$name = "MCU_RH_ALERT"; gpio7.GPIO_n.$assign = "GPIO95"; gpio8.$name = "MCU_RH_RESET"; gpio8.pinDir = "OUTPUT"; gpio8.defaultValue = "1"; gpio8.GPIO_n.$assign = "GPIO96"; gpio9.$name = "MCU_WDT_SET"; gpio9.pinDir = "OUTPUT"; gpio9.GPIO_n.$assign = "GPIO92"; gpio10.$name = "MCU_WDT_WDI"; gpio10.pinDir = "OUTPUT"; gpio10.GPIO_n.$assign = "GPIO87"; gpio11.$name = "PL_MCU_RSV_GPIO0"; gpio11.GPIO_n.$assign = "GPIO90"; gpio12.$name = "PL_MCU_RSV_GPIO1"; gpio12.GPIO_n.$assign = "GPIO88"; gpio13.$name = "PL_MCU_RSV_GPIO2"; gpio13.GPIO_n.$assign = "GPIO89"; gpio14.$name = "PL_MCU_RSV_GPIO3"; gpio14.GPIO_n.$assign = "GPIO99"; gpio15.$name = "MCU_DRV_nFault"; gpio15.pinDir = "OUTPUT"; gpio15.GPIO_n.$assign = "GPIO100"; gpio16.$name = "MCU_DRV_DRVOFF"; gpio16.pinDir = "OUTPUT"; gpio16.GPIO_n.$assign = "GPIO101"; gpio17.$name = "MCU_PHY_RST"; gpio17.pinDir = "OUTPUT"; gpio17.defaultValue = "1"; gpio17.GPIO_n.$assign = "GPIO98"; gpio18.$name = "MCU_PHY_PSDEN"; gpio18.pinDir = "OUTPUT"; gpio18.defaultValue = "1"; gpio18.GPIO_n.$assign = "GPIO97"; gpio19.$name = "MCU_PHY_INTB"; gpio19.GPIO_n.$assign = "GPIO109"; gpio20.$name = "MCU_TMON_SW_S0"; gpio20.pinDir = "OUTPUT"; gpio20.GPIO_n.$assign = "GPIO117"; gpio21.$name = "MCU_TMON_SW_S1"; gpio21.pinDir = "OUTPUT"; gpio21.GPIO_n.$assign = "GPIO118"; gpio22.$name = "MCU_TMON_SW_S2"; gpio22.pinDir = "OUTPUT"; gpio22.GPIO_n.$assign = "GPIO114"; gpio23.$name = "TP72"; gpio23.pinDir = "OUTPUT"; gpio23.GPIO_n.$assign = "GPIO125"; gpio24.$name = "TP73"; gpio24.pinDir = "OUTPUT"; gpio24.GPIO_n.$assign = "GPIO120"; gpio25.$name = "TP74"; gpio25.pinDir = "OUTPUT"; gpio25.GPIO_n.$assign = "GPIO119"; ioexp1.peripheralDriver = i2c1; i2c1.$name = "I2C0_RH"; i2c1.I2C.$assign = "I2C0"; i2c1.I2C.SCL.$assign = "GPIO135"; i2c1.I2C.SDA.$assign = "GPIO134"; i2c1.I2C_child.$name = "drivers_i2c_v1_i2c_v1_template0"; i2c2.$name = "I2C2_FCT"; i2c2.I2C.$assign = "I2C2"; i2c2.I2C.SCL.$assign = "GPIO133"; i2c2.I2C.SDA.$assign = "GPIO132"; i2c2.I2C_child.$name = "drivers_i2c_v1_i2c_v1_template1"; mcan1.$name = "CONFIG_MCAN0"; mcan1.sdkInfra = "HLD"; mcan1.enableLoopback = false; mcan1.operMode = "POLLED"; mcan1.tdcEnable = true; mcan1.additionalCoreConfig = true; mcan1.nomBrp = 1; mcan1.nomPropSeg = 0; mcan1.nomPseg1 = 62; mcan1.nomPseg2 = 15; mcan1.dataPropSeg = 0; mcan1.dataPseg1 = 14; mcan1.dataPseg2 = 3; mcan1.darEnable = true; mcan1.wkupReqEnable = true; mcan1.autoWkupEnable = true; mcan1.MCAN.$assign = "MCAN0"; mcan1.MCAN.RX.$assign = "GPIO7"; mcan1.MCAN.TX.$assign = "GPIO8"; const mcan_v1_template_hld = scripting.addModule("/drivers/mcan/v1/mcan_v1_template_hld", {}, false); const mcan_v1_template_hld1 = mcan_v1_template_hld.addInstance({}, false); mcan_v1_template_hld1.$name = "drivers_mcan_v1_mcan_v1_template_hld0"; mcan1.child = mcan_v1_template_hld1; mcspi1.$name = "MCSPI0_RSV"; mcspi1.inputSelect = "0"; mcspi1.dpe0 = "DISABLE"; mcspi1.dpe1 = "ENABLE"; mcspi1.SPI.$assign = "SPI0"; mcspi1.SPI.CLK.$assign = "GPIO12"; mcspi1.SPI.D0.$assign = "GPIO13"; mcspi1.SPI.D1.$assign = "GPIO14"; mcspi1.mcspiChannel[0].$name = "CONFIG_MCSPI_CH0"; mcspi1.mcspiChannel[0].bitRate = 10000000; mcspi1.mcspiChannel[0].frameFormat = "POL0_PHA1"; mcspi1.mcspiChannel[0].CSn.$assign = "GPIO11"; mcspi1.child.$name = "drivers_mcspi_v1_mcspi_v1_template0"; mcspi2.$name = "MCSPI1_PL"; mcspi2.inputSelect = "0"; mcspi2.dpe0 = "DISABLE"; mcspi2.dpe1 = "ENABLE"; mcspi2.SPI.$assign = "SPI1"; mcspi2.SPI.CLK.$assign = "GPIO16"; mcspi2.SPI.D0.$assign = "GPIO17"; mcspi2.SPI.D1.$assign = "GPIO18"; mcspi2.mcspiChannel[0].$name = "CONFIG_MCSPI_CH1"; mcspi2.mcspiChannel[0].bitRate = 10000000; mcspi2.mcspiChannel[0].frameFormat = "POL0_PHA1"; mcspi2.mcspiChannel[0].CSn.$assign = "GPIO15"; mcspi2.child.$name = "drivers_mcspi_v1_mcspi_v1_template1"; mcspi3.$name = "MCSPI2_CAN"; mcspi3.inputSelect = "0"; mcspi3.dpe0 = "DISABLE"; mcspi3.dpe1 = "ENABLE"; mcspi3.SPI.$assign = "SPI2"; mcspi3.SPI.CLK.$assign = "GPIO129"; mcspi3.SPI.D0.$assign = "GPIO130"; mcspi3.SPI.D1.$assign = "GPIO128"; mcspi3.mcspiChannel[0].$name = "CONFIG_MCSPI_CH2"; mcspi3.mcspiChannel[0].bitRate = 10000000; mcspi3.mcspiChannel[0].frameFormat = "POL0_PHA1"; mcspi3.mcspiChannel[0].CSn.$assign = "GPIO131"; mcspi3.child.$name = "drivers_mcspi_v1_mcspi_v1_template2"; mcspi4.$name = "MCSPI3_DRV8316"; mcspi4.intrEnable = "POLLED"; mcspi4.inputSelect = "0"; mcspi4.dpe0 = "DISABLE"; mcspi4.dpe1 = "ENABLE"; mcspi4.SPI.$assign = "SPI3"; mcspi4.SPI.CLK.$assign = "GPIO24"; mcspi4.SPI.D0.$assign = "GPIO25"; mcspi4.SPI.D1.$assign = "GPIO26"; mcspi4.mcspiChannel[0].$name = "CONFIG_MCSPI_CH3"; mcspi4.mcspiChannel[0].bitRate = 10000000; mcspi4.mcspiChannel[0].frameFormat = "POL0_PHA1"; mcspi4.mcspiChannel[0].CSn.$assign = "GPIO23"; mcspi4.child.$name = "drivers_mcspi_v1_mcspi_v1_template3"; edma1.$name = "CONFIG_EDMA0"; mcspi1.edmaDriver = edma1; mcspi2.edmaDriver = edma1; mcspi3.edmaDriver = edma1; mcspi4.edmaDriver = edma1; flash1.peripheralDriver.edmaDriver = edma1; mcan1.edmaDriver = edma1; edma1.edmaRmDmaCh[0].$name = "CONFIG_EDMA_RM0"; edma1.edmaRmQdmaCh[0].$name = "CONFIG_EDMA_RM1"; edma1.edmaRmQdmaCh[0].endIndex = 1; edma1.edmaRmTcc[0].$name = "CONFIG_EDMA_RM2"; edma1.edmaRmParam[0].$name = "CONFIG_EDMA_RM3"; rti1.$name = "CONFIG_RTI0"; rti1.counter0Enable = true; rti1.compare0Enable = true; rti1.enableIntr0 = true; rti1.usecPerTick0 = 5000; rti1.RTI.$assign = "RTI2"; const soc_ctrl_adc = scripting.addModule("/drivers/soc_ctrl/v0/subModules/soc_ctrl_adc", {}, false); const soc_ctrl_adc1 = soc_ctrl_adc.addInstance({}, false); soc_ctrl_adc1.$name = "soc_ctrl_adc0"; adc.adcReferences = soc_ctrl_adc1; const soc_ctrl = scripting.addModule("/drivers/soc_ctrl/soc_ctrl", {}, false); soc_ctrl.soc_ctrl_adc = soc_ctrl_adc1; const soc_ctrl_cmpss = scripting.addModule("/drivers/soc_ctrl/v0/subModules/soc_ctrl_cmpss", {}, false); const soc_ctrl_cmpss1 = soc_ctrl_cmpss.addInstance({}, false); soc_ctrl_cmpss1.$name = "soc_ctrl_cmpss0"; soc_ctrl.soc_ctrl_cmpss = soc_ctrl_cmpss1; const soc_ctrl_epwm = scripting.addModule("/drivers/soc_ctrl/v0/subModules/soc_ctrl_epwm", {}, false); const soc_ctrl_epwm1 = soc_ctrl_epwm.addInstance({}, false); soc_ctrl_epwm1.$name = "soc_ctrl_epwm0"; soc_ctrl.soc_ctrl_epwm = soc_ctrl_epwm1; epwm.epwmTbClkSync = soc_ctrl_epwm1; const soc_ctrl_sdfm = scripting.addModule("/drivers/soc_ctrl/v0/subModules/soc_ctrl_sdfm", {}, false); const soc_ctrl_sdfm1 = soc_ctrl_sdfm.addInstance({}, false); soc_ctrl_sdfm1.$name = "soc_ctrl_sdfm0"; soc_ctrl.soc_ctrl_sdfm = soc_ctrl_sdfm1; debug_log.enableUartLog = true; debug_log.uartLog.$name = "UART1_MCU"; debug_log.uartLog.inputClkFreq = 48000000; debug_log.uartLog.UART.$assign = "UART1"; debug_log.uartLog.UART.RXD.$assign = "GPIO75"; debug_log.uartLog.UART.TXD.$assign = "GPIO76"; debug_log.uartLog.child.$name = "drivers_uart_v2_uart_v2_template0"; mpu_armv71.$name = "CONFIG_MPU_REGION0"; mpu_armv71.size = 31; mpu_armv71.attributes = "Device"; mpu_armv71.accessPermissions = "Supervisor RD+WR, User RD"; mpu_armv71.allowExecute = false; mpu_armv72.$name = "CONFIG_MPU_REGION1"; mpu_armv72.size = 15; mpu_armv72.accessPermissions = "Supervisor RD+WR, User RD"; mpu_armv73.$name = "CONFIG_MPU_REGION2"; mpu_armv73.baseAddr = 0x80000; mpu_armv73.size = 15; mpu_armv73.accessPermissions = "Supervisor RD+WR, User RD"; mpu_armv74.$name = "CONFIG_MPU_REGION3"; mpu_armv74.baseAddr = 0x70000000; mpu_armv74.size = 21; mpu_armv74.accessPermissions = "Supervisor RD+WR, User RD"; mpu_armv75.$name = "CONFIG_MPU_REGION4"; mpu_armv75.baseAddr = 0x50D00000; mpu_armv75.size = 14; mpu_armv75.attributes = "Device"; mpu_armv75.allowExecute = false; mpu_armv76.$name = "CONFIG_MPU_REGION5"; mpu_armv76.baseAddr = 0x72000000; mpu_armv76.size = 14; mpu_armv76.allowExecute = false; mpu_armv76.attributes = "NonCached"; mpu_armv77.$name = "CONFIG_MPU_REGION6"; mpu_armv77.baseAddr = 0x70090000; mpu_armv77.size = 14; mpu_armv77.attributes = "NonCached"; default_linker1.$name = "memory_configurator_default_linker0"; general1.$name = "CONFIG_GENERAL0"; general1.linker.$name = "TIARMCLANG0"; region1.$name = "MEMORY_REGION_CONFIGURATION0"; region1.memory_region.create(12); region1.memory_region[0].type = "TCMA"; region1.memory_region[0].$name = "R5F_VECS"; region1.memory_region[0].auto = false; region1.memory_region[0].size = 0x40; region1.memory_region[1].type = "TCMA"; region1.memory_region[1].$name = "R5F_TCMA"; region1.memory_region[1].size = 0x7FC0; region1.memory_region[2].type = "TCMB"; region1.memory_region[2].$name = "R5F_TCMB"; region1.memory_region[2].size = 0x8000; region1.memory_region[3].type = "CUSTOM"; region1.memory_region[3].$name = "MAILBOX_HSM"; region1.memory_region[3].isShared = true; region1.memory_region[3].shared_cores = ["r5fss0-1"]; region1.memory_region[3].auto = false; region1.memory_region[3].manualStartAddress = 0x44000000; region1.memory_region[3].size = 0x3CE; region1.memory_region[4].type = "CUSTOM"; region1.memory_region[4].$name = "MAILBOX_R5F"; region1.memory_region[4].isShared = true; region1.memory_region[4].shared_cores = ["r5fss0-1"]; region1.memory_region[4].auto = false; region1.memory_region[4].manualStartAddress = 0x44000400; region1.memory_region[4].size = 0x3CE; region1.memory_region[5].type = "FLASH"; region1.memory_region[5].$name = "FLASH"; region1.memory_region[5].auto = false; region1.memory_region[5].size = 0x80000; region1.memory_region[6].$name = "SBL"; region1.memory_region[6].auto = false; region1.memory_region[6].size = 0x90000; region1.memory_region[7].$name = "CPPI_DESC"; region1.memory_region[7].auto = false; region1.memory_region[7].manualStartAddress = 0x70090000; region1.memory_region[7].size = 0x4000; region1.memory_region[8].$name = "OCRAM"; region1.memory_region[8].auto = false; region1.memory_region[8].manualStartAddress = 0x70094000; region1.memory_region[8].size = 0xD1000; region1.memory_region[9].$name = "USER_SHM_MEM"; region1.memory_region[9].isShared = true; region1.memory_region[9].shared_cores = ["r5fss0-1"]; region1.memory_region[9].auto = false; region1.memory_region[9].manualStartAddress = 0x70179F00; region1.memory_region[9].size = 0x6100; region1.memory_region[10].type = "TCMB"; region1.memory_region[10].$name = "LOG_SHM_MEM"; region1.memory_region[10].auto = false; region1.memory_region[10].size = 0x2000; region1.memory_region[11].type = "CUSTOM"; region1.memory_region[11].$name = "RTOS_NORTOS_IPC_SHM_MEM"; region1.memory_region[11].isShared = true; region1.memory_region[11].shared_cores = ["r5fss0-1"]; region1.memory_region[11].auto = false; region1.memory_region[11].manualStartAddress = 0x72000000; region1.memory_region[11].size = 0x3E80; section1.load_memory = "R5F_VECS"; section1.group = false; section1.$name = "Vector Table"; section1.output_section.create(1); section1.output_section[0].$name = ".vectors"; section1.output_section[0].palignment = true; section2.load_memory = "OCRAM"; section2.$name = "Text Segments"; section2.output_section.create(5); section2.output_section[0].$name = ".text.hwi"; section2.output_section[0].palignment = true; section2.output_section[1].$name = ".text.cache"; section2.output_section[1].palignment = true; section2.output_section[2].$name = ".text.mpu"; section2.output_section[2].palignment = true; section2.output_section[3].$name = ".text.boot"; section2.output_section[3].palignment = true; section2.output_section[4].$name = ".text:abort"; section2.output_section[4].palignment = true; section3.load_memory = "OCRAM"; section3.$name = "Code and Read-Only Data"; section3.output_section.create(2); section3.output_section[0].$name = ".text"; section3.output_section[0].palignment = true; section3.output_section[1].$name = ".rodata"; section3.output_section[1].palignment = true; section4.load_memory = "OCRAM"; section4.$name = "Data Segment"; section4.output_section.create(1); section4.output_section[0].$name = ".data"; section4.output_section[0].palignment = true; section5.$name = "BSS Segments"; section5.load_memory = "SBL"; section5.output_section.create(1); section5.output_section[0].$name = ".bss"; section5.output_section[0].output_sections_start = "__BSS_START"; section5.output_section[0].output_sections_end = "__BSS_END"; section5.output_section[0].input_section.create(1); section5.output_section[0].input_section[0].$name = "*.bss"; section6.load_memory = "OCRAM"; section6.$name = "Stack Segments"; section6.output_section.create(7); section6.output_section[0].$name = ".irqstack"; section6.output_section[0].output_sections_start = "__IRQ_STACK_START"; section6.output_section[0].output_sections_end = "__IRQ_STACK_END"; section6.output_section[0].input_section.create(1); section6.output_section[0].input_section[0].$name = ". = . + __IRQ_STACK_SIZE;"; section6.output_section[1].$name = ".fiqstack"; section6.output_section[1].output_sections_start = "__FIQ_STACK_START"; section6.output_section[1].output_sections_end = "__FIQ_STACK_END"; section6.output_section[1].input_section.create(1); section6.output_section[1].input_section[0].$name = ". = . + __FIQ_STACK_SIZE;"; section6.output_section[2].$name = ".svcstack"; section6.output_section[2].output_sections_start = "__SVC_STACK_START"; section6.output_section[2].output_sections_end = "__SVC_STACK_END"; section6.output_section[2].input_section.create(1); section6.output_section[2].input_section[0].$name = ". = . + __SVC_STACK_SIZE;"; section6.output_section[3].$name = ".abortstack"; section6.output_section[3].output_sections_start = "__ABORT_STACK_START"; section6.output_section[3].output_sections_end = "__ABORT_STACK_END"; section6.output_section[3].input_section.create(1); section6.output_section[3].input_section[0].$name = ". = . + __ABORT_STACK_SIZE;"; section6.output_section[4].$name = ".undefinedstack"; section6.output_section[4].output_sections_start = "__UNDEFINED_STACK_START"; section6.output_section[4].output_sections_end = "__UNDEFINED_STACK_END"; section6.output_section[4].input_section.create(1); section6.output_section[4].input_section[0].$name = ". = . + __UNDEFINED_STACK_SIZE;"; section6.output_section[5].$name = ".stack"; section6.output_section[6].$name = ".sysmem"; section7.load_memory = "OCRAM"; section7.$name = "Initialization and Exception Handling"; section7.output_section.create(3); section7.output_section[0].$name = ".ARM.exidx"; section7.output_section[0].palignment = true; section7.output_section[1].$name = ".init_array"; section7.output_section[1].palignment = true; section7.output_section[2].$name = ".fini_array"; section7.output_section[2].palignment = true; section8.load_memory = "USER_SHM_MEM"; section8.type = "NOLOAD"; section8.$name = "User Shared Memory"; section8.group = false; section8.output_section.create(1); section8.output_section[0].$name = ".bss.user_shared_mem"; section8.output_section[0].alignment = 0; section8.output_section[0].input_section.create(2); section8.output_section[0].input_section[0].$name = "*(.shmR)"; section8.output_section[0].input_section[1].$name = "*(.shmTime)"; section9.$name = "Log Shared Memory"; section9.group = false; section9.type = "NOLOAD"; section9.load_memory = "LOG_SHM_MEM"; section9.output_section.create(1); section9.output_section[0].$name = ".bss.log_shared_mem"; section9.output_section[0].alignment = 0; section10.load_memory = "RTOS_NORTOS_IPC_SHM_MEM"; section10.type = "NOLOAD"; section10.$name = "IPC Shared Memory"; section10.group = false; section10.output_section.create(1); section10.output_section[0].$name = ".bss.ipc_vring_mem"; section10.output_section[0].alignment = 0; section11.load_memory = "MAILBOX_HSM"; section11.type = "NOLOAD"; section11.$name = "SIPC HSM Queue Memory"; section11.group = false; section11.output_section.create(1); section11.output_section[0].$name = ".bss.sipc_hsm_queue_mem"; section11.output_section[0].alignment = 0; section12.load_memory = "MAILBOX_R5F"; section12.$name = "SIPC R5F Queue Memory"; section12.group = false; section12.type = "NOLOAD"; section12.output_section.create(1); section12.output_section[0].$name = ".bss.sipc_secure_host_queue_mem"; section12.output_section[0].alignment = 0; section13.$name = "NDK Packet Memory CPPI_DESC"; section13.type = "NOLOAD"; section13.group = false; section13.load_memory = "CPPI_DESC"; section13.output_section.create(1); section13.output_section[0].$name = ".bss:ENET_CPPI_DESC"; section13.output_section[0].alignment = 128; section14.$name = "NDK Packet Memory DMA_PKT_MEMPOOL"; section14.type = "NOLOAD"; section14.group = false; section14.load_memory = "OCRAM"; section14.output_section.create(1); section14.output_section[0].$name = ".bss:ENET_DMA_PKT_MEMPOOL"; section14.output_section[0].alignment = 128; section15.$name = "TCMB Memory"; section15.load_memory = "R5F_TCMB"; section15.output_section.create(1); section15.output_section[0].$name = ".freertos_task_stack"; enet_cpsw1.$name = "CONFIG_ENET_CPSW0"; enet_cpsw1.LargePoolPktCount = 40; enet_cpsw1.MediumPoolPktSize = 384; enet_cpsw1.MediumPoolPktCount = 56; enet_cpsw1.PktInfoOnlyEnable = true; enet_cpsw1.RxCustomSizeEnable = true; enet_cpsw1.RxCustomSize = 384; enet_cpsw1.macport1LinkSpeed = "ENET_SPEED_1GBIT"; enet_cpsw1.macport1LinkDuplexity = "ENET_DUPLEX_FULL"; enet_cpsw1.disableRgmiiIntDelay1 = true; enet_cpsw1.DisableMacPort2 = true; enet_cpsw1.cptsHostRxTsEn = false; enet_cpsw1.mdioMode = "MDIO_MODE_MANUAL"; enet_cpsw1.customBoardEnable = true; enet_cpsw1.cptsRftClkFreq = "CPSW_CPTS_RFTCLK_FREQ_125MHZ"; enet_cpsw1.MDIO.$assign = "MDIO0"; enet_cpsw1.MDIO.MDC.$assign = "GPIO42"; enet_cpsw1.MDIO.MDIO.$assign = "GPIO41"; enet_cpsw1.RGMII1.$assign = "RGMII1"; enet_cpsw1.RGMII1.RD0.$assign = "GPIO31"; enet_cpsw1.RGMII1.RD1.$assign = "GPIO32"; enet_cpsw1.RGMII1.RD2.$assign = "GPIO33"; enet_cpsw1.RGMII1.RD3.$assign = "GPIO34"; enet_cpsw1.RGMII1.RX_CTL.$assign = "GPIO30"; enet_cpsw1.RGMII1.RXC.$assign = "GPIO29"; enet_cpsw1.RGMII1.TD0.$assign = "GPIO37"; enet_cpsw1.RGMII1.TD1.$assign = "GPIO38"; enet_cpsw1.RGMII1.TD2.$assign = "GPIO39"; enet_cpsw1.RGMII1.TD3.$assign = "GPIO40"; enet_cpsw1.RGMII1.TX_CTL.$assign = "GPIO36"; enet_cpsw1.RGMII1.TXC.$assign = "GPIO35"; enet_cpsw1.RGMII2.$assign = "RGMII2"; enet_cpsw1.RGMII2.RD0.$used = false; enet_cpsw1.RGMII2.RD1.$used = false; enet_cpsw1.RGMII2.RD2.$used = false; enet_cpsw1.RGMII2.RD3.$used = false; enet_cpsw1.RGMII2.RX_CTL.$used = false; enet_cpsw1.RGMII2.RXC.$used = false; enet_cpsw1.RGMII2.TD0.$used = false; enet_cpsw1.RGMII2.TD1.$used = false; enet_cpsw1.RGMII2.TD2.$used = false; enet_cpsw1.RGMII2.TD3.$used = false; enet_cpsw1.RGMII2.TX_CTL.$used = false; enet_cpsw1.RGMII2.TXC.$used = false; enet_cpsw1.txDmaChannel.create(2); enet_cpsw1.txDmaChannel[0].$name = "ENET_DMA_TX_CH0"; enet_cpsw1.txDmaChannel[0].PacketsCount = 8; enet_cpsw1.txDmaChannel[1].$name = "ENET_DMA_TX_CH1"; enet_cpsw1.txDmaChannel[1].PacketsCount = 8; enet_cpsw1.rxDmaChannel.create(2); enet_cpsw1.rxDmaChannel[0].$name = "ENET_DMA_RX_CH0"; enet_cpsw1.rxDmaChannel[0].PacketsCount = 56; enet_cpsw1.rxDmaChannel[1].$name = "ENET_DMA_RX_CH1"; enet_cpsw1.rxDmaChannel[1].PacketsCount = 16; enet_cpsw1.rxDmaChannel[1].macAddrCount = 0; enet_cpsw1.netifInstance.create(1); enet_cpsw1.netifInstance[0].$name = "NETIF_INST_ID0"; int_xbar1.$name = "CONFIG_INT_XBAR0"; int_xbar1.xbarOutput = ["ADC0_INT1"]; int_xbar1.instance = "INT_XBAR_1";
Problem Description:
-
The CPTS peripheral clock fails to initialize correctly at the CPU frequency (400MHz).
-
At the default frequency, the CPTS clock works as expected.
Question:
Where should the CPTS clock configuration be adjusted to maintain proper operation at 400MHz? Are there specific PLL, clock divider, or RCM settings that need modification?
Additional details:
-
SDK Version: [Insert version, e.g., TI Processor SDK 8.x]
-
Configuration Tool: SysConfig / Manual register setup?
-
Error Logs: [Attach any relevant logs if available]
I appreciate your guidance on resolving this issue. Thank you for your support!
zx