Skip to content

Commit e0e280a

Browse files
committed
optimize can_init(): call can_init_freq() with default freq
1 parent 6a3e343 commit e0e280a

File tree

1 file changed

+8
-31
lines changed

1 file changed

+8
-31
lines changed

targets/TARGET_STM/can_api.c

Lines changed: 8 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -167,23 +167,6 @@ static void _can_init_direct(can_t *obj, const can_pinmap_t *pinmap)
167167
CAN_INIT_FREQ_DIRECT(obj, pinmap, 100000);
168168
}
169169

170-
void can_init(can_t *obj, PinName rd, PinName td)
171-
{
172-
CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD);
173-
CANName can_td = (CANName)pinmap_peripheral(td, PinMap_CAN_TD);
174-
int peripheral = (int) pinmap_merge(can_rd, can_td);
175-
176-
int function_rd = (int)pinmap_find_function(rd, PinMap_CAN_RD);
177-
int function_td = (int)pinmap_find_function(td, PinMap_CAN_TD);
178-
179-
const can_pinmap_t static_pinmap = {peripheral, rd, function_rd, td, function_td};
180-
181-
/* default frequency is 100 kHz */
182-
CAN_INIT_DIRECT(obj, &static_pinmap);
183-
}
184-
185-
186-
187170
void can_init_freq(can_t *obj, PinName rd, PinName td, int hz)
188171
{
189172
CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD);
@@ -198,6 +181,10 @@ void can_init_freq(can_t *obj, PinName rd, PinName td, int hz)
198181
CAN_INIT_FREQ_DIRECT(obj, &static_pinmap, hz);
199182
}
200183

184+
void can_init(can_t *obj, PinName rd, PinName td)
185+
{
186+
can_init_freq(obj, rd, td, 100000);
187+
}
201188

202189
void can_irq_init(can_t *obj, can_irq_handler handler, uint32_t id)
203190
{
@@ -666,7 +653,7 @@ static void _can_init_direct(can_t *obj, const can_pinmap_t *pinmap)
666653
CAN_INIT_FREQ_DIRECT(obj, pinmap, 100000);
667654
}
668655

669-
void can_init(can_t *obj, PinName rd, PinName td)
656+
void can_init_freq(can_t *obj, PinName rd, PinName td, int hz)
670657
{
671658
CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD);
672659
CANName can_td = (CANName)pinmap_peripheral(td, PinMap_CAN_TD);
@@ -677,22 +664,12 @@ void can_init(can_t *obj, PinName rd, PinName td)
677664

678665
const can_pinmap_t static_pinmap = {peripheral, rd, function_rd, td, function_td};
679666

680-
/* default frequency is 100 kHz */
681-
CAN_INIT_DIRECT(obj, &static_pinmap);
667+
CAN_INIT_FREQ_DIRECT(obj, &static_pinmap, hz);
682668
}
683669

684-
void can_init_freq(can_t *obj, PinName rd, PinName td, int hz)
670+
void can_init(can_t *obj, PinName rd, PinName td)
685671
{
686-
CANName can_rd = (CANName)pinmap_peripheral(rd, PinMap_CAN_RD);
687-
CANName can_td = (CANName)pinmap_peripheral(td, PinMap_CAN_TD);
688-
int peripheral = (int) pinmap_merge(can_rd, can_td);
689-
690-
int function_rd = (int)pinmap_find_function(rd, PinMap_CAN_RD);
691-
int function_td = (int)pinmap_find_function(td, PinMap_CAN_TD);
692-
693-
const can_pinmap_t static_pinmap = {peripheral, rd, function_rd, td, function_td};
694-
695-
CAN_INIT_FREQ_DIRECT(obj, &static_pinmap, hz);
672+
can_init_freq(obj, rd, td, 100000);
696673
}
697674

698675
void can_irq_init(can_t *obj, can_irq_handler handler, uint32_t id)

0 commit comments

Comments
 (0)