Hi Ludwig, Well, it will be a challenge to smootly correct this. There are 16 CPU's that use spi_transfer_byte(s) and 6 drivers.
I won't mind creating a PR, but of course I can only test it by building examples for all boards that support SPI. And look at compile errors. Or are there other procedures? On 04-07-16 07:23, Ludwig Knüpfer wrote:
Hi Kees, Unless there is a good reason to deviate from this guideline all violations should be corrected. This particular rule was added relatively recently, so it would not surprise me if not all occurrences in RIOT have been adapted yet. Cheers, Ludwig Am 3. Juli 2016 22:50:10 MESZ, schrieb Kees Bakker <[email protected]>:Hi, The Coding Convention is clear about it. "Guidelines for pointer types (as long as it is reasonable): * use |char *| for strings and only for strings * use |uint8_t[]| as type for arbitrary byte buffers, but use |void *| to pass them around. |uint8_t[]| because we're dealing with bytes and not characters, |void *| to avoid unnecessary casting shall the need arise to have their content to have a certain type * use |uint8_t *| to pass "typed" byte buffers, e.g., link-layer addresses, where it avoids unnecessary temporary variable * use |void *| for generic typing" In the SPI driver however the transfer functions use char * parameters, but SPI is usually dealing with binary information (bytes), not strings. This leads to unnecessary casts in other parts of the code. (E.g. nvram_spi). What is our policy about this? Are we going to correct this at some point? Is it too late already (I hope not)?_______________________________________________ devel mailing list [email protected] https://lists.riot-os.org/mailman/listinfo/devel
-- Kees Bakker Founder SODAQ M. 0031617737165 www.sodaq.com _______________________________________________ devel mailing list [email protected] https://lists.riot-os.org/mailman/listinfo/devel
