Merge pull request #5791 from bcostm/fx_can_filter

STM32 CAN: fix wrong ID and MASK filter
pull/5865/head
Cruz Monrreal 2018-01-16 16:21:21 -06:00 committed by GitHub
commit bf139eb4df
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 3 deletions

View File

@ -468,11 +468,11 @@ int can_filter(can_t *obj, uint32_t id, uint32_t mask, CANFormat format, int32_t
sFilterConfig.FilterIdLow = 0x0;
sFilterConfig.FilterMaskIdHigh = mask << 5;
sFilterConfig.FilterMaskIdLow = 0x0; // allows both remote and data frames
} else if (format == CANExtended) {
} else { // format == CANExtended
sFilterConfig.FilterIdHigh = id >> 13; // EXTID[28:13]
sFilterConfig.FilterIdLow = (0x00FF & (id << 3)) | (1 << 2); // EXTID[12:0]
sFilterConfig.FilterIdLow = (0xFFFF & (id << 3)) | (1 << 2); // EXTID[12:0] + IDE
sFilterConfig.FilterMaskIdHigh = mask >> 13;
sFilterConfig.FilterMaskIdLow = (0x00FF & (mask << 3)) | (1 << 2);
sFilterConfig.FilterMaskIdLow = (0xFFFF & (mask << 3)) | (1 << 2);
}
sFilterConfig.FilterFIFOAssignment = 0;