git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@5659 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
parent
cdf9aaf51c
commit
b02567ddf8
|
@ -285,10 +285,10 @@ static void icu_lld_serve_interrupt(ICUDriver *icup) {
|
||||||
* @param[in] config the architecture-dependent ICU driver configuration
|
* @param[in] config the architecture-dependent ICU driver configuration
|
||||||
*/
|
*/
|
||||||
static void spc5_icu_smod_init(ICUDriver *icup) {
|
static void spc5_icu_smod_init(ICUDriver *icup) {
|
||||||
uint32_t psc = (SPC5_ETIMER0_CLK / icup->config->frequency);
|
uint32_t psc = (icup->clock / icup->config->frequency);
|
||||||
|
|
||||||
chDbgAssert((psc <= 0xFFFF) &&
|
chDbgAssert((psc <= 0xFFFF) &&
|
||||||
((psc * icup->config->frequency) == SPC5_ETIMER0_CLK) &&
|
((psc * icup->config->frequency) == icup->clock) &&
|
||||||
((psc == 1) || (psc == 2) || (psc == 4) ||
|
((psc == 1) || (psc == 2) || (psc == 4) ||
|
||||||
(psc == 8) || (psc == 16) || (psc == 32) ||
|
(psc == 8) || (psc == 16) || (psc == 32) ||
|
||||||
(psc == 64) || (psc == 128)),
|
(psc == 64) || (psc == 128)),
|
||||||
|
@ -806,6 +806,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD1);
|
icuObjectInit(&ICUD1);
|
||||||
ICUD1.etimerp = &SPC5_ETIMER_0;
|
ICUD1.etimerp = &SPC5_ETIMER_0;
|
||||||
ICUD1.smod_number = 0U;
|
ICUD1.smod_number = 0U;
|
||||||
|
ICUD1.clock = SPC5_ETIMER0_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD1
|
#if SPC5_ICU_USE_SMOD1
|
||||||
|
@ -813,6 +814,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD2);
|
icuObjectInit(&ICUD2);
|
||||||
ICUD2.etimerp = &SPC5_ETIMER_0;
|
ICUD2.etimerp = &SPC5_ETIMER_0;
|
||||||
ICUD2.smod_number = 1U;
|
ICUD2.smod_number = 1U;
|
||||||
|
ICUD2.clock = SPC5_ETIMER0_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD2
|
#if SPC5_ICU_USE_SMOD2
|
||||||
|
@ -820,6 +822,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD3);
|
icuObjectInit(&ICUD3);
|
||||||
ICUD3.etimerp = &SPC5_ETIMER_0;
|
ICUD3.etimerp = &SPC5_ETIMER_0;
|
||||||
ICUD3.smod_number = 2U;
|
ICUD3.smod_number = 2U;
|
||||||
|
ICUD3.clock = SPC5_ETIMER0_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD3
|
#if SPC5_ICU_USE_SMOD3
|
||||||
|
@ -827,6 +830,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD4);
|
icuObjectInit(&ICUD4);
|
||||||
ICUD4.etimerp = &SPC5_ETIMER_0;
|
ICUD4.etimerp = &SPC5_ETIMER_0;
|
||||||
ICUD4.smod_number = 3U;
|
ICUD4.smod_number = 3U;
|
||||||
|
ICUD4.clock = SPC5_ETIMER0_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD4
|
#if SPC5_ICU_USE_SMOD4
|
||||||
|
@ -834,6 +838,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD5);
|
icuObjectInit(&ICUD5);
|
||||||
ICUD5.etimerp = &SPC5_ETIMER_0;
|
ICUD5.etimerp = &SPC5_ETIMER_0;
|
||||||
ICUD5.smod_number = 4U;
|
ICUD5.smod_number = 4U;
|
||||||
|
ICUD5.clock = SPC5_ETIMER0_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD5
|
#if SPC5_ICU_USE_SMOD5
|
||||||
|
@ -841,6 +846,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD6);
|
icuObjectInit(&ICUD6);
|
||||||
ICUD6.etimerp = &SPC5_ETIMER_0;
|
ICUD6.etimerp = &SPC5_ETIMER_0;
|
||||||
ICUD6.smod_number = 5U;
|
ICUD6.smod_number = 5U;
|
||||||
|
ICUD6.clock = SPC5_ETIMER0_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD6
|
#if SPC5_ICU_USE_SMOD6
|
||||||
|
@ -848,6 +854,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD7);
|
icuObjectInit(&ICUD7);
|
||||||
ICUD7.etimerp = &SPC5_ETIMER_1;
|
ICUD7.etimerp = &SPC5_ETIMER_1;
|
||||||
ICUD7.smod_number = 0U;
|
ICUD7.smod_number = 0U;
|
||||||
|
ICUD7.clock = SPC5_ETIMER1_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD7
|
#if SPC5_ICU_USE_SMOD7
|
||||||
|
@ -855,6 +862,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD8);
|
icuObjectInit(&ICUD8);
|
||||||
ICUD8.etimerp = &SPC5_ETIMER_1;
|
ICUD8.etimerp = &SPC5_ETIMER_1;
|
||||||
ICUD8.smod_number = 1U;
|
ICUD8.smod_number = 1U;
|
||||||
|
ICUD8.clock = SPC5_ETIMER1_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD8
|
#if SPC5_ICU_USE_SMOD8
|
||||||
|
@ -862,6 +870,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD9);
|
icuObjectInit(&ICUD9);
|
||||||
ICUD9.etimerp = &SPC5_ETIMER_1;
|
ICUD9.etimerp = &SPC5_ETIMER_1;
|
||||||
ICUD9.smod_number = 2U;
|
ICUD9.smod_number = 2U;
|
||||||
|
ICUD9.clock = SPC5_ETIMER1_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD9
|
#if SPC5_ICU_USE_SMOD9
|
||||||
|
@ -869,6 +878,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD10);
|
icuObjectInit(&ICUD10);
|
||||||
ICUD10.etimerp = &SPC5_ETIMER_1;
|
ICUD10.etimerp = &SPC5_ETIMER_1;
|
||||||
ICUD10.smod_number = 3U;
|
ICUD10.smod_number = 3U;
|
||||||
|
ICUD10.clock = SPC5_ETIMER1_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD10
|
#if SPC5_ICU_USE_SMOD10
|
||||||
|
@ -876,6 +886,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD11);
|
icuObjectInit(&ICUD11);
|
||||||
ICUD11.etimerp = &SPC5_ETIMER_1;
|
ICUD11.etimerp = &SPC5_ETIMER_1;
|
||||||
ICUD11.smod_number = 4U;
|
ICUD11.smod_number = 4U;
|
||||||
|
ICUD11.clock = SPC5_ETIMER1_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD11
|
#if SPC5_ICU_USE_SMOD11
|
||||||
|
@ -883,6 +894,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD12);
|
icuObjectInit(&ICUD12);
|
||||||
ICUD12.etimerp = &SPC5_ETIMER_1;
|
ICUD12.etimerp = &SPC5_ETIMER_1;
|
||||||
ICUD12.smod_number = 5U;
|
ICUD12.smod_number = 5U;
|
||||||
|
ICUD12.clock = SPC5_ETIMER1_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD12
|
#if SPC5_ICU_USE_SMOD12
|
||||||
|
@ -890,6 +902,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD13);
|
icuObjectInit(&ICUD13);
|
||||||
ICUD13.etimerp = &SPC5_ETIMER_2;
|
ICUD13.etimerp = &SPC5_ETIMER_2;
|
||||||
ICUD13.smod_number = 0U;
|
ICUD13.smod_number = 0U;
|
||||||
|
ICUD13.clock = SPC5_ETIMER2_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD13
|
#if SPC5_ICU_USE_SMOD13
|
||||||
|
@ -897,6 +910,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD14);
|
icuObjectInit(&ICUD14);
|
||||||
ICUD14.etimerp = &SPC5_ETIMER_2;
|
ICUD14.etimerp = &SPC5_ETIMER_2;
|
||||||
ICUD14.smod_number = 1U;
|
ICUD14.smod_number = 1U;
|
||||||
|
ICUD14.clock = SPC5_ETIMER2_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD14
|
#if SPC5_ICU_USE_SMOD14
|
||||||
|
@ -904,6 +918,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD15);
|
icuObjectInit(&ICUD15);
|
||||||
ICUD15.etimerp = &SPC5_ETIMER_2;
|
ICUD15.etimerp = &SPC5_ETIMER_2;
|
||||||
ICUD15.smod_number = 2U;
|
ICUD15.smod_number = 2U;
|
||||||
|
ICUD15.clock = SPC5_ETIMER2_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD15
|
#if SPC5_ICU_USE_SMOD15
|
||||||
|
@ -911,6 +926,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD16);
|
icuObjectInit(&ICUD16);
|
||||||
ICUD16.etimerp = &SPC5_ETIMER_2;
|
ICUD16.etimerp = &SPC5_ETIMER_2;
|
||||||
ICUD16.smod_number = 3U;
|
ICUD16.smod_number = 3U;
|
||||||
|
ICUD16.clock = SPC5_ETIMER2_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD16
|
#if SPC5_ICU_USE_SMOD16
|
||||||
|
@ -918,6 +934,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD17);
|
icuObjectInit(&ICUD17);
|
||||||
ICUD17.etimerp = &SPC5_ETIMER_2;
|
ICUD17.etimerp = &SPC5_ETIMER_2;
|
||||||
ICUD17.smod_number = 4U;
|
ICUD17.smod_number = 4U;
|
||||||
|
ICUD17.clock = SPC5_ETIMER2_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_SMOD17
|
#if SPC5_ICU_USE_SMOD17
|
||||||
|
@ -925,6 +942,7 @@ void icu_lld_init(void) {
|
||||||
icuObjectInit(&ICUD18);
|
icuObjectInit(&ICUD18);
|
||||||
ICUD18.etimerp = &SPC5_ETIMER_2;
|
ICUD18.etimerp = &SPC5_ETIMER_2;
|
||||||
ICUD18.smod_number = 5U;
|
ICUD18.smod_number = 5U;
|
||||||
|
ICUD18.clock = SPC5_ETIMER2_CLK;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if SPC5_ICU_USE_ETIMER0
|
#if SPC5_ICU_USE_ETIMER0
|
||||||
|
|
|
@ -467,6 +467,10 @@ struct ICUDriver {
|
||||||
ICU_DRIVER_EXT_FIELDS
|
ICU_DRIVER_EXT_FIELDS
|
||||||
#endif
|
#endif
|
||||||
/* End of the mandatory fields.*/
|
/* End of the mandatory fields.*/
|
||||||
|
/**
|
||||||
|
* @brief Clock value for this unit.
|
||||||
|
*/
|
||||||
|
uint32_t clock;
|
||||||
/**
|
/**
|
||||||
* @brief eTimer submodule number.
|
* @brief eTimer submodule number.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue