Den 2014-03-11 22:48, skrev Andreas Fritiofson: >> /* Compare cidr without version bits */ >> if (pDetails->chipid_cidr == (pPrivate->pChip->cfg.CHIPID_CIDR & >> 0xFFFFFFE0)) >> >> I had to remove the and-bitmask because all of the four devices have >> IDs >> with the last bit set what would not work, as described in the above >> discussion. Can somebody who is familiar with the code confirm that >> the >> so called "version bits" (last 5) are not used for versioning as it >> is >> stated? > > I'm not familiar with the at91 chips or that code at all but in all > likelihood, the cidr should be listed in the table with the last bits > zeroed. Otherwise, of course the comparison will fail. I guess the > mask is there to avoid the need to update the table if the version > changes.
http://www.atmel.com/Images/doc6430.pdf Section 29.3.1 (Page 503). The datasheet mention that atleast two different versions exists in section 10.13 (Page 42). If these new chips indeed has another layout of the bits, then you need to add a .chipid_cidr_mask field that is used in the and statement, allowing different bitmasks beeing used for different families. (I am not familiar with the code, but I did a google search for the at91sam3u4e datasheet). Contributions are great!! Can you please submit the patch to gerrit as mention in the HACKING guide I think. This way, a patch will never be forgotten in some mailbox, and the correct author(s) can always be tracked. Stian Skjelstad ------------------------------------------------------------------------------ Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/13534_NeoTech _______________________________________________ OpenOCD-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openocd-devel
