On 11/29/2010 08:08 PM, Willy Lambert wrote: > I am still trying to setup my can interface. From last time I have wired a > resistively correct bus with my motor and manage to find a can analyser. For > information, as my motor as a 0xFF nodeID and automatic baudrate detection > by default which means that I still need to configure it to a proper nodeID > and baudrate before I can put it on the bus. > > I would like to try both socketCan and Ixxat drivers with the can analyser > so I am preparing this a bit and I remark this : ISA adress range is not the > same with ixxat and socket can drivers : > --> here is Ixxat adresses which seems correct : d0000 to d0fff >> >> r...@alpha:/opt/ard/bin# cat /proc/iomem >> 00000000-0000ffff : reserved >> 00010000-0009fbff : System RAM >> 0009fc00-0009ffff : reserved >> 000a0000-000bffff : Video RAM area >> 000c0000-000c7fff : Video ROM >> 000d0000-000d0fff : PCI-I03 ISA [0] DPRAM area >> > > --> here is SocketCan which seems incorrect : d0000 to d001f > >> r...@alpha:/opt/ard/bin# cat /proc/iomem >> 00000000-0000ffff : reserved >> 00010000-0009fbff : System RAM >> 0009fc00-0009ffff : reserved >> 000a0000-000bffff : Video RAM area >> 000c0000-000c7fff : Video ROM >> 000d0000-000d001f : sja1000_isa >> 000e0000-000fffff : reserved >> > > Maybe something stands behind this ?
Obviously, request_mem_region (and also ioremap) are called with a different size. The register map of the SJA1000 consists of just 0x20 byte registers. In the IXXAT driver, how are registers accessed. Maybe the registers are aligned on a 4 byte boundary or the SJA1000 registers are a a certain offset. And I also think the map is for both CAN ports. Can you check the code? > --------------------------------------------------------------------------------------------------------------------------- > complementary informations for the curious > > dmesg for Ixxat drivers : > >> [ 2252.093040] can: controller area network core (rev 20090105 abi 8) >> [ 2252.093112] NET: Registered protocol family 29 >> [ 2252.100195] can: raw protocol (rev 20090105) >> [ 2252.108650] can: broadcast manager protocol (rev 20090105 t) >> [ 2252.115236] sja1000 CAN netdevice driver >> [ 2252.120307] KINF: CAN PC-I driver v4.1b for BCI v4.5.8 Compiled Nov 22 >> 2010 at 00:30:34 >> [ 2252.120529] KINF: Device registered successfully for 2 ports. Major The register 2 CAN ports. >> [250] >> [ 2252.120700] KINF: IRQ number [5] registered >> [ 2252.120846] KINF: IRQ will be not registered for port 1 >> [ 2811.803121] KINF: IRQ number [5] freed for port 0 >> [ 2811.803146] KINF: IRQ number [0] for port 1 was not registered! Do >> nothing. Hm, they just use one port for both CAN ports!? Could you please instrument the IXXAT driver printing the address used for ioremap and the base address of the SJA1000 registers. Wolfgang. _______________________________________________ Socketcan-users mailing list [email protected] https://lists.berlios.de/mailman/listinfo/socketcan-users
