Index: firmware/DD.dil =================================================================== diff -u -r8b8fff67b95805272f37855346d600599aaec03d -re14686745aa9e4650a3112d108be02ba89d0dd97 --- firmware/DD.dil (.../DD.dil) (revision 8b8fff67b95805272f37855346d600599aaec03d) +++ firmware/DD.dil (.../DD.dil) (revision e14686745aa9e4650a3112d108be02ba89d0dd97) @@ -1,4 +1,4 @@ -# RM46L852PGE 08/02/24 11:29:39 +# RM46L852PGE 08/07/24 14:30:57 # ARCH=RM46L852PGE # @@ -3310,7 +3310,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_45_BOOL_ENA.VALUE=0 DRIVER.CAN.VAR.CAN_1_MESSAGE_37_BOOL_ENA.VALUE=0 DRIVER.CAN.VAR.CAN_1_MESSAGE_29_BOOL_ENA.VALUE=0 -DRIVER.CAN.VAR.CAN_1_MESSAGE_6_INT_ENA.VALUE=0x00000400 +DRIVER.CAN.VAR.CAN_1_MESSAGE_6_INT_ENA.VALUE=0x00000800 DRIVER.CAN.VAR.CAN_1_RAM_PARITY_ENA.VALUE=0x00000005 DRIVER.CAN.VAR.CAN_1_MESSAGE_59_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_64_DLC.VALUE=8 @@ -3397,8 +3397,8 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_30_ENA.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_22_ENA.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_20_INT_ENA.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_14_ENA.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_12_INT_ENA.VALUE=0x00000800 +DRIVER.CAN.VAR.CAN_1_MESSAGE_14_ENA.VALUE=0x80000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_12_INT_ENA.VALUE=0x00000400 DRIVER.CAN.VAR.CAN_3_MESSAGE_7_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_51_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_43_INT_LEVEL.VALUE=0x00000000 @@ -3415,7 +3415,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_22_DIR.VALUE=0x20000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_21_INT_ENA_REF.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_14_EOB.VALUE=0x00000080 -DRIVER.CAN.VAR.CAN_1_MESSAGE_14_DIR.VALUE=0x00000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_14_DIR.VALUE=0x20000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_13_INT_ENA_REF.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_AUTO_BUS_ON.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_63_INT_ENA.VALUE=0x00000000 @@ -3430,7 +3430,7 @@ DRIVER.CAN.VAR.CAN_1_PORT_TX_PULDIS.VALUE=0 DRIVER.CAN.VAR.CAN_1_MESSAGE_30_BOOL_ENA.VALUE=0 DRIVER.CAN.VAR.CAN_1_MESSAGE_22_BOOL_ENA.VALUE=0 -DRIVER.CAN.VAR.CAN_1_MESSAGE_14_BOOL_ENA.VALUE=0 +DRIVER.CAN.VAR.CAN_1_MESSAGE_14_BOOL_ENA.VALUE=1 DRIVER.CAN.VAR.CAN_3_MESSAGE_7_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_21_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_13_INT_LEVEL.VALUE=0x00002000 @@ -3610,7 +3610,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_32_ENA.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_24_ENA.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_16_ENA.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_5_INT_ENA.VALUE=0x00000800 +DRIVER.CAN.VAR.CAN_1_MESSAGE_5_INT_ENA.VALUE=0x00000400 DRIVER.CAN.VAR.CAN_1_MESSAGE_4_BOOL_ENA.VALUE=1 DRIVER.CAN.VAR.CAN_3_MESSAGE_9_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_51_ID.VALUE=51 @@ -3919,7 +3919,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_32_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_24_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_16_INT_LEVEL.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_10_ID.VALUE=0x200 +DRIVER.CAN.VAR.CAN_1_MESSAGE_10_ID.VALUE=0x101 DRIVER.CAN.VAR.CAN_2_MESSAGE_31_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_2_MESSAGE_23_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_2_MESSAGE_15_DLC.VALUE=8 @@ -3981,7 +3981,7 @@ DRIVER.CAN.VAR.CAN_2_MESSAGE_10_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_5_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_1_INT_LEVEL.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_11_ID.VALUE=0x402 +DRIVER.CAN.VAR.CAN_1_MESSAGE_11_ID.VALUE=0x102 DRIVER.CAN.VAR.CAN_1_NOMINAL_BIT_TIME.VALUE=16 DRIVER.CAN.VAR.CAN_3_MESSAGE_61_INT_ENA_REF.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_53_INT_ENA_REF.VALUE=0x00000000 @@ -4001,7 +4001,7 @@ DRIVER.CAN.VAR.CAN_3_MESSAGE_8_INT_ENA.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_ENABLE.VALUE=1 DRIVER.CAN.VAR.CAN_2_MESSAGE_59_MASK.VALUE=0x000007FF -DRIVER.CAN.VAR.CAN_1_MESSAGE_10_INT_ENA.VALUE=0x00000400 +DRIVER.CAN.VAR.CAN_1_MESSAGE_10_INT_ENA.VALUE=0x00000800 DRIVER.CAN.VAR.CAN_1_MESSAGE_3_ENA.VALUE=0x80000000 DRIVER.CAN.VAR.CAN_1_PIN_MODE.VALUE=1 DRIVER.CAN.VAR.CAN_2_MESSAGE_58_ID.VALUE=58 @@ -4031,12 +4031,12 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_46_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_1_MESSAGE_38_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_1_MESSAGE_21_BOOL_ENA.VALUE=0 -DRIVER.CAN.VAR.CAN_1_MESSAGE_13_BOOL_ENA.VALUE=0 +DRIVER.CAN.VAR.CAN_1_MESSAGE_13_BOOL_ENA.VALUE=1 DRIVER.CAN.VAR.CAN_3_MESSAGE_57_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_49_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_59_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_20_ID.VALUE=20 -DRIVER.CAN.VAR.CAN_1_MESSAGE_12_ID.VALUE=0x403 +DRIVER.CAN.VAR.CAN_1_MESSAGE_12_ID.VALUE=0x103 DRIVER.CAN.VAR.CAN_2_MESSAGE_40_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_2_MESSAGE_32_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_2_MESSAGE_24_DLC.VALUE=8 @@ -4113,7 +4113,7 @@ DRIVER.CAN.VAR.CAN_2_MESSAGE_11_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_6_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_21_ID.VALUE=21 -DRIVER.CAN.VAR.CAN_1_MESSAGE_13_ID.VALUE=13 +DRIVER.CAN.VAR.CAN_1_MESSAGE_13_ID.VALUE=402 DRIVER.CAN.VAR.CAN_1_MESSAGE_9_INT_LEVEL.VALUE=0x00000200 DRIVER.CAN.VAR.CAN_2_MESSAGE_40_EOB.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_40_DIR.VALUE=0x20000000 @@ -4169,7 +4169,7 @@ DRIVER.CAN.VAR.CAN_3_MESSAGE_3_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_30_ID.VALUE=30 DRIVER.CAN.VAR.CAN_1_MESSAGE_22_ID.VALUE=22 -DRIVER.CAN.VAR.CAN_1_MESSAGE_14_ID.VALUE=14 +DRIVER.CAN.VAR.CAN_1_MESSAGE_14_ID.VALUE=403 DRIVER.CAN.VAR.CAN_2_MESSAGE_41_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_2_MESSAGE_33_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_2_MESSAGE_25_DLC.VALUE=8 @@ -4267,7 +4267,7 @@ DRIVER.CAN.VAR.CAN_3_SAMPLE_POINT.VALUE=75.000 DRIVER.CAN.VAR.CAN_1_PORT_TX_DIR.VALUE=1 DRIVER.CAN.VAR.CAN_1_MESSAGE_5_EOB.VALUE=0x00000080 -DRIVER.CAN.VAR.CAN_1_MESSAGE_5_DIR.VALUE=0x20000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_5_DIR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_2_INT_ENA_REF.VALUE=0x00000001 DRIVER.CAN.VAR.CAN_3_MESSAGE_1_ENA.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_RAM_PARITY_ENA.VALUE=0x00000005 @@ -4396,7 +4396,7 @@ DRIVER.CAN.VAR.CAN_3_MESSAGE_14_EOB.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_14_DIR.VALUE=0x20000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_6_EOB.VALUE=0x00000080 -DRIVER.CAN.VAR.CAN_1_MESSAGE_6_DIR.VALUE=0x00000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_6_DIR.VALUE=0x20000000 DRIVER.CAN.VAR.CAN_3_PORT_TX_PULDIS.VALUE=0 DRIVER.CAN.VAR.CAN_3_MESSAGE_61_BOOL_ENA.VALUE=0 DRIVER.CAN.VAR.CAN_3_MESSAGE_53_BOOL_ENA.VALUE=0 @@ -4669,7 +4669,7 @@ DRIVER.CAN.VAR.CAN_2_MESSAGE_47_INT_ENA_REF.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_39_INT_ENA_REF.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_8_EOB.VALUE=0x00000080 -DRIVER.CAN.VAR.CAN_1_MESSAGE_8_DIR.VALUE=0x20000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_8_DIR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_40_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_3_MESSAGE_32_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_3_MESSAGE_24_MASK.VALUE=0x000007FF @@ -4721,7 +4721,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_44_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_36_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_28_RTR.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_6_ID.VALUE=0x40 +DRIVER.CAN.VAR.CAN_1_MESSAGE_6_ID.VALUE=0x11 DRIVER.CAN.VAR.CAN_3_MESSAGE_41_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_3_MESSAGE_33_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_3_MESSAGE_25_DLC.VALUE=8 @@ -4791,7 +4791,7 @@ DRIVER.CAN.VAR.CAN_3_MESSAGE_12_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_12_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_PORT_TX_PSL.VALUE=1 -DRIVER.CAN.VAR.CAN_1_MESSAGE_7_ID.VALUE=0x70 +DRIVER.CAN.VAR.CAN_1_MESSAGE_7_ID.VALUE=0x20 DRIVER.CAN.VAR.CAN_1_MESSAGE_4_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_58_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_3_MESSAGE_41_EOB.VALUE=0x00000000 @@ -4853,7 +4853,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_45_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_37_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_29_RTR.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_8_ID.VALUE=0x80 +DRIVER.CAN.VAR.CAN_1_MESSAGE_8_ID.VALUE=0x21 DRIVER.CAN.VAR.CAN_3_MESSAGE_50_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_3_MESSAGE_42_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_3_MESSAGE_34_DLC.VALUE=8 @@ -4917,7 +4917,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_32_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_1_MESSAGE_24_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_1_MESSAGE_16_MASK.VALUE=0x000007FF -DRIVER.CAN.VAR.CAN_1_MESSAGE_8_INT_ENA.VALUE=0x00000800 +DRIVER.CAN.VAR.CAN_1_MESSAGE_8_INT_ENA.VALUE=0x00000400 DRIVER.CAN.VAR.CAN_3_MESSAGE_41_ID.VALUE=41 DRIVER.CAN.VAR.CAN_3_MESSAGE_33_ID.VALUE=33 DRIVER.CAN.VAR.CAN_3_MESSAGE_25_ID.VALUE=25 @@ -4928,7 +4928,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_33_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_25_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_17_INT_LEVEL.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_9_ID.VALUE=0x110 +DRIVER.CAN.VAR.CAN_1_MESSAGE_9_ID.VALUE=0x100 DRIVER.CAN.VAR.CAN_1_MESSAGE_5_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_59_DLC.VALUE=8 DRIVER.CAN.VAR.CAN_1_SJW.VALUE=4 @@ -5213,7 +5213,7 @@ DRIVER.CAN.VAR.CAN_3_MESSAGE_8_EOB.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_8_DIR.VALUE=0x20000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_10_EOB.VALUE=0x00000080 -DRIVER.CAN.VAR.CAN_1_MESSAGE_10_DIR.VALUE=0x00000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_10_DIR.VALUE=0x20000000 DRIVER.CAN.VAR.CAN_1_SAMPLE_POINT.VALUE=62.500 DRIVER.CAN.VAR.CAN_2_MESSAGE_51_BOOL_ENA.VALUE=0 DRIVER.CAN.VAR.CAN_2_MESSAGE_43_BOOL_ENA.VALUE=0 @@ -5430,7 +5430,7 @@ DRIVER.CAN.VAR.CAN_1_MESSAGE_20_EOB.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_20_DIR.VALUE=0x20000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_12_EOB.VALUE=0x00000080 -DRIVER.CAN.VAR.CAN_1_MESSAGE_12_DIR.VALUE=0x20000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_12_DIR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_30_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_2_MESSAGE_22_MASK.VALUE=0x000007FF DRIVER.CAN.VAR.CAN_2_MESSAGE_14_MASK.VALUE=0x000007FF @@ -5528,7 +5528,7 @@ DRIVER.CAN.VAR.CAN_3_MESSAGE_2_BOOL_ENA.VALUE=0 DRIVER.CAN.VAR.CAN_1_MESSAGE_58_INT_ENA.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_1_MESSAGE_21_ENA.VALUE=0x00000000 -DRIVER.CAN.VAR.CAN_1_MESSAGE_13_ENA.VALUE=0x00000000 +DRIVER.CAN.VAR.CAN_1_MESSAGE_13_ENA.VALUE=0x80000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_6_RTR.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_3_MESSAGE_2_INT_LEVEL.VALUE=0x00000000 DRIVER.CAN.VAR.CAN_2_MESSAGE_21_ID.VALUE=21 Index: firmware/DD.hcg =================================================================== diff -u -r8b8fff67b95805272f37855346d600599aaec03d -re14686745aa9e4650a3112d108be02ba89d0dd97 --- firmware/DD.hcg (.../DD.hcg) (revision 8b8fff67b95805272f37855346d600599aaec03d) +++ firmware/DD.hcg (.../DD.hcg) (revision e14686745aa9e4650a3112d108be02ba89d0dd97) @@ -29,4 +29,849 @@ + + + + hal_stdtypes.h + include\hal_stdtypes.h + + + sys_common.h + include\sys_common.h + + + reg_system.h + include\reg_system.h + + + reg_flash.h + include\reg_flash.h + + + reg_tcram.h + include\reg_tcram.h + + + reg_vim.h + include\reg_vim.h + + + reg_pbist.h + include\reg_pbist.h + + + reg_stc.h + include\reg_stc.h + + + reg_efc.h + include\reg_efc.h + + + reg_pcr.h + include\reg_pcr.h + + + reg_pmm.h + include\reg_pmm.h + + + reg_dma.h + include\reg_dma.h + + + system.h + include\system.h + + + sys_vim.h + include\sys_vim.h + + + sys_core.h + include\sys_core.h + + + sys_mpu.h + include\sys_mpu.h + + + sys_pmu.h + include\sys_pmu.h + + + sys_pcr.h + include\sys_pcr.h + + + sys_pmm.h + include\sys_pmm.h + + + sys_dma.h + include\sys_dma.h + + + sys_selftest.h + include\sys_selftest.h + + + sys_core.asm + source\sys_core.asm + + + sys_intvecs.asm + source\sys_intvecs.asm + + + sys_mpu.asm + source\sys_mpu.asm + + + sys_pmu.asm + source\sys_pmu.asm + + + dabort.asm + source\dabort.asm + + + sys_pcr.c + source\sys_pcr.c + + + sys_pmm.c + source\sys_pmm.c + + + sys_dma.c + source\sys_dma.c + + + system.c + source\system.c + + + sys_phantom.c + source\sys_phantom.c + + + sys_startup.c + source\sys_startup.c + + + sys_selftest.c + source\sys_selftest.c + + + sys_vim.c + source\sys_vim.c + + + sys_main.c + source\sys_main.c + + + notification.c + source\notification.c + + + sys_link.cmd + source\sys_link.cmd + + + HL_Test.h + + + errata_SSWF021_45.h + include\errata_SSWF021_45.h + + + errata_SSWF021_45_defs.h + include\errata_SSWF021_45_defs.h + + + errata_SSWF021_45.c + source\errata_SSWF021_45.c + + + reg_pinmux.h + + + pinmux.h + + + pinmux.c + + + reg_rti.h + + + rti.h + + + rti.c + + + reg_gio.h + + + gio.h + + + gio.c + + + reg_sci.h + + + sci.h + + + sci.c + + + reg_lin.h + + + lin.h + + + + reg_mibspi.h + + + mibspi.h + + + mibspi.c + + + reg_spi.h + + + spi.h + + + + reg_can.h + + + can.h + + + can.c + + + reg_adc.h + + + adc.h + + + adc.c + + + + + + + + + std_nhet.h + + + reg_het.h + + + het.h + + + het.c + + + reg_htu.h + + + htu.h + + + + + + + + + reg_esm.h + + + esm.h + + + esm.c + + + reg_i2c.h + + + i2c.h + + + + emac.h + + + hw_emac.h + + + hw_emac_ctrl.h + + + hw_mdio.h + + + hw_reg_access.h + + + mdio.h + + + phy_dp83640.h + + + + + + reg_dcc.h + + + dcc.h + + + + reg_pom.h + + + pom.h + + + + usbcdc.h + + + usb_serial_structs.h + + + usbdcdc.h + + + usbdevice.h + + + usbdevicepriv.h + + + usb-ids.h + + + usblib.h + + + usb.h + + + hw_usb.h + + + + + + + + + + + + reg_crc.h + + + crc.h + + + + reg_etpwm.h + + + etpwm.h + + + etpwm.c + + + reg_ecap.h + + + ecap.h + + + + reg_eqep.h + + + eqep.h + + + + Device_RM46.h + + + Device_header.h + + + Device_types.h + + + ti_fee_cfg.h + + + MemMap.h + + + ti_fee_types.h + + + ti_fee.h + + + fee_interface.h + + + + + + + + + + + + + + + + + + + + + + + include\reg_pinmux.h + + + include\pinmux.h + + + source\pinmux.c + + + + + + + include\reg_rti.h + + + include\rti.h + + + source\rti.c + + + + + + + include\reg_gio.h + + + include\gio.h + + + source\gio.c + + + + + + + include\reg_sci.h + + + include\sci.h + + + source\sci.c + + + + + + + include\reg_lin.h + + + include\lin.h + + + + + + + + + + include\reg_mibspi.h + + + include\mibspi.h + + + source\mibspi.c + + + + + + + include\reg_spi.h + + + include\spi.h + + + + + + + + + + include\reg_can.h + + + include\can.h + + + source\can.c + + + + + + + include\reg_adc.h + + + include\adc.h + + + source\adc.c + + + + + + + include\std_nhet.h + + + include\reg_het.h + + + include\het.h + + + source\het.c + + + include\reg_htu.h + + + include\htu.h + + + + + + + include\reg_esm.h + + + include\esm.h + + + source\esm.c + + + + + + + include\reg_i2c.h + + + include\i2c.h + + + + + + + + + + include\emac.h + + + include\hw_emac.h + + + include\hw_emac_ctrl.h + + + include\hw_mdio.h + + + include\hw_reg_access.h + + + include\mdio.h + + + include\phy_dp83640.h + + + + + + + + + + + + + + + + include\reg_dcc.h + + + include\dcc.h + + + + + + + + + + include\reg_pom.h + + + include\pom.h + + + + + + + + + + include\usbcdc.h + + + include\usb_serial_structs.h + + + include\usbdcdc.h + + + include\usbdevice.h + + + include\usbdevicepriv.h + + + include\usb-ids.h + + + include\usblib.h + + + include\usb.h + + + include\hw_usb.h + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + include\reg_crc.h + + + include\crc.h + + + + + + + + + + include\reg_etpwm.h + + + include\etpwm.h + + + source\etpwm.c + + + + + + + include\reg_ecap.h + + + include\ecap.h + + + + + + + + + + include\reg_eqep.h + + + include\eqep.h + + + + + + + + + + include\Device_RM46.h + + + include\Device_header.h + + + include\Device_types.h + + + include\ti_fee_cfg.h + + + include\MemMap.h + + + include\ti_fee_types.h + + + include\ti_fee.h + + + include\fee_interface.h + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: firmware/source/can.c =================================================================== diff -u -r8b8fff67b95805272f37855346d600599aaec03d -re14686745aa9e4650a3112d108be02ba89d0dd97 --- firmware/source/can.c (.../can.c) (revision 8b8fff67b95805272f37855346d600599aaec03d) +++ firmware/source/can.c (.../can.c) (revision e14686745aa9e4650a3112d108be02ba89d0dd97) @@ -273,8 +273,8 @@ } /* Wait */ canREG1->IF1MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)0x10U & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF1MCTL = 0x00001000U | (uint32)0x00000800U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; + canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x10U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF1MCTL = 0x00001000U | (uint32)0x00000400U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF1CMD = (uint8) 0xF8U; canREG1->IF1NO = 5U; @@ -292,8 +292,8 @@ } /* Wait */ canREG1->IF2MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x40U & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000400U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; + canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)0x11U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000800U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF2CMD = (uint8) 0xF8U; canREG1->IF2NO = 6U; @@ -311,7 +311,7 @@ } /* Wait */ canREG1->IF1MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)0x70U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)0x20U & (uint32)0x1FFFFFFFU) << (uint32)0U); canREG1->IF1MCTL = 0x00001000U | (uint32)0x00000800U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF1CMD = (uint8) 0xF8U; canREG1->IF1NO = 7U; @@ -330,8 +330,8 @@ } /* Wait */ canREG1->IF2MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)0x80U & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000800U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; + canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x21U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000400U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF2CMD = (uint8) 0xF8U; canREG1->IF2NO = 8U; @@ -349,7 +349,7 @@ } /* Wait */ canREG1->IF1MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x110U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x100U & (uint32)0x1FFFFFFFU) << (uint32)0U); canREG1->IF1MCTL = 0x00001000U | (uint32)0x00000400U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF1CMD = (uint8) 0xF8U; canREG1->IF1NO = 9U; @@ -368,8 +368,8 @@ } /* Wait */ canREG1->IF2MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x200U & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000400U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; + canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)0x101U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000800U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF2CMD = (uint8) 0xF8U; canREG1->IF2NO = 10U; @@ -387,7 +387,7 @@ } /* Wait */ canREG1->IF1MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x402U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x102U & (uint32)0x1FFFFFFFU) << (uint32)0U); canREG1->IF1MCTL = 0x00001000U | (uint32)0x00000400U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF1CMD = (uint8) 0xF8U; canREG1->IF1NO = 11U; @@ -406,11 +406,49 @@ } /* Wait */ canREG1->IF2MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)0x403U & (uint32)0x1FFFFFFFU) << (uint32)0U); - canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000800U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; + canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)0x103U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000400U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; canREG1->IF2CMD = (uint8) 0xF8U; canREG1->IF2NO = 12U; + /** - Initialize message 13 + * - Wait until IF1 is ready for use + * - Set message mask + * - Set message control word + * - Set message arbitration + * - Set IF1 control byte + * - Set IF1 message number + */ + /*SAFETYMCUSW 28 D MR:NA "Potentially infinite loop found - Hardware Status check for execution sequence" */ + while ((canREG1->IF1STAT & 0x80U) ==0x80U) + { + } /* Wait */ + + canREG1->IF1MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF1ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x00000000U | (uint32)((uint32)((uint32)402U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF1MCTL = 0x00001000U | (uint32)0x00000000U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; + canREG1->IF1CMD = (uint8) 0xF8U; + canREG1->IF1NO = 13U; + + /** - Initialize message 14 + * - Wait until IF2 is ready for use + * - Set message mask + * - Set message control word + * - Set message arbitration + * - Set IF2 control byte + * - Set IF2 message number + */ + /*SAFETYMCUSW 28 D MR:NA "Potentially infinite loop found - Hardware Status check for execution sequence" */ + while ((canREG1->IF2STAT & 0x80U) ==0x80U) + { + } /* Wait */ + + canREG1->IF2MSK = 0xC0000000U | (uint32)((uint32)((uint32)0x000007FFU & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF2ARB = (uint32)0x80000000U | (uint32)0x40000000U | (uint32)0x20000000U | (uint32)((uint32)((uint32)403U & (uint32)0x1FFFFFFFU) << (uint32)0U); + canREG1->IF2MCTL = 0x00001000U | (uint32)0x00000000U | (uint32)0x00000000U | (uint32)0x00000080U | (uint32)8U; + canREG1->IF2CMD = (uint8) 0xF8U; + canREG1->IF2NO = 14U; + /** - Setup IF1 for data transmission * - Wait until IF1 is ready for use * - Set IF1 control byte