Lines Matching refs:microcode
44 In this document, the term 'microcode' refers to the sequence of 32-bit
45 integers that compose the actual QE microcode.
47 The term 'firmware' refers to a binary blob that contains the microcode as
50 1) describes the microcode's purpose
51 2) describes how and where to upload the microcode
60 The QE architecture allows for only one microcode present in I-RAM for each
61 RISC processor. To replace any current microcode, a full QE reset (which
62 disables the microcode) must be performed first.
64 QE microcode is uploaded using the following procedure:
66 1) The microcode is placed into I-RAM at a specific location, using the
72 allows each processor to run a different microcode, effectively creating an
76 in the microcode.
85 These virtual traps are conditional branches in the microcode. These are
89 structure signals the microcode which of these virtual traps is active.
169 QE microcode from Freescale is typically provided as a header file. This
170 header file contains macros that define the microcode binary itself as well as
171 some other data used in uploading that microcode. The format of these files
175 Instead of distributing a header file, the microcode and related data are
178 the microcode.
190 including all the microcode embedded in it, as well as the CRC (if
199 changed to add support for additional types of microcode, then the
205 The 'count' field indicates the number of 'microcode' structures. There
206 must be one and only one 'microcode' structure for each RISC processor.
211 the microcode to the SOC itself. Normally, the microcode loader should
213 only upload the microcode if there's a match. However, this check is not
241 'microcode' (type: struct qe_microcode):
242 For each RISC processor there is one 'microcode' structure. The first
243 'microcode' structure is for the first RISC, and so on.
246 identifies this particular microcode.
257 microcode.
259 'count' is the number of 32-bit words in the microcode.
262 structure where the microcode itself can be found. The first
263 microcode binary should be located immediately after the 'microcode'
267 version numbers, respectively, of the microcode. If all values are 0,
270 'reserved' is necessary for structure alignment. Since 'microcode'
273 'microcode' is a multiple of 8 bytes. To ensure that, we add
276 After the last microcode is a 32-bit CRC. It can be calculated using