Open main menu

DAVE Developer's Wiki β

Changes

BELK-WP-001: Xilinx Zynq-7000 Errata management

4,414 bytes added, 13:05, 5 October 2021
Created page with "{{InfoBoxTop}} {{Applies To Bora}} {{Applies To BoraX}} {{Applies To BoraLite}} {{InfoBoxBottom}} __FORCETOC__ == Introduction == Using a complex SOC (''SystemOnChip'') shou..."
{{InfoBoxTop}}
{{Applies To Bora}}
{{Applies To BoraX}}
{{Applies To BoraLite}}
{{InfoBoxBottom}}

__FORCETOC__

== Introduction ==
Using a complex SOC (''SystemOnChip'') should take into account that this kind of silicon devices ''may'' have some issue on the silicon itself and the errata list - available form the silicon manufacturer - has to be taken into account.

This page shows how to cope with Zynq-7000 errata notices using the available information on Xilinx's documentation.

== DAVE's errata policy ==
Regarding the <code>hardware errata</code>, generally, we can say that the design takes care of the errata that were known at the design/qualification stage.

For what regards the <code>software errata</code>, we have to take into account that our BSP's derive from the ones released by the silicon vendor BSP's. As such, we inherit the fixes/workarounds implemented by the silicon vendor.

== Zynq-7000 errata ==
The main errata page for the Zynq-7000 devices is the official document [https://www.xilinx.com/support/documentation/errata/en247.pdf Zynq-7000 AP SoCProduction Errata].

For the Zynq-7000 AP SoC Devices there is a [https://support.xilinx.com/s/article/47916?language=en_US web page] which lists the various errata in relation to the Silicon Revision Differences. As reported, ''This answer record contains a list of answer records related to the Zynq-7000 AP SoC errata items''.

It is worth remembering that known errata have been already fixed (Engineering Samples vs Production) or are tagged as ''No plan to fix''
because of there are only two Zynq silicon version: '''ES''' or '''Production''' (as you can see in the main [https://www.xilinx.com/support/answers/47916.html errata page]).

=== Errata workaround ===
There is an [https://support.xilinx.com/s/article/55539?language=en_US official Xilinx Zynq] page with an item list with the errata description and their possible solutions. This is the first page that should be looked at for checking if any issues or errata item is still present and how to cope with.

== BSP errata management ==

The bug fix list and the new features for any Petalinux release is available in the following [https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/115048462/Release+Notes+for+Open+Source+Components Release Notes Open Source components] Atlassian web page. As an example for the 2020.2 release, [https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/981860495/2020.2+Release+Notes+for+Open+Source+Components this] is the related release note and ''Bug fixes'' documentation.

These notes refer to the [https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842156/Fetch+Sources Xilinx github] software repositories officially maintanined by Xilinx.

=== Petalinux ===
For any Petalinux release, there are commit IDs and git tags: see https://www.xilinx.com/support/answers/75775.html

As an example for the 2020.2 release, this is the Petalinux table

[[File:Petalinux_2020.2.png | thumb | center| 800px | Petalinux 2020.2 ]]


=== Looking for a specific errata ===
If you are looking for a specific errata, it is required to ''search'' in the BSP sources in order to find any relation between the errata and an eventual fix in the BSP code.

=== errata searching example ===

As an example, we can use the errata [https://support.xilinx.com/s/article/47517?language=en_US SMC - NAND with ECC might not Deassert CS between Data Transactions] which is tagged as '''Device Revision(s) Affected: All, no plan to fix. Refer to (Xilinx Answer 47916) Zynq-7000 SoC Silicon Revision Differences.'''

* start searching in the proper Atlassian driver documentation, i.e. [https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842500/Zynq+Pl353+SMC+and+NAND+drivers Zynq Pl353 SMC and NAND drivers]
* open the [https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842500/Zynq+Pl353+SMC+and+NAND+drivers#ZynqPl353SMCandNANDdrivers-ChangeLog Change Log] section
* search for any ''words'' like: <code>Deassert</code>, <code>Chip select</code>, etc.
* you can find in the 2018.3 the fix ''Implement De-select in chip select''
[[File:Zynq_Pl353_-2018.3-changelog.png| thumb | center| 600px | Zynq-7000 2018.3 change log]]
* for this fix, there is the related commit list and the related [https://github.com/Xilinx/linux-xlnx/commit/e255222b6543f6fc0996f582cabfea0ed883a0ed#diff-66e19a0c990470d282059d1fba0e9be3 commit] for the errata
8,241
edits