.. program:: xburn XBURN ===== Description ----------- XBURN creates OTP images, and programs images into the OTP memory of xCORE devices. .. _xburn_manual_overall_options: Options ------- Overall Options ^^^^^^^^^^^^^^^ The following options are used to specify the OTP image and security register contents. .. _xburn_manual_option_xe-file: ```` Specifies bootable images to be constructed from the loadable segments from *xe-file* and a :ref:`default set of security bits `. .. _xburn_manual_option_otp-file: ```` Specifies the OTP segments from *otp-file* which includes the security register value. .. _xburn_manual_option_version: | ``--version`` | ``-v`` Displays the version number and copyrights. .. _xburn_manual_option_help: | ``--help`` | ``-h`` Prints a description of the supported command-line options. .. _xburn_manual_target_options: Target Options ^^^^^^^^^^^^^^ The following options are used to specify the target hardware platform. .. _xburn_manual_option_list-devices: .. _xburn_manual_option_l: | ``--list-devices`` | ``-l`` Prints an enumerated list of all JTAG adapters connected to the host and the devices on each JTAG chain, in the form: ``ID - NAME (ADAPTER-SERIAL-NUMBER)`` The adapters are ordered by their serial numbers. .. _xburn_manual_option_id: ``--id `` Specifies the adapter connected to the target hardware. .. _xburn_manual_option_adapter-id: ``--adapter-id `` Specifies the serial number of the adapter connected to the target hardware. .. _xburn_manual_option_jtag-speed: ``--jtag-speed `` Sets the divider for the JTAG clock to n. The corresponding JTAG clock speed is 6/(n+1)MHz. The default value is 0 (6MHz). .. _xburn_manual_option_spi-div: ``--spi-div `` Sets the divider used in the AES Module for the SPI clock to *n*. The corresponding SPI clock speed is set to 100/(2 n ) MHz. The deafult value is 20 (2.5MHz). This option is only valid with ``--lock``. .. _xburn_manual_security_options: Security Options ^^^^^^^^^^^^^^^^ .. _xburn_manual_option_genkey: ``--genkey `` Outputs to two 128-bit keys used for authentication and decrpytion. The keys are generated using the open-source library ``crypto++``. This option is not valid with ``--burn`` or ``--lock``. .. _xburn_manual_option_lock: ``--lock *keyfile*`` Specifies the :ref:`XCORE AES boot module ` and a :ref:`default set of security bits `. .. _xburn_manual_security_register_options: Security Register Options ^^^^^^^^^^^^^^^^^^^^^^^^^ The following options are used to specify the contents of the OTP security register, overriding the default options for burning XE images, OTP images and the AES module, as given in :ref:`xburn_manual_default_security_bits_table`. .. _xburn_manual_default_security_bits_table: .. table:: Default security bits written by XBURN +-----------------------+----------+-----------------------+-------------------------+ | Security Bit | XE Image | OTP Image | AES Module (``--lock``) | +=======================+==========+=======================+=========================+ | OTP Boot | Enabled | As per OTP image file | Enabled | +-----------------------+----------+ +-------------------------+ | JTAG Access | Enabled | | Disabled | +-----------------------+----------+ +-------------------------+ | Plink Access | Enabled | | Enabled | +-----------------------+----------+ +-------------------------+ | Global Debug | Enabled | | Disabled | +-----------------------+----------+ +-------------------------+ | Master Lock | Disabled | | Enabled | +-----------------------+----------+-----------------------+-------------------------+ | Secure Config Access | Enabled | | Enabled | +-----------------------+----------+-----------------------+-------------------------+ The following options support both the prefixes --enable-... and --disable-... to either enable or disable the feature. .. _xburn_manual_option_enable-otp-boot: ``--enable-otp-boot`` / ``--disable-otp-boot`` Enables/disables boot from OTP. .. _xburn_manual_option_disable-jtag: ``--enable-jtag`` / ``--disable-jtag`` Enables/disables JTAG access. Once disabled, it is not possible to gain debug access to the device or to read the OTP. This option does not disable boundary scan. .. _xburn_manual_option_disable-plink-access: ``--enable-plink-access`` / ``--disable-plink-access`` Applies to XS1 devices only. Enables/disables access to the plink registers from other tiles. Disabling plink access restricts all access of the registers of each plinks to the tile local to that plink. .. _xburn_manual_option_disable-global-debug: ``--enable-global-debug`` / ``--disable-global-debug`` Enables/disables the device from participating in global debug. Disabling global debug prevents the tiles from entering debug using the global debug pin. .. _xburn_manual_option_enable-master-lock: ``--enable-master-lock`` / ``--disable-master-lock`` Enables/disables the OTP master lock. No further modification of the OTP is permitted. Programming is disabled. .. _xburn_manual_option_disable-secure-config-access: ``--enable-secure-config-access`` / ``--disable-secure-config-access`` XCORE-200 (XS2A) and xcore.ai (XS3A) architectures only. Enables/disables access to the security config register. .. _xburn_manual_programming_options: Programming Options ^^^^^^^^^^^^^^^^^^^ By default, XBURN writes the specified OTP images to the target platform. .. _xburn_manual_option_force: | ``--force`` | ``-f`` Do not prompt before writing the OTP. This is not default. .. _xburn_manual_option_o: | ``--outfile `` | ``-o `` Place output in , disabling programming. .. _xburn_manual_option_dump_otp_images: | ``--dump-otp-images`` Dump the OTP images in separate binary files, disabling programming. .. _xburn_manual_option_make-exec: ``--make-exec `` Place an executable in that when run on an xCORE device performs the specified OTP burning operation; disables programming. The XE file can be run later using XRUN. .. _xburn_manual_option_target-file: ``--target-file `` Specifies as the target platform. .. _xburn_manual_option_target: ``--target `` Specifies a target platform. The platform configuration must be specified in the file *platform* ``.xn``, which is searched for in the paths specified by the :envvar:`XCC_DEVICE_PATH` environment variable. .. _xburn_manual_option_read: ``--read`` Prints the entire contents of the OTP. .. _xburn_manual_option_size-limit: ``--size-limit `` Limits the amounts of OTP memory written to the first *n* bytes of the OTP. If the image doesn't fit within the specified limit an error will be given.