Please sign in to comment.
Several bug fixes and feature requests:
- Linux driver loads properly now - Indirect property support to support workers with properties at non-contiguous addressed, ---- typical of "parameter memories", like pattern gen and capture workers - Support protocols including (sort of inheriting) other protocolls - Support operation enumerations for protocols rather than ports, in RCC header - More flexibility and uniformity as to where "property" xml elements can appear - Support using the HDL control plane "window" feature - Eliminate padding at the end of generated rcc protocol message structures - Report basic XML parsing errors where is wasn't happening before (in xi:include) doc/OpenCPI_RCC_Reference.pdf - an updated version including clarifications and a few new features -- protocol enumerations independent of ports -- setError container function for creating error strings like sprintf -- RCC_ADVANCE_DONE to ADVANCE and finish in one return adapt/os/ocpios/linux/driver/ocpi_linux_driver: resync driver memmap parameter name components/specs/rstream_with_sync_protocol.xml: exploit new protocol inheritance feature core/container/hdl_container/impl/include/HdlAccess.h: enable full worker API to work with hidden/infrastructure workers --- some cleanup of unused args core/container/hdl_container/impl/include/HdlOCCP.h: add macro for window size core/container/hdl_container/impl/src/HdlAccess.cxx: remove unused args core/container/hdl_container/impl/src/HdlContainer.cxx: support OCCP windowed config space --- properties must fit in a window --- no super-fast MMIO for these yet --- move all property access stuff down to WciControl class, allowing it to be ------ used on infrastructure workers etc. core/container/interfaces/api/src/OcpiMetadataWorker.cxx: parse method for property does not do offset calc -- now deferred to propertly support indirect properties specified in the impl xml -- thus offsets are only calculated after all the impl info is processed. core/local/util/ezxml/include/OcpiUtilEzxml.h: add xml utilities to simply loop through children core/local/util/ezxml/src/OcpiUtilEzxml.cxx: ditto core/local/util/property/include/OcpiUtilProperty.h: add support for indirect property addressing -- and reorganizate spec vs impl parsing to reduce redundancy core/local/util/property/src/OcpiUtilProperty.cxx: ditto core/local/util/property/include/OcpiUtilProtocol.h: support protocols including protocols finally core/local/util/property/src/OcpiUtilProtocol.cxx: ditto tools/cdk/cdkutils/src/cdkutils.cxx: properly report xml parsing errors in some cases tools/cdk/include/xxx-worker.mk b/tools/cdk/include/xxx-worker.mk: debug prints tools/cdk/ocpigen/ocpigen/src/wip_HDL.cxx: support indirect properties, remove bogus "library util;" in vhdl tools/cdk/ocpigen/ocpigen/src/wip_RCC.cxx: generate protocol operation enumerations independent of ports --- also force packing of message structures (Troy found the bug) tools/cdk/ocpigen/ocpigen/src/wip_parse.cxx: more comprehensive property parsing structure --- properties can be found anywhere - in control interface or not, top level or not, --- using xi:include of Properties in files, or Properties anywhere --- less code, and it works more consistently --- xml files can be simpler --- better error messages correctly reporting file names of parse errors included files --- error check certain elements that should only occur once components/bias_ver.hdl/bias_ver.xml: fixed bad xml that is now flaged due to better error checking components/delay.hdl/delay.xml: ditto
- Loading branch information...
Showing with 681 additions and 357 deletions.
- +4 −3 adapt/os/ocpios/linux/driver/ocpi_linux_driver
- +1 −1 components/bias_ver.hdl/bias_ver.xml
- +1 −1 components/delay.hdl/delay.xml
- +6 −5 components/specs/rstream_with_sync_protocol.xml
- +4 −4 core/container/hdl_container/impl/include/HdlAccess.h
- +2 −1 core/container/hdl_container/impl/include/HdlOCCP.h
- +7 −6 core/container/hdl_container/impl/src/HdlAccess.cxx
- +214 −132 core/container/hdl_container/impl/src/HdlContainer.cxx
- +10 −4 core/container/interfaces/api/src/OcpiMetadataWorker.cxx
- +2 −0 core/local/util/ezxml/include/OcpiUtilEzxml.h
- +8 −0 core/local/util/ezxml/src/OcpiUtilEzxml.cxx
- +7 −4 core/local/util/property/include/OcpiUtilProperty.h
- +1 −1 core/local/util/property/include/OcpiUtilProtocol.h
- +1 −2 core/local/util/property/src/OcpiUtilImplementation.cxx
- +86 −60 core/local/util/property/src/OcpiUtilProperty.cxx
- +9 −7 core/local/util/property/src/OcpiUtilProtocol.cxx
- BIN doc/OpenCPI_RCC_Reference.pdf
- +3 −0 tools/cdk/cdkutils/src/cdkutils.cxx
- +1 −0 tools/cdk/include/xxx-worker.mk
- +20 −4 tools/cdk/ocpigen/ocpigen/src/wip_HDL.cxx
- +69 −32 tools/cdk/ocpigen/ocpigen/src/wip_RCC.cxx
- +225 −90 tools/cdk/ocpigen/ocpigen/src/wip_parse.cxx
Oops, something went wrong.