Old Synopsys IP databook descriptions in H7 reference manuals
Hello,
After debugging for a customer, I have found that all ST H7 related reference manuals are simply copy/pasting old Synopsys IP settings of the USB HS and/or FS core from an ancient databook. The new driver for the H7RS is again a copy of an existing driver to 'make things work'. Why is there no initiaive to develop a generic driver that works on all versions of the micro STM32F0-7, STM32H5-7, etc and maintain so many variants of the same sauce ?
For example the HFIR timing seems to be off by one. Synopsys acknowledged that their previous databooks had an error and ST seems to simply put forward the same error even on new released cores. So my question is basically: How much can we take your reference manuals for granted when it comes to what is actually inside the MCU ? It's sort of frustrating if you do not have the accurate docs in front of you, especially nitty gritty timing issues.
The Linux drivers for this DWC2 core obviously fixed this one issue and should be carried through to all ST releases to fix potential jitter errors on the USB bus. Does anybody work with an USB analyzer and properly check timings of driver releases ?
Reference to where Synopsys acknowledged the error is here: [PATCH v6 10/22] usb: dwc2: host: Properly set the HFIR (infradead.org). Synopsys maintains the driver in Linux and I guess I can take them as a proper source of information when it comes to their design and/or potential errata.
@st, Please fix your docs according to what is actually inside the core. The USB drivers can have an update as well by reading out the respective FIFO configurations from the IP and prevent some 'magical' hardcoded values that often don't work on the core as they have a different FIFO size or what not. The HWCFG registers reflect most parameters hardcoded in the core itself so why not use them ?
Sorry for this sort of rant but can someone at ST please comment why this is the case ?
Bas
