CodingStyle.txt
author Gavin Lambert <gavinl@compacsort.com>
Tue, 14 Apr 2015 09:33:24 -0400
changeset 2618 3affe9cd0b66
parent 2127 0814802f5928
permissions -rw-r--r--
Ignore NXIO error otherwise this causes spam if network is empty or refclk not
selected yet, and syncing refclk time to master.
$Id$

vim: spelllang=en tw=78

This is a short introduction to the coding style that shall be used. The below
rules are applicable for all C source files, except the Ethernet drivers, for
which the Linux Kernel coding style shall be used to minimize the
differences).

1) Line length

- Lines shall not exceed 78 characters.

2) Whitespace

- Indentation shall be done using 4 space characters

- No whitespace shall be left at the end of a line.

- After commas, colons and semicolons, a single space shall be
  placed (if not followed by a line break).

- Binary operators (=, ==, ~=, |, ||, etc.) shall be enclosed by 2 spaces
  (except . and ->).

3) Placing braces

- Braces shall be placed in the following way (K&R style):

    if (...) {
        ...
    } else if (...) {
        ...
    } else {
        ...
    }

    int function(...)
    {
        ...
    }

4) Defines and Macros

- Defines and macros shall be named in CAPITAL letters. If a macro contains
  multiple statements, they should be enclosed by a 'do {} while (0)' loop.
  Macro parameters shall also be capital letters and shall be enclosed py
  parantheses if necessary.

    #define MACRO(A, B) \
        do { \
            if ((A) == 1) { \
                statement(B); \
        } while (0)