On 07/20/2011 04:27 PM, Mike Brown wrote: > On 07/19/2011 04:40 PM, Oliver Hartkopp wrote: >> Sorry Marc, i was probably wrong with my assumption below: >> >> There IS a significant difference in the flexcan_chip_start() function >> of the >> 'freescale modified' flexcan driver posted by Mike: >> >> The FLEXCAN_MCR_SRX_DIS bit is set there, which means: >> >> ---8<--- >> This bit defines whether FlexCAN is allowed to receive frames >> transmitted by >> itself. If this bit is set to 1, frames transmitted by the module are not >> stored in any message buffer, regardless if the message buffer is >> programmed >> with an ID that matches the transmitted frame, and no interrupt flag or >> interrupt signal is generated due to the frame reception. >> 0 Self reception enabled >> 1 Self reception disabled >> ---8<--- >> >> See the diff here: >> >> --- flexcan 2011-07-19 23:30:55.411117151 +0200 >> +++ net-next-2.6/drivers/net/can/flexcan.c 2011-06-21 >> 15:20:23.220000347 +0200 >> @@ -540,12 +675,12 @@ >> * choose format C >> * >> */ >> - reg_mcr = flexcan_cb->read(®s->mcr); >> + reg_mcr = readl(®s->mcr); >> reg_mcr |= FLEXCAN_MCR_FRZ | FLEXCAN_MCR_FEN | >> FLEXCAN_MCR_HALT | >> - FLEXCAN_MCR_SUPV | FLEXCAN_MCR_WRN_EN | >> FLEXCAN_MCR_IDAM_C | >> - FLEXCAN_MCR_SRX_DIS; >> + FLEXCAN_MCR_SUPV | FLEXCAN_MCR_WRN_EN | >> + FLEXCAN_MCR_IDAM_C; >> dev_dbg(dev->dev.parent, "%s: writing mcr=0x%08x", __func__, >> reg_mcr); >> - flexcan_cb->write(reg_mcr,®s->mcr); >> + writel(reg_mcr,®s->mcr); >> >> /* >> * CTRL >> >> >> Mike, please check if removing the FLEXCAN_MCR_SRX_DIS bit in reg_mcr >> fixes the >> problem, when 'dev->flags |= IFF_ECHO' is enabled again. > All of my test cases appear to work with IFF_ECHO set, and > FLEXCAN_MCR_SRC_DIS clear.
\o/ Marc -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Socketcan-users mailing list [email protected] https://lists.berlios.de/mailman/listinfo/socketcan-users
