beautypg.com

Firmware customization, Firmware naming conventions, An335 4. firmware customization – Cirrus Logic AN335 User Manual

Page 4

background image

4

AN335REV1

AN335

4. FIRMWARE CUSTOMIZATION

CNCustom is a program available to qualified manufacturer's which is used to create firmware binary image
files with manufacturer specific default configuration settings. Most configuration variables described in the
Programmer's Reference can be assigned other than default settings. Although any configuration variable's
default value can be changed, the most common and useful changes are to:

sysDescription — Identify the device with an ASCII string

firmwareMfgID — A Cirrus Logic assigned integer defining the manufacturer of the device. Please con-
tact your local Cirrus sales representative for a manufacturer ID number.

firmwareMfgProductID — A manufacturer assignable integer firmwareMfgVersion — A manufactur-
er-assignable integer

Use of CNCustom will result in creation of a device specific firmware image that should be given a unique
file name. It is important to observe proper naming conventions when choosing file names.

5. FIRMWARE NAMING CONVENTIONS

CobraNet firmware binary image files adhere to a standard naming convention necessary for recognition by
CobraNet Discovery and the Python manufacturing script.

As an example, the file name cm1800_0_11_6_2.bin indicates that this is build 2 of pre-release version
0.11.6 targeted at a CS18100 chip with two MAC/PHY chips attached.

Decode for standard Cirrus supplied firmware:

The first two alpha characters will be cm or cs., i.e. cm1800_2_11_6.bin

cm indicates a build for a dual MAC/PHY interface

cs indicates a build for a single MAC/PHY interface

The next characters before the first '_' can be anything but, in the case of Cirrus standard builds, indi-
cates the target device cm1800_2_11_6.bin.
This could be:

18100, 18101, 18102, 49610, 49611, or 49612 for 32-bit platforms.

12, 14, or 18 for 8x8, 16x16, or 32x32 channel CM-1 builds respectively.

The digits following the first '_' and separated by underscores indicate the firmware revision
cm1800_2_11_6.bin.

A leading 0, instead of the 2, as in this example, would indicate a pre-release version. In this case there
will often also be a fourth digit indicating the build number. i.e. _0_11_6_3 indicates build 3 of a pre-re-
lease version. Build numbers may, but are typically not, included in the released code filename.

A manufacturer can name firmware created by them as desired provided that the naming convention is
followed.

The first part of the name can be any string. The first underscore '_' indicates the beginning of the rev
number is indicated.

For example, a manufacturer could use a file name similar to the following:

AudioMatic3_2_11_6.bin

Where AudioMatic3 is defined by the manufacturer, but all characters following the first underscore adhere
to the revision indication convention. Note that you cannot put underscores in the leading string. The revi-
sion numerals are delimited by underscores and must always be present in the proper locations. Under-
scores cannot be used in the name for any other purpose.