summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c
diff options
context:
space:
mode:
authorThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2008-09-05 13:24:26 +0000
committerThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2008-09-05 13:24:26 +0000
commit9a49a969e8286ef9f2a89973bfddff8678c47140 (patch)
treec526df1d2dcd7d123184cca89b82f3d259ca5d32 /c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c
parentRemove bogus entry. (diff)
downloadrtems-9a49a969e8286ef9f2a89973bfddff8678c47140.tar.bz2
Improved parameter checks for bit rate function.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c')
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c27
1 files changed, 9 insertions, 18 deletions
diff --git a/c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c b/c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c
index efbc97237c..61c281eb94 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c
+++ b/c/src/lib/libbsp/powerpc/gen5200/mscan/mscan.c
@@ -495,7 +495,7 @@ void mpc5200_mscan_perform_initialization_mode_settings(mscan *m)
mscan_context context;
/* perform all can bit time settings */
- mscan_set_bit_rate(m, CAN_BIT_RATE);
+ (void) mscan_set_bit_rate(m, MSCAN_BIT_RATE_DEFAULT);
/* Enter initialization mode */
mscan_initialization_mode_enter( m, &context);
@@ -1185,26 +1185,17 @@ rtems_device_driver mscan_control(rtems_device_major_number major,
/* set can bitrate */
case MSCAN_SET_BAUDRATE:
-
- /* check bitrate settings */
- if (((ctrl_parms->ctrl_can_bitrate) >= CAN_BIT_RATE_MIN)
- && ((ctrl_parms->ctrl_can_bitrate) <= CAN_BIT_RATE_MAX)) {
-
- /* perform all can bit time settings */
- mscan_set_bit_rate(m, ctrl_parms->ctrl_can_bitrate);
-
- /* enable ints. */
- mscan_interrupts_enable(m);
-
- /* wait for bus sync. */
- mpc5200_mscan_wait_sync(m);
-
- return RTEMS_SUCCESSFUL;
- } else {
-
+ /* perform all can bit time settings */
+ if (!mscan_set_bit_rate(m, ctrl_parms->ctrl_can_bitrate)) {
return RTEMS_UNSATISFIED;
}
+ /* enable ints. */
+ mscan_interrupts_enable(m);
+
+ /* wait for bus sync. */
+ mpc5200_mscan_wait_sync(m);
+
break;
case SET_TX_BUF_NO: