Add general .gitignore for Xilinx Vivado/Vitis/SDK projects

Universal patterns using wildcard naming conventions:
- *.cache/ - Vivado IP cache
- *.gen/*/ip/*/sim/ - Generated sim files
- *.ip_user_files/sim_scripts/, *.ip_user_files/bd/ - IP user artifacts
- *.sim/ - Simulation directories
- *.runs/synth_1/ and *.runs/impl_1/* - Run outputs (keep control scripts)
- *.sdk/.metadata/, *.sdk/.sdk/ - SDK workspace state
- *.sdk/RemoteSystemsTempFiles/, *.sdk/SDK.log, *.sdk/webtalk/ - SDK logs

Preserved: sources, .xpr, .project, .cproject, .xci, .xsa, .bit, .elf,
           BSP files, run control scripts

Removed from index: cache, .metadata, export, tempdsa, RemoteSystemsTempFiles
(515 build artifact files)

# Conflicts:
#	Vitis_Classic/NewInstCal_bsp/export/NewInstCal_bsp/sw/NewInstCal_bsp/boot/fsbl.elf
#	Vitis_Classic/NewInstCal_bsp/export/NewInstCal_bsp/sw/NewInstCal_bsp/standalone_domain/bsplib/lib/liblwip4.a
#	Vitis_Classic/NewInstCal_bsp/export/NewInstCal_bsp/sw/NewInstCal_bsp/standalone_domain/bsplib/lib/libxil.a
This commit is contained in:
Jeremy Shen
2026-05-28 16:46:13 +08:00
parent d744efedf0
commit fd6f7b6332
516 changed files with 131 additions and 1038775 deletions
View File
-224
View File
@@ -1,224 +0,0 @@
!SESSION 2026-05-27 09:47:07.474 -----------------------------------------------
eclipse.buildId=2023.2
java.version=11.0.16.1
java.vendor=Eclipse Adoptium
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Command-line arguments: -os linux -ws gtk -arch x86_64
!ENTRY org.eclipse.osgi 4 0 2026-05-27 09:47:07.722
!MESSAGE Bundle reference:file:org.apache.log4j_1.2.15.v201012070815.jar not found.
!ENTRY org.eclipse.osgi 4 0 2026-05-27 09:47:07.730
!MESSAGE Bundle reference:file:org.slf4j.impl.log4j12_1.7.2.v20131105-2200.jar not found.
!ENTRY org.eclipse.ui 4 4 2026-05-27 09:47:20.103
!MESSAGE Plug-in 'org.eclipse.ui.editors' contributed an invalid Menu Extension (Path: 'navigate' is invalid): org.eclipse.ui.edit.text.gotoLastEditPosition
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.332
!MESSAGE XSCT Command: [::hsi::utils::init_repo], Thread: Worker-2: Initializing s/w repositories
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.332
!MESSAGE XSCT Command: [set sdk::sdk_chan tcfchan#0], Thread: Thread-19
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.375
!MESSAGE XSCT command with result: [::hsi::utils::init_repo], Result: [null, ]. Thread: Worker-2: Initializing s/w repositories
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.376
!MESSAGE XSCT command with result: [set sdk::sdk_chan tcfchan#0], Result: [null, tcfchan#0]. Thread: Thread-19
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.376
!MESSAGE XSCT Command: [set query_var1 $::env(RDI_DATADIR)], Thread: Worker-2: Initializing s/w repositories
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.376
!MESSAGE XSCT Command: [setws /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic], Thread: Thread-19
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.377
!MESSAGE XSCT command with result: [set query_var1 $::env(RDI_DATADIR)], Result: [null, /data/xilinx/Vitis/2023.2/data]. Thread: Worker-2: Initializing s/w repositories
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:21.377
!MESSAGE XSCT command with result: [setws /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic], Result: [null, ]. Thread: Thread-19
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:22.237
!MESSAGE XSCT Command: [plnx-install-path ; ::scw::scw_mode gui], Thread: Thread-24
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:47:22.238
!MESSAGE XSCT command with result: [plnx-install-path ; ::scw::scw_mode gui], Result: [null, ]. Thread: Thread-24
!ENTRY org.eclipse.e4.ui.workbench 4 0 2026-05-27 09:48:01.753
!MESSAGE
!STACK 0
java.lang.NullPointerException
at org.eclipse.ui.part.IntroPart.dispose(IntroPart.java:99)
at org.eclipse.ui.internal.ViewIntroAdapterPart.dispose(ViewIntroAdapterPart.java:153)
at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.invalidate(CompatibilityPart.java:260)
at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.destroy(CompatibilityPart.java:417)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:1002)
at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:967)
at org.eclipse.e4.core.internal.di.InjectorImpl.uninject(InjectorImpl.java:200)
at org.eclipse.e4.core.internal.di.Requestor.uninject(Requestor.java:176)
at org.eclipse.e4.core.internal.contexts.ContextObjectSupplier$ContextInjectionListener.update(ContextObjectSupplier.java:89)
at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:105)
at org.eclipse.e4.core.internal.contexts.EclipseContext.removeListenersTo(EclipseContext.java:491)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.uninject(ContextInjectionFactory.java:184)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeRemoveGui(PartRenderingEngine.java:954)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$1(PartRenderingEngine.java:873)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:868)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.removeGui(PartRenderingEngine.java:852)
at org.eclipse.e4.ui.workbench.renderers.swt.ElementReferenceRenderer.disposeWidget(ElementReferenceRenderer.java:115)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeRemoveGui(PartRenderingEngine.java:945)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$1(PartRenderingEngine.java:873)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:868)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.removeGui(PartRenderingEngine.java:852)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.subscribeTopicToBeRendered(PartRenderingEngine.java:187)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
at org.eclipse.e4.core.di.internal.extensions.EventObjectSupplier$DIEventHandler.handleEvent(EventObjectSupplier.java:92)
at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:205)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:203)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151)
at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:132)
at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:75)
at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:44)
at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:55)
at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:63)
at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:424)
at org.eclipse.e4.ui.model.application.ui.impl.UIElementImpl.setToBeRendered(UIElementImpl.java:314)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.hidePart(PartServiceImpl.java:1406)
at org.eclipse.ui.internal.WorkbenchPage.hidePart(WorkbenchPage.java:1537)
at org.eclipse.ui.internal.WorkbenchPage.hidePart(WorkbenchPage.java:1496)
at org.eclipse.ui.internal.WorkbenchPage.hideView(WorkbenchPage.java:2609)
at org.eclipse.ui.internal.WorkbenchIntroManager.closeIntro(WorkbenchIntroManager.java:98)
at com.xilinx.sdx.ui.utils.SWTUtils.closeWelcomeView(SWTUtils.java:529)
at com.xilinx.sdx.system.datatransfer.ui.SdxArchiveImportWizard.lambda$0(SdxArchiveImportWizard.java:82)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4930)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4451)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:166)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:368)
at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:1033)
at com.xilinx.sdx.system.datatransfer.ui.SdxArchiveImportWizard.performFinish(SdxArchiveImportWizard.java:85)
at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:832)
at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:472)
at org.eclipse.jface.dialogs.Dialog.lambda$0(Dialog.java:619)
at org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5687)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1423)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4955)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4448)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:823)
at org.eclipse.jface.window.Window.open(Window.java:799)
at com.xilinx.sdx.system.datatransfer.ui.SdxArchiveImportAction.openImportWizard(SdxArchiveImportAction.java:51)
at com.xilinx.sdx.system.datatransfer.ui.SdxArchiveImportAction.run(SdxArchiveImportAction.java:41)
at com.xilinx.ide.application.ui.CustomActionBarAdvisor$4$1.widgetSelected(CustomActionBarAdvisor.java:568)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5687)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1423)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4955)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4448)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1049)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:658)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154)
at com.xilinx.ide.application.ui.Application.start(Application.java:80)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594)
at org.eclipse.equinox.launcher.Main.run(Main.java:1447)
at org.eclipse.equinox.launcher.Main.main(Main.java:1420)
!ENTRY org.eclipse.launchbar.core 2 0 2026-05-27 09:48:02.470
!MESSAGE Enablement expression is missing for descriptor type org.eclipse.cdt.debug.core.coreBuildDescriptorType
!ENTRY org.eclipse.launchbar.core 2 0 2026-05-27 09:48:02.470
!MESSAGE Enablement expression is missing for config provider for org.eclipse.cdt.debug.core.coreBuildDescriptorType
!ENTRY org.eclipse.launchbar.core 2 0 2026-05-27 09:48:02.470
!MESSAGE Enablement expression is missing for config provider for org.eclipse.cdt.debug.core.coreBuildDescriptorType
!ENTRY org.eclipse.cdt.core 1 0 2026-05-27 09:48:02.884
!MESSAGE Indexed 'NewInstrCalBoard' (12 sources, 116 headers) in 0.524 sec: 3,754 declarations; 6,839 references; 0 unresolved inclusions; 1 syntax errors; 0 unresolved names (0%)
!ENTRY org.eclipse.cdt.core 1 0 2026-05-27 09:48:05.589
!MESSAGE Indexed 'NewInstCal_bsp' (628 sources, 1,220 headers) in 2.68 sec: 34,446 declarations; 149,535 references; 397 unresolved inclusions; 99 syntax errors; 2,576 unresolved names (1.4%)
!ENTRY org.eclipse.cdt.core 1 0 2026-05-27 09:48:05.600
!MESSAGE Indexed 'NewInstrCalBoard_system' (0 sources, 0 headers) in 0 sec: 0 declarations; 0 references; 0 unresolved inclusions; 0 syntax errors; 0 unresolved names (0%)
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:08.763
!MESSAGE XSCT Command: [platform read {/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/platform.spr}], Thread: Worker-4: Initializing the platform to enable editing
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:08.767
!MESSAGE XSCT Command: [::hsi::utils::openhw /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/hw/system_wrapper.xsa], Thread: Worker-1: Initializing hardware specification UI...
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:09.551
!MESSAGE XSCT command with result: [platform read {/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/platform.spr}], Result: [null, ]. Thread: Worker-4: Initializing the platform to enable editing
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:09.552
!MESSAGE XSCT command with result: [::hsi::utils::openhw /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/hw/system_wrapper.xsa], Result: [null, ]. Thread: Worker-1: Initializing hardware specification UI...
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:09.552
!MESSAGE XSCT Command: [platform active {NewInstCal_bsp}], Thread: Worker-4: Initializing the platform to enable editing
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:09.553
!MESSAGE XSCT command with result: [platform active {NewInstCal_bsp}], Result: [null, ]. Thread: Worker-4: Initializing the platform to enable editing
!ENTRY com.xilinx.sdk.utils 1 0 2026-05-27 09:48:24.404
!MESSAGE Opening file dialog using preferences. Current path: null, Local preference: scw_hwspec_file_selection, Group preference: null
!ENTRY com.xilinx.sdk.utils 1 0 2026-05-27 09:48:24.404
!MESSAGE Preference loaded using local preference: null
!ENTRY com.xilinx.sdk.utils 1 0 2026-05-27 09:48:24.404
!MESSAGE Workspace path used is: /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:27.431
!MESSAGE XSCT Command: [platform config -updatehw {/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/system_wrapper.xsa}], Thread: Worker-2: Updating hardware platform
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:28.968
!MESSAGE XSCT command with result: [platform config -updatehw {/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/system_wrapper.xsa}], Result: [null, ]. Thread: Worker-2: Updating hardware platform
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:30.010
!MESSAGE XSCT Command: [::hsi::utils::closehw /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/hw/system_wrapper.xsa], Thread: Worker-4: Initializing hardware specification UI...
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:30.010
!MESSAGE XSCT Command: [platform read {/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/platform.spr}], Thread: Worker-3: Initializing the platform to enable editing
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:30.029
!MESSAGE XSCT command with result: [::hsi::utils::closehw /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/hw/system_wrapper.xsa], Result: [null, ]. Thread: Worker-4: Initializing hardware specification UI...
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:30.029
!MESSAGE XSCT Command: [::hsi::utils::openhw /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/hw/system_wrapper.xsa], Thread: Worker-4: Initializing hardware specification UI...
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:30.856
!MESSAGE XSCT command with result: [platform read {/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/platform.spr}], Result: [null, ]. Thread: Worker-3: Initializing the platform to enable editing
!ENTRY com.xilinx.sdk.utils 0 0 2026-05-27 09:48:30.856
!MESSAGE XSCT command with result: [::hsi::utils::openhw /home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/hw/system_wrapper.xsa], Result: [null, ]. Thread: Worker-4: Initializing hardware specification UI...
@@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<section name="Workbench">
<item key="sdx.custom.platform.repository.locations" value="/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/export/NewInstCal_bsp"/>
<item key="sdx.custom.platform.repository.last.directory.dialog.location" value="/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/export/NewInstCal_bsp"/>
</section>
@@ -1,4 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<section name="Workbench">
<item key="sdx.custom.platform.repository.locations" value="/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/export/NewInstCal_bsp"/>
</section>
@@ -1,823 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?scdStore version="2"?><scannerInfo id="org.eclipse.cdt.make.core.discoveredScannerInfo">
<instance id="xilinx.gnu.armv7.exe.debug.500963658;xilinx.gnu.armv7.exe.debug.500963658.">
<collector id="org.eclipse.cdt.make.core.PerProjectSICollector">
<includePath path="/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/../../lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include"/>
<includePath path="/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/../../lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include-fixed"/>
<includePath path="/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/bin/../aarch32-xilinx-eabi/usr/include/"/>
<definedSymbol symbol="__STDC__=1"/>
<definedSymbol symbol="__STDC_VERSION__=201710L"/>
<definedSymbol symbol="__STDC_UTF_16__=1"/>
<definedSymbol symbol="__STDC_UTF_32__=1"/>
<definedSymbol symbol="__STDC_HOSTED__=1"/>
<definedSymbol symbol="__GNUC__=12"/>
<definedSymbol symbol="__GNUC_MINOR__=2"/>
<definedSymbol symbol="__GNUC_PATCHLEVEL__=0"/>
<definedSymbol symbol="__VERSION__=&quot;12.2.0&quot;"/>
<definedSymbol symbol="__ATOMIC_RELAXED=0"/>
<definedSymbol symbol="__ATOMIC_SEQ_CST=5"/>
<definedSymbol symbol="__ATOMIC_ACQUIRE=2"/>
<definedSymbol symbol="__ATOMIC_RELEASE=3"/>
<definedSymbol symbol="__ATOMIC_ACQ_REL=4"/>
<definedSymbol symbol="__ATOMIC_CONSUME=1"/>
<definedSymbol symbol="__FINITE_MATH_ONLY__=0"/>
<definedSymbol symbol="__SIZEOF_INT__=4"/>
<definedSymbol symbol="__SIZEOF_LONG__=4"/>
<definedSymbol symbol="__SIZEOF_LONG_LONG__=8"/>
<definedSymbol symbol="__SIZEOF_SHORT__=2"/>
<definedSymbol symbol="__SIZEOF_FLOAT__=4"/>
<definedSymbol symbol="__SIZEOF_DOUBLE__=8"/>
<definedSymbol symbol="__SIZEOF_LONG_DOUBLE__=8"/>
<definedSymbol symbol="__SIZEOF_SIZE_T__=4"/>
<definedSymbol symbol="__CHAR_BIT__=8"/>
<definedSymbol symbol="__BIGGEST_ALIGNMENT__=8"/>
<definedSymbol symbol="__ORDER_LITTLE_ENDIAN__=1234"/>
<definedSymbol symbol="__ORDER_BIG_ENDIAN__=4321"/>
<definedSymbol symbol="__ORDER_PDP_ENDIAN__=3412"/>
<definedSymbol symbol="__BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__SIZEOF_POINTER__=4"/>
<definedSymbol symbol="__GNUC_EXECUTION_CHARSET_NAME=&quot;UTF-8&quot;"/>
<definedSymbol symbol="__GNUC_WIDE_EXECUTION_CHARSET_NAME=&quot;UTF-32LE&quot;"/>
<definedSymbol symbol="__SIZE_TYPE__=unsigned int"/>
<definedSymbol symbol="__PTRDIFF_TYPE__=int"/>
<definedSymbol symbol="__WCHAR_TYPE__=unsigned int"/>
<definedSymbol symbol="__WINT_TYPE__=unsigned int"/>
<definedSymbol symbol="__INTMAX_TYPE__=long long int"/>
<definedSymbol symbol="__UINTMAX_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__CHAR16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__CHAR32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__SIG_ATOMIC_TYPE__=int"/>
<definedSymbol symbol="__INT8_TYPE__=signed char"/>
<definedSymbol symbol="__INT16_TYPE__=short int"/>
<definedSymbol symbol="__INT32_TYPE__=long int"/>
<definedSymbol symbol="__INT64_TYPE__=long long int"/>
<definedSymbol symbol="__UINT8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__INT_LEAST8_TYPE__=signed char"/>
<definedSymbol symbol="__INT_LEAST16_TYPE__=short int"/>
<definedSymbol symbol="__INT_LEAST32_TYPE__=long int"/>
<definedSymbol symbol="__INT_LEAST64_TYPE__=long long int"/>
<definedSymbol symbol="__UINT_LEAST8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT_LEAST16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT_LEAST32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT_LEAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__INT_FAST8_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST16_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST32_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST64_TYPE__=long long int"/>
<definedSymbol symbol="__UINT_FAST8_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST16_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__INTPTR_TYPE__=int"/>
<definedSymbol symbol="__UINTPTR_TYPE__=unsigned int"/>
<definedSymbol symbol="__GXX_ABI_VERSION=1017"/>
<definedSymbol symbol="__SCHAR_MAX__=0x7f"/>
<definedSymbol symbol="__SHRT_MAX__=0x7fff"/>
<definedSymbol symbol="__INT_MAX__=0x7fffffff"/>
<definedSymbol symbol="__LONG_MAX__=0x7fffffffL"/>
<definedSymbol symbol="__LONG_LONG_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__WCHAR_MAX__=0xffffffffU"/>
<definedSymbol symbol="__WCHAR_MIN__=0U"/>
<definedSymbol symbol="__WINT_MAX__=0xffffffffU"/>
<definedSymbol symbol="__WINT_MIN__=0U"/>
<definedSymbol symbol="__PTRDIFF_MAX__=0x7fffffff"/>
<definedSymbol symbol="__SIZE_MAX__=0xffffffffU"/>
<definedSymbol symbol="__SCHAR_WIDTH__=8"/>
<definedSymbol symbol="__SHRT_WIDTH__=16"/>
<definedSymbol symbol="__INT_WIDTH__=32"/>
<definedSymbol symbol="__LONG_WIDTH__=32"/>
<definedSymbol symbol="__LONG_LONG_WIDTH__=64"/>
<definedSymbol symbol="__WCHAR_WIDTH__=32"/>
<definedSymbol symbol="__WINT_WIDTH__=32"/>
<definedSymbol symbol="__PTRDIFF_WIDTH__=32"/>
<definedSymbol symbol="__SIZE_WIDTH__=32"/>
<definedSymbol symbol="__INTMAX_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__INTMAX_C(c)=c ## LL"/>
<definedSymbol symbol="__UINTMAX_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__UINTMAX_C(c)=c ## ULL"/>
<definedSymbol symbol="__INTMAX_WIDTH__=64"/>
<definedSymbol symbol="__SIG_ATOMIC_MAX__=0x7fffffff"/>
<definedSymbol symbol="__SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)"/>
<definedSymbol symbol="__SIG_ATOMIC_WIDTH__=32"/>
<definedSymbol symbol="__INT8_MAX__=0x7f"/>
<definedSymbol symbol="__INT16_MAX__=0x7fff"/>
<definedSymbol symbol="__INT32_MAX__=0x7fffffffL"/>
<definedSymbol symbol="__INT64_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__UINT8_MAX__=0xff"/>
<definedSymbol symbol="__UINT16_MAX__=0xffff"/>
<definedSymbol symbol="__UINT32_MAX__=0xffffffffUL"/>
<definedSymbol symbol="__UINT64_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__INT_LEAST8_MAX__=0x7f"/>
<definedSymbol symbol="__INT8_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST8_WIDTH__=8"/>
<definedSymbol symbol="__INT_LEAST16_MAX__=0x7fff"/>
<definedSymbol symbol="__INT16_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST16_WIDTH__=16"/>
<definedSymbol symbol="__INT_LEAST32_MAX__=0x7fffffffL"/>
<definedSymbol symbol="__INT32_C(c)=c ## L"/>
<definedSymbol symbol="__INT_LEAST32_WIDTH__=32"/>
<definedSymbol symbol="__INT_LEAST64_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__INT64_C(c)=c ## LL"/>
<definedSymbol symbol="__INT_LEAST64_WIDTH__=64"/>
<definedSymbol symbol="__UINT_LEAST8_MAX__=0xff"/>
<definedSymbol symbol="__UINT8_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST16_MAX__=0xffff"/>
<definedSymbol symbol="__UINT16_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST32_MAX__=0xffffffffUL"/>
<definedSymbol symbol="__UINT32_C(c)=c ## UL"/>
<definedSymbol symbol="__UINT_LEAST64_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__UINT64_C(c)=c ## ULL"/>
<definedSymbol symbol="__INT_FAST8_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INT_FAST8_WIDTH__=32"/>
<definedSymbol symbol="__INT_FAST16_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INT_FAST16_WIDTH__=32"/>
<definedSymbol symbol="__INT_FAST32_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INT_FAST32_WIDTH__=32"/>
<definedSymbol symbol="__INT_FAST64_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__INT_FAST64_WIDTH__=64"/>
<definedSymbol symbol="__UINT_FAST8_MAX__=0xffffffffU"/>
<definedSymbol symbol="__UINT_FAST16_MAX__=0xffffffffU"/>
<definedSymbol symbol="__UINT_FAST32_MAX__=0xffffffffU"/>
<definedSymbol symbol="__UINT_FAST64_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__INTPTR_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INTPTR_WIDTH__=32"/>
<definedSymbol symbol="__UINTPTR_MAX__=0xffffffffU"/>
<definedSymbol symbol="__GCC_IEC_559=0"/>
<definedSymbol symbol="__GCC_IEC_559_COMPLEX=0"/>
<definedSymbol symbol="__FLT_EVAL_METHOD__=0"/>
<definedSymbol symbol="__FLT_EVAL_METHOD_TS_18661_3__=0"/>
<definedSymbol symbol="__DEC_EVAL_METHOD__=2"/>
<definedSymbol symbol="__FLT_RADIX__=2"/>
<definedSymbol symbol="__FLT_MANT_DIG__=24"/>
<definedSymbol symbol="__FLT_DIG__=6"/>
<definedSymbol symbol="__FLT_MIN_EXP__=(-125)"/>
<definedSymbol symbol="__FLT_MIN_10_EXP__=(-37)"/>
<definedSymbol symbol="__FLT_MAX_EXP__=128"/>
<definedSymbol symbol="__FLT_MAX_10_EXP__=38"/>
<definedSymbol symbol="__FLT_DECIMAL_DIG__=9"/>
<definedSymbol symbol="__FLT_MAX__=3.4028234663852886e+38F"/>
<definedSymbol symbol="__FLT_NORM_MAX__=3.4028234663852886e+38F"/>
<definedSymbol symbol="__FLT_MIN__=1.1754943508222875e-38F"/>
<definedSymbol symbol="__FLT_EPSILON__=1.1920928955078125e-7F"/>
<definedSymbol symbol="__FLT_DENORM_MIN__=1.4012984643248171e-45F"/>
<definedSymbol symbol="__FLT_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT_IS_IEC_60559__=2"/>
<definedSymbol symbol="__DBL_MANT_DIG__=53"/>
<definedSymbol symbol="__DBL_DIG__=15"/>
<definedSymbol symbol="__DBL_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__DBL_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__DBL_MAX_EXP__=1024"/>
<definedSymbol symbol="__DBL_MAX_10_EXP__=308"/>
<definedSymbol symbol="__DBL_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__DBL_MAX__=((double)1.7976931348623157e+308L)"/>
<definedSymbol symbol="__DBL_NORM_MAX__=((double)1.7976931348623157e+308L)"/>
<definedSymbol symbol="__DBL_MIN__=((double)2.2250738585072014e-308L)"/>
<definedSymbol symbol="__DBL_EPSILON__=((double)2.2204460492503131e-16L)"/>
<definedSymbol symbol="__DBL_DENORM_MIN__=((double)4.9406564584124654e-324L)"/>
<definedSymbol symbol="__DBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__DBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__DBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__DBL_IS_IEC_60559__=2"/>
<definedSymbol symbol="__LDBL_MANT_DIG__=53"/>
<definedSymbol symbol="__LDBL_DIG__=15"/>
<definedSymbol symbol="__LDBL_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__LDBL_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__LDBL_MAX_EXP__=1024"/>
<definedSymbol symbol="__LDBL_MAX_10_EXP__=308"/>
<definedSymbol symbol="__DECIMAL_DIG__=17"/>
<definedSymbol symbol="__LDBL_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__LDBL_MAX__=1.7976931348623157e+308L"/>
<definedSymbol symbol="__LDBL_NORM_MAX__=1.7976931348623157e+308L"/>
<definedSymbol symbol="__LDBL_MIN__=2.2250738585072014e-308L"/>
<definedSymbol symbol="__LDBL_EPSILON__=2.2204460492503131e-16L"/>
<definedSymbol symbol="__LDBL_DENORM_MIN__=4.9406564584124654e-324L"/>
<definedSymbol symbol="__LDBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__LDBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__LDBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__LDBL_IS_IEC_60559__=2"/>
<definedSymbol symbol="__FLT32_MANT_DIG__=24"/>
<definedSymbol symbol="__FLT32_DIG__=6"/>
<definedSymbol symbol="__FLT32_MIN_EXP__=(-125)"/>
<definedSymbol symbol="__FLT32_MIN_10_EXP__=(-37)"/>
<definedSymbol symbol="__FLT32_MAX_EXP__=128"/>
<definedSymbol symbol="__FLT32_MAX_10_EXP__=38"/>
<definedSymbol symbol="__FLT32_DECIMAL_DIG__=9"/>
<definedSymbol symbol="__FLT32_MAX__=3.4028234663852886e+38F32"/>
<definedSymbol symbol="__FLT32_NORM_MAX__=3.4028234663852886e+38F32"/>
<definedSymbol symbol="__FLT32_MIN__=1.1754943508222875e-38F32"/>
<definedSymbol symbol="__FLT32_EPSILON__=1.1920928955078125e-7F32"/>
<definedSymbol symbol="__FLT32_DENORM_MIN__=1.4012984643248171e-45F32"/>
<definedSymbol symbol="__FLT32_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT32_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT32_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT32_IS_IEC_60559__=2"/>
<definedSymbol symbol="__FLT64_MANT_DIG__=53"/>
<definedSymbol symbol="__FLT64_DIG__=15"/>
<definedSymbol symbol="__FLT64_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__FLT64_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__FLT64_MAX_EXP__=1024"/>
<definedSymbol symbol="__FLT64_MAX_10_EXP__=308"/>
<definedSymbol symbol="__FLT64_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__FLT64_MAX__=1.7976931348623157e+308F64"/>
<definedSymbol symbol="__FLT64_NORM_MAX__=1.7976931348623157e+308F64"/>
<definedSymbol symbol="__FLT64_MIN__=2.2250738585072014e-308F64"/>
<definedSymbol symbol="__FLT64_EPSILON__=2.2204460492503131e-16F64"/>
<definedSymbol symbol="__FLT64_DENORM_MIN__=4.9406564584124654e-324F64"/>
<definedSymbol symbol="__FLT64_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT64_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT64_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT64_IS_IEC_60559__=2"/>
<definedSymbol symbol="__FLT32X_MANT_DIG__=53"/>
<definedSymbol symbol="__FLT32X_DIG__=15"/>
<definedSymbol symbol="__FLT32X_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__FLT32X_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__FLT32X_MAX_EXP__=1024"/>
<definedSymbol symbol="__FLT32X_MAX_10_EXP__=308"/>
<definedSymbol symbol="__FLT32X_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__FLT32X_MAX__=1.7976931348623157e+308F32x"/>
<definedSymbol symbol="__FLT32X_NORM_MAX__=1.7976931348623157e+308F32x"/>
<definedSymbol symbol="__FLT32X_MIN__=2.2250738585072014e-308F32x"/>
<definedSymbol symbol="__FLT32X_EPSILON__=2.2204460492503131e-16F32x"/>
<definedSymbol symbol="__FLT32X_DENORM_MIN__=4.9406564584124654e-324F32x"/>
<definedSymbol symbol="__FLT32X_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT32X_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT32X_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT32X_IS_IEC_60559__=2"/>
<definedSymbol symbol="__SFRACT_FBIT__=7"/>
<definedSymbol symbol="__SFRACT_IBIT__=0"/>
<definedSymbol symbol="__SFRACT_MIN__=(-0.5HR-0.5HR)"/>
<definedSymbol symbol="__SFRACT_MAX__=0X7FP-7HR"/>
<definedSymbol symbol="__SFRACT_EPSILON__=0x1P-7HR"/>
<definedSymbol symbol="__USFRACT_FBIT__=8"/>
<definedSymbol symbol="__USFRACT_IBIT__=0"/>
<definedSymbol symbol="__USFRACT_MIN__=0.0UHR"/>
<definedSymbol symbol="__USFRACT_MAX__=0XFFP-8UHR"/>
<definedSymbol symbol="__USFRACT_EPSILON__=0x1P-8UHR"/>
<definedSymbol symbol="__FRACT_FBIT__=15"/>
<definedSymbol symbol="__FRACT_IBIT__=0"/>
<definedSymbol symbol="__FRACT_MIN__=(-0.5R-0.5R)"/>
<definedSymbol symbol="__FRACT_MAX__=0X7FFFP-15R"/>
<definedSymbol symbol="__FRACT_EPSILON__=0x1P-15R"/>
<definedSymbol symbol="__UFRACT_FBIT__=16"/>
<definedSymbol symbol="__UFRACT_IBIT__=0"/>
<definedSymbol symbol="__UFRACT_MIN__=0.0UR"/>
<definedSymbol symbol="__UFRACT_MAX__=0XFFFFP-16UR"/>
<definedSymbol symbol="__UFRACT_EPSILON__=0x1P-16UR"/>
<definedSymbol symbol="__LFRACT_FBIT__=31"/>
<definedSymbol symbol="__LFRACT_IBIT__=0"/>
<definedSymbol symbol="__LFRACT_MIN__=(-0.5LR-0.5LR)"/>
<definedSymbol symbol="__LFRACT_MAX__=0X7FFFFFFFP-31LR"/>
<definedSymbol symbol="__LFRACT_EPSILON__=0x1P-31LR"/>
<definedSymbol symbol="__ULFRACT_FBIT__=32"/>
<definedSymbol symbol="__ULFRACT_IBIT__=0"/>
<definedSymbol symbol="__ULFRACT_MIN__=0.0ULR"/>
<definedSymbol symbol="__ULFRACT_MAX__=0XFFFFFFFFP-32ULR"/>
<definedSymbol symbol="__ULFRACT_EPSILON__=0x1P-32ULR"/>
<definedSymbol symbol="__LLFRACT_FBIT__=63"/>
<definedSymbol symbol="__LLFRACT_IBIT__=0"/>
<definedSymbol symbol="__LLFRACT_MIN__=(-0.5LLR-0.5LLR)"/>
<definedSymbol symbol="__LLFRACT_MAX__=0X7FFFFFFFFFFFFFFFP-63LLR"/>
<definedSymbol symbol="__LLFRACT_EPSILON__=0x1P-63LLR"/>
<definedSymbol symbol="__ULLFRACT_FBIT__=64"/>
<definedSymbol symbol="__ULLFRACT_IBIT__=0"/>
<definedSymbol symbol="__ULLFRACT_MIN__=0.0ULLR"/>
<definedSymbol symbol="__ULLFRACT_MAX__=0XFFFFFFFFFFFFFFFFP-64ULLR"/>
<definedSymbol symbol="__ULLFRACT_EPSILON__=0x1P-64ULLR"/>
<definedSymbol symbol="__SACCUM_FBIT__=7"/>
<definedSymbol symbol="__SACCUM_IBIT__=8"/>
<definedSymbol symbol="__SACCUM_MIN__=(-0X1P7HK-0X1P7HK)"/>
<definedSymbol symbol="__SACCUM_MAX__=0X7FFFP-7HK"/>
<definedSymbol symbol="__SACCUM_EPSILON__=0x1P-7HK"/>
<definedSymbol symbol="__USACCUM_FBIT__=8"/>
<definedSymbol symbol="__USACCUM_IBIT__=8"/>
<definedSymbol symbol="__USACCUM_MIN__=0.0UHK"/>
<definedSymbol symbol="__USACCUM_MAX__=0XFFFFP-8UHK"/>
<definedSymbol symbol="__USACCUM_EPSILON__=0x1P-8UHK"/>
<definedSymbol symbol="__ACCUM_FBIT__=15"/>
<definedSymbol symbol="__ACCUM_IBIT__=16"/>
<definedSymbol symbol="__ACCUM_MIN__=(-0X1P15K-0X1P15K)"/>
<definedSymbol symbol="__ACCUM_MAX__=0X7FFFFFFFP-15K"/>
<definedSymbol symbol="__ACCUM_EPSILON__=0x1P-15K"/>
<definedSymbol symbol="__UACCUM_FBIT__=16"/>
<definedSymbol symbol="__UACCUM_IBIT__=16"/>
<definedSymbol symbol="__UACCUM_MIN__=0.0UK"/>
<definedSymbol symbol="__UACCUM_MAX__=0XFFFFFFFFP-16UK"/>
<definedSymbol symbol="__UACCUM_EPSILON__=0x1P-16UK"/>
<definedSymbol symbol="__LACCUM_FBIT__=31"/>
<definedSymbol symbol="__LACCUM_IBIT__=32"/>
<definedSymbol symbol="__LACCUM_MIN__=(-0X1P31LK-0X1P31LK)"/>
<definedSymbol symbol="__LACCUM_MAX__=0X7FFFFFFFFFFFFFFFP-31LK"/>
<definedSymbol symbol="__LACCUM_EPSILON__=0x1P-31LK"/>
<definedSymbol symbol="__ULACCUM_FBIT__=32"/>
<definedSymbol symbol="__ULACCUM_IBIT__=32"/>
<definedSymbol symbol="__ULACCUM_MIN__=0.0ULK"/>
<definedSymbol symbol="__ULACCUM_MAX__=0XFFFFFFFFFFFFFFFFP-32ULK"/>
<definedSymbol symbol="__ULACCUM_EPSILON__=0x1P-32ULK"/>
<definedSymbol symbol="__LLACCUM_FBIT__=31"/>
<definedSymbol symbol="__LLACCUM_IBIT__=32"/>
<definedSymbol symbol="__LLACCUM_MIN__=(-0X1P31LLK-0X1P31LLK)"/>
<definedSymbol symbol="__LLACCUM_MAX__=0X7FFFFFFFFFFFFFFFP-31LLK"/>
<definedSymbol symbol="__LLACCUM_EPSILON__=0x1P-31LLK"/>
<definedSymbol symbol="__ULLACCUM_FBIT__=32"/>
<definedSymbol symbol="__ULLACCUM_IBIT__=32"/>
<definedSymbol symbol="__ULLACCUM_MIN__=0.0ULLK"/>
<definedSymbol symbol="__ULLACCUM_MAX__=0XFFFFFFFFFFFFFFFFP-32ULLK"/>
<definedSymbol symbol="__ULLACCUM_EPSILON__=0x1P-32ULLK"/>
<definedSymbol symbol="__QQ_FBIT__=7"/>
<definedSymbol symbol="__QQ_IBIT__=0"/>
<definedSymbol symbol="__HQ_FBIT__=15"/>
<definedSymbol symbol="__HQ_IBIT__=0"/>
<definedSymbol symbol="__SQ_FBIT__=31"/>
<definedSymbol symbol="__SQ_IBIT__=0"/>
<definedSymbol symbol="__DQ_FBIT__=63"/>
<definedSymbol symbol="__DQ_IBIT__=0"/>
<definedSymbol symbol="__TQ_FBIT__=127"/>
<definedSymbol symbol="__TQ_IBIT__=0"/>
<definedSymbol symbol="__UQQ_FBIT__=8"/>
<definedSymbol symbol="__UQQ_IBIT__=0"/>
<definedSymbol symbol="__UHQ_FBIT__=16"/>
<definedSymbol symbol="__UHQ_IBIT__=0"/>
<definedSymbol symbol="__USQ_FBIT__=32"/>
<definedSymbol symbol="__USQ_IBIT__=0"/>
<definedSymbol symbol="__UDQ_FBIT__=64"/>
<definedSymbol symbol="__UDQ_IBIT__=0"/>
<definedSymbol symbol="__UTQ_FBIT__=128"/>
<definedSymbol symbol="__UTQ_IBIT__=0"/>
<definedSymbol symbol="__HA_FBIT__=7"/>
<definedSymbol symbol="__HA_IBIT__=8"/>
<definedSymbol symbol="__SA_FBIT__=15"/>
<definedSymbol symbol="__SA_IBIT__=16"/>
<definedSymbol symbol="__DA_FBIT__=31"/>
<definedSymbol symbol="__DA_IBIT__=32"/>
<definedSymbol symbol="__TA_FBIT__=63"/>
<definedSymbol symbol="__TA_IBIT__=64"/>
<definedSymbol symbol="__UHA_FBIT__=8"/>
<definedSymbol symbol="__UHA_IBIT__=8"/>
<definedSymbol symbol="__USA_FBIT__=16"/>
<definedSymbol symbol="__USA_IBIT__=16"/>
<definedSymbol symbol="__UDA_FBIT__=32"/>
<definedSymbol symbol="__UDA_IBIT__=32"/>
<definedSymbol symbol="__UTA_FBIT__=64"/>
<definedSymbol symbol="__UTA_IBIT__=64"/>
<definedSymbol symbol="__REGISTER_PREFIX__="/>
<definedSymbol symbol="__USER_LABEL_PREFIX__="/>
<definedSymbol symbol="__GNUC_STDC_INLINE__=1"/>
<definedSymbol symbol="__NO_INLINE__=1"/>
<definedSymbol symbol="__CHAR_UNSIGNED__=1"/>
<definedSymbol symbol="__GCC_ATOMIC_BOOL_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR16_T_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR32_T_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_WCHAR_T_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_SHORT_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_INT_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_LONG_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_LLONG_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1"/>
<definedSymbol symbol="__GCC_DESTRUCTIVE_SIZE=64"/>
<definedSymbol symbol="__GCC_CONSTRUCTIVE_SIZE=64"/>
<definedSymbol symbol="__GCC_ATOMIC_POINTER_LOCK_FREE=1"/>
<definedSymbol symbol="__HAVE_SPECULATION_SAFE_VALUE=1"/>
<definedSymbol symbol="__PRAGMA_REDEFINE_EXTNAME=1"/>
<definedSymbol symbol="__SIZEOF_WCHAR_T__=4"/>
<definedSymbol symbol="__SIZEOF_WINT_T__=4"/>
<definedSymbol symbol="__SIZEOF_PTRDIFF_T__=4"/>
<definedSymbol symbol="__ARM_32BIT_STATE=1"/>
<definedSymbol symbol="__ARM_SIZEOF_MINIMAL_ENUM=1"/>
<definedSymbol symbol="__ARM_SIZEOF_WCHAR_T=4"/>
<definedSymbol symbol="__arm__=1"/>
<definedSymbol symbol="__ARM_ARCH=4"/>
<definedSymbol symbol="__ARM_ARCH_ISA_ARM=1"/>
<definedSymbol symbol="__APCS_32__=1"/>
<definedSymbol symbol="__GCC_ASM_FLAG_OUTPUTS__=1"/>
<definedSymbol symbol="__ARM_ARCH_ISA_THUMB=1"/>
<definedSymbol symbol="__ARMEL__=1"/>
<definedSymbol symbol="__SOFTFP__=1"/>
<definedSymbol symbol="__VFP_FP__=1"/>
<definedSymbol symbol="__THUMB_INTERWORK__=1"/>
<definedSymbol symbol="__ARM_ARCH_4T__=1"/>
<definedSymbol symbol="__ARM_PCS=1"/>
<definedSymbol symbol="__ARM_EABI__=1"/>
<definedSymbol symbol="__ARM_FEATURE_COPROC=1"/>
<definedSymbol symbol="__GXX_TYPEINFO_EQUALITY_INLINE=0"/>
<definedSymbol symbol="__ELF__=1"/>
<definedSymbol symbol="__USES_INITFINI__=1"/>
</collector>
</instance>
<instance id="xilinx.gnu.armv7.exe.release.835983251;xilinx.gnu.armv7.exe.release.835983251.">
<collector id="org.eclipse.cdt.make.core.PerProjectSICollector">
<includePath path="/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/../../lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include"/>
<includePath path="/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/../../lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include-fixed"/>
<includePath path="/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/bin/../aarch32-xilinx-eabi/usr/include/"/>
<definedSymbol symbol="__STDC__=1"/>
<definedSymbol symbol="__STDC_VERSION__=201710L"/>
<definedSymbol symbol="__STDC_UTF_16__=1"/>
<definedSymbol symbol="__STDC_UTF_32__=1"/>
<definedSymbol symbol="__STDC_HOSTED__=1"/>
<definedSymbol symbol="__GNUC__=12"/>
<definedSymbol symbol="__GNUC_MINOR__=2"/>
<definedSymbol symbol="__GNUC_PATCHLEVEL__=0"/>
<definedSymbol symbol="__VERSION__=&quot;12.2.0&quot;"/>
<definedSymbol symbol="__ATOMIC_RELAXED=0"/>
<definedSymbol symbol="__ATOMIC_SEQ_CST=5"/>
<definedSymbol symbol="__ATOMIC_ACQUIRE=2"/>
<definedSymbol symbol="__ATOMIC_RELEASE=3"/>
<definedSymbol symbol="__ATOMIC_ACQ_REL=4"/>
<definedSymbol symbol="__ATOMIC_CONSUME=1"/>
<definedSymbol symbol="__FINITE_MATH_ONLY__=0"/>
<definedSymbol symbol="__SIZEOF_INT__=4"/>
<definedSymbol symbol="__SIZEOF_LONG__=4"/>
<definedSymbol symbol="__SIZEOF_LONG_LONG__=8"/>
<definedSymbol symbol="__SIZEOF_SHORT__=2"/>
<definedSymbol symbol="__SIZEOF_FLOAT__=4"/>
<definedSymbol symbol="__SIZEOF_DOUBLE__=8"/>
<definedSymbol symbol="__SIZEOF_LONG_DOUBLE__=8"/>
<definedSymbol symbol="__SIZEOF_SIZE_T__=4"/>
<definedSymbol symbol="__CHAR_BIT__=8"/>
<definedSymbol symbol="__BIGGEST_ALIGNMENT__=8"/>
<definedSymbol symbol="__ORDER_LITTLE_ENDIAN__=1234"/>
<definedSymbol symbol="__ORDER_BIG_ENDIAN__=4321"/>
<definedSymbol symbol="__ORDER_PDP_ENDIAN__=3412"/>
<definedSymbol symbol="__BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__SIZEOF_POINTER__=4"/>
<definedSymbol symbol="__GNUC_EXECUTION_CHARSET_NAME=&quot;UTF-8&quot;"/>
<definedSymbol symbol="__GNUC_WIDE_EXECUTION_CHARSET_NAME=&quot;UTF-32LE&quot;"/>
<definedSymbol symbol="__SIZE_TYPE__=unsigned int"/>
<definedSymbol symbol="__PTRDIFF_TYPE__=int"/>
<definedSymbol symbol="__WCHAR_TYPE__=unsigned int"/>
<definedSymbol symbol="__WINT_TYPE__=unsigned int"/>
<definedSymbol symbol="__INTMAX_TYPE__=long long int"/>
<definedSymbol symbol="__UINTMAX_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__CHAR16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__CHAR32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__SIG_ATOMIC_TYPE__=int"/>
<definedSymbol symbol="__INT8_TYPE__=signed char"/>
<definedSymbol symbol="__INT16_TYPE__=short int"/>
<definedSymbol symbol="__INT32_TYPE__=long int"/>
<definedSymbol symbol="__INT64_TYPE__=long long int"/>
<definedSymbol symbol="__UINT8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__INT_LEAST8_TYPE__=signed char"/>
<definedSymbol symbol="__INT_LEAST16_TYPE__=short int"/>
<definedSymbol symbol="__INT_LEAST32_TYPE__=long int"/>
<definedSymbol symbol="__INT_LEAST64_TYPE__=long long int"/>
<definedSymbol symbol="__UINT_LEAST8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT_LEAST16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT_LEAST32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT_LEAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__INT_FAST8_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST16_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST32_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST64_TYPE__=long long int"/>
<definedSymbol symbol="__UINT_FAST8_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST16_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__INTPTR_TYPE__=int"/>
<definedSymbol symbol="__UINTPTR_TYPE__=unsigned int"/>
<definedSymbol symbol="__GXX_ABI_VERSION=1017"/>
<definedSymbol symbol="__SCHAR_MAX__=0x7f"/>
<definedSymbol symbol="__SHRT_MAX__=0x7fff"/>
<definedSymbol symbol="__INT_MAX__=0x7fffffff"/>
<definedSymbol symbol="__LONG_MAX__=0x7fffffffL"/>
<definedSymbol symbol="__LONG_LONG_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__WCHAR_MAX__=0xffffffffU"/>
<definedSymbol symbol="__WCHAR_MIN__=0U"/>
<definedSymbol symbol="__WINT_MAX__=0xffffffffU"/>
<definedSymbol symbol="__WINT_MIN__=0U"/>
<definedSymbol symbol="__PTRDIFF_MAX__=0x7fffffff"/>
<definedSymbol symbol="__SIZE_MAX__=0xffffffffU"/>
<definedSymbol symbol="__SCHAR_WIDTH__=8"/>
<definedSymbol symbol="__SHRT_WIDTH__=16"/>
<definedSymbol symbol="__INT_WIDTH__=32"/>
<definedSymbol symbol="__LONG_WIDTH__=32"/>
<definedSymbol symbol="__LONG_LONG_WIDTH__=64"/>
<definedSymbol symbol="__WCHAR_WIDTH__=32"/>
<definedSymbol symbol="__WINT_WIDTH__=32"/>
<definedSymbol symbol="__PTRDIFF_WIDTH__=32"/>
<definedSymbol symbol="__SIZE_WIDTH__=32"/>
<definedSymbol symbol="__INTMAX_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__INTMAX_C(c)=c ## LL"/>
<definedSymbol symbol="__UINTMAX_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__UINTMAX_C(c)=c ## ULL"/>
<definedSymbol symbol="__INTMAX_WIDTH__=64"/>
<definedSymbol symbol="__SIG_ATOMIC_MAX__=0x7fffffff"/>
<definedSymbol symbol="__SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)"/>
<definedSymbol symbol="__SIG_ATOMIC_WIDTH__=32"/>
<definedSymbol symbol="__INT8_MAX__=0x7f"/>
<definedSymbol symbol="__INT16_MAX__=0x7fff"/>
<definedSymbol symbol="__INT32_MAX__=0x7fffffffL"/>
<definedSymbol symbol="__INT64_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__UINT8_MAX__=0xff"/>
<definedSymbol symbol="__UINT16_MAX__=0xffff"/>
<definedSymbol symbol="__UINT32_MAX__=0xffffffffUL"/>
<definedSymbol symbol="__UINT64_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__INT_LEAST8_MAX__=0x7f"/>
<definedSymbol symbol="__INT8_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST8_WIDTH__=8"/>
<definedSymbol symbol="__INT_LEAST16_MAX__=0x7fff"/>
<definedSymbol symbol="__INT16_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST16_WIDTH__=16"/>
<definedSymbol symbol="__INT_LEAST32_MAX__=0x7fffffffL"/>
<definedSymbol symbol="__INT32_C(c)=c ## L"/>
<definedSymbol symbol="__INT_LEAST32_WIDTH__=32"/>
<definedSymbol symbol="__INT_LEAST64_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__INT64_C(c)=c ## LL"/>
<definedSymbol symbol="__INT_LEAST64_WIDTH__=64"/>
<definedSymbol symbol="__UINT_LEAST8_MAX__=0xff"/>
<definedSymbol symbol="__UINT8_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST16_MAX__=0xffff"/>
<definedSymbol symbol="__UINT16_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST32_MAX__=0xffffffffUL"/>
<definedSymbol symbol="__UINT32_C(c)=c ## UL"/>
<definedSymbol symbol="__UINT_LEAST64_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__UINT64_C(c)=c ## ULL"/>
<definedSymbol symbol="__INT_FAST8_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INT_FAST8_WIDTH__=32"/>
<definedSymbol symbol="__INT_FAST16_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INT_FAST16_WIDTH__=32"/>
<definedSymbol symbol="__INT_FAST32_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INT_FAST32_WIDTH__=32"/>
<definedSymbol symbol="__INT_FAST64_MAX__=0x7fffffffffffffffLL"/>
<definedSymbol symbol="__INT_FAST64_WIDTH__=64"/>
<definedSymbol symbol="__UINT_FAST8_MAX__=0xffffffffU"/>
<definedSymbol symbol="__UINT_FAST16_MAX__=0xffffffffU"/>
<definedSymbol symbol="__UINT_FAST32_MAX__=0xffffffffU"/>
<definedSymbol symbol="__UINT_FAST64_MAX__=0xffffffffffffffffULL"/>
<definedSymbol symbol="__INTPTR_MAX__=0x7fffffff"/>
<definedSymbol symbol="__INTPTR_WIDTH__=32"/>
<definedSymbol symbol="__UINTPTR_MAX__=0xffffffffU"/>
<definedSymbol symbol="__GCC_IEC_559=0"/>
<definedSymbol symbol="__GCC_IEC_559_COMPLEX=0"/>
<definedSymbol symbol="__FLT_EVAL_METHOD__=0"/>
<definedSymbol symbol="__FLT_EVAL_METHOD_TS_18661_3__=0"/>
<definedSymbol symbol="__DEC_EVAL_METHOD__=2"/>
<definedSymbol symbol="__FLT_RADIX__=2"/>
<definedSymbol symbol="__FLT_MANT_DIG__=24"/>
<definedSymbol symbol="__FLT_DIG__=6"/>
<definedSymbol symbol="__FLT_MIN_EXP__=(-125)"/>
<definedSymbol symbol="__FLT_MIN_10_EXP__=(-37)"/>
<definedSymbol symbol="__FLT_MAX_EXP__=128"/>
<definedSymbol symbol="__FLT_MAX_10_EXP__=38"/>
<definedSymbol symbol="__FLT_DECIMAL_DIG__=9"/>
<definedSymbol symbol="__FLT_MAX__=3.4028234663852886e+38F"/>
<definedSymbol symbol="__FLT_NORM_MAX__=3.4028234663852886e+38F"/>
<definedSymbol symbol="__FLT_MIN__=1.1754943508222875e-38F"/>
<definedSymbol symbol="__FLT_EPSILON__=1.1920928955078125e-7F"/>
<definedSymbol symbol="__FLT_DENORM_MIN__=1.4012984643248171e-45F"/>
<definedSymbol symbol="__FLT_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT_IS_IEC_60559__=2"/>
<definedSymbol symbol="__DBL_MANT_DIG__=53"/>
<definedSymbol symbol="__DBL_DIG__=15"/>
<definedSymbol symbol="__DBL_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__DBL_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__DBL_MAX_EXP__=1024"/>
<definedSymbol symbol="__DBL_MAX_10_EXP__=308"/>
<definedSymbol symbol="__DBL_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__DBL_MAX__=((double)1.7976931348623157e+308L)"/>
<definedSymbol symbol="__DBL_NORM_MAX__=((double)1.7976931348623157e+308L)"/>
<definedSymbol symbol="__DBL_MIN__=((double)2.2250738585072014e-308L)"/>
<definedSymbol symbol="__DBL_EPSILON__=((double)2.2204460492503131e-16L)"/>
<definedSymbol symbol="__DBL_DENORM_MIN__=((double)4.9406564584124654e-324L)"/>
<definedSymbol symbol="__DBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__DBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__DBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__DBL_IS_IEC_60559__=2"/>
<definedSymbol symbol="__LDBL_MANT_DIG__=53"/>
<definedSymbol symbol="__LDBL_DIG__=15"/>
<definedSymbol symbol="__LDBL_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__LDBL_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__LDBL_MAX_EXP__=1024"/>
<definedSymbol symbol="__LDBL_MAX_10_EXP__=308"/>
<definedSymbol symbol="__DECIMAL_DIG__=17"/>
<definedSymbol symbol="__LDBL_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__LDBL_MAX__=1.7976931348623157e+308L"/>
<definedSymbol symbol="__LDBL_NORM_MAX__=1.7976931348623157e+308L"/>
<definedSymbol symbol="__LDBL_MIN__=2.2250738585072014e-308L"/>
<definedSymbol symbol="__LDBL_EPSILON__=2.2204460492503131e-16L"/>
<definedSymbol symbol="__LDBL_DENORM_MIN__=4.9406564584124654e-324L"/>
<definedSymbol symbol="__LDBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__LDBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__LDBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__LDBL_IS_IEC_60559__=2"/>
<definedSymbol symbol="__FLT32_MANT_DIG__=24"/>
<definedSymbol symbol="__FLT32_DIG__=6"/>
<definedSymbol symbol="__FLT32_MIN_EXP__=(-125)"/>
<definedSymbol symbol="__FLT32_MIN_10_EXP__=(-37)"/>
<definedSymbol symbol="__FLT32_MAX_EXP__=128"/>
<definedSymbol symbol="__FLT32_MAX_10_EXP__=38"/>
<definedSymbol symbol="__FLT32_DECIMAL_DIG__=9"/>
<definedSymbol symbol="__FLT32_MAX__=3.4028234663852886e+38F32"/>
<definedSymbol symbol="__FLT32_NORM_MAX__=3.4028234663852886e+38F32"/>
<definedSymbol symbol="__FLT32_MIN__=1.1754943508222875e-38F32"/>
<definedSymbol symbol="__FLT32_EPSILON__=1.1920928955078125e-7F32"/>
<definedSymbol symbol="__FLT32_DENORM_MIN__=1.4012984643248171e-45F32"/>
<definedSymbol symbol="__FLT32_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT32_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT32_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT32_IS_IEC_60559__=2"/>
<definedSymbol symbol="__FLT64_MANT_DIG__=53"/>
<definedSymbol symbol="__FLT64_DIG__=15"/>
<definedSymbol symbol="__FLT64_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__FLT64_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__FLT64_MAX_EXP__=1024"/>
<definedSymbol symbol="__FLT64_MAX_10_EXP__=308"/>
<definedSymbol symbol="__FLT64_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__FLT64_MAX__=1.7976931348623157e+308F64"/>
<definedSymbol symbol="__FLT64_NORM_MAX__=1.7976931348623157e+308F64"/>
<definedSymbol symbol="__FLT64_MIN__=2.2250738585072014e-308F64"/>
<definedSymbol symbol="__FLT64_EPSILON__=2.2204460492503131e-16F64"/>
<definedSymbol symbol="__FLT64_DENORM_MIN__=4.9406564584124654e-324F64"/>
<definedSymbol symbol="__FLT64_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT64_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT64_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT64_IS_IEC_60559__=2"/>
<definedSymbol symbol="__FLT32X_MANT_DIG__=53"/>
<definedSymbol symbol="__FLT32X_DIG__=15"/>
<definedSymbol symbol="__FLT32X_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__FLT32X_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__FLT32X_MAX_EXP__=1024"/>
<definedSymbol symbol="__FLT32X_MAX_10_EXP__=308"/>
<definedSymbol symbol="__FLT32X_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__FLT32X_MAX__=1.7976931348623157e+308F32x"/>
<definedSymbol symbol="__FLT32X_NORM_MAX__=1.7976931348623157e+308F32x"/>
<definedSymbol symbol="__FLT32X_MIN__=2.2250738585072014e-308F32x"/>
<definedSymbol symbol="__FLT32X_EPSILON__=2.2204460492503131e-16F32x"/>
<definedSymbol symbol="__FLT32X_DENORM_MIN__=4.9406564584124654e-324F32x"/>
<definedSymbol symbol="__FLT32X_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT32X_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT32X_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__FLT32X_IS_IEC_60559__=2"/>
<definedSymbol symbol="__SFRACT_FBIT__=7"/>
<definedSymbol symbol="__SFRACT_IBIT__=0"/>
<definedSymbol symbol="__SFRACT_MIN__=(-0.5HR-0.5HR)"/>
<definedSymbol symbol="__SFRACT_MAX__=0X7FP-7HR"/>
<definedSymbol symbol="__SFRACT_EPSILON__=0x1P-7HR"/>
<definedSymbol symbol="__USFRACT_FBIT__=8"/>
<definedSymbol symbol="__USFRACT_IBIT__=0"/>
<definedSymbol symbol="__USFRACT_MIN__=0.0UHR"/>
<definedSymbol symbol="__USFRACT_MAX__=0XFFP-8UHR"/>
<definedSymbol symbol="__USFRACT_EPSILON__=0x1P-8UHR"/>
<definedSymbol symbol="__FRACT_FBIT__=15"/>
<definedSymbol symbol="__FRACT_IBIT__=0"/>
<definedSymbol symbol="__FRACT_MIN__=(-0.5R-0.5R)"/>
<definedSymbol symbol="__FRACT_MAX__=0X7FFFP-15R"/>
<definedSymbol symbol="__FRACT_EPSILON__=0x1P-15R"/>
<definedSymbol symbol="__UFRACT_FBIT__=16"/>
<definedSymbol symbol="__UFRACT_IBIT__=0"/>
<definedSymbol symbol="__UFRACT_MIN__=0.0UR"/>
<definedSymbol symbol="__UFRACT_MAX__=0XFFFFP-16UR"/>
<definedSymbol symbol="__UFRACT_EPSILON__=0x1P-16UR"/>
<definedSymbol symbol="__LFRACT_FBIT__=31"/>
<definedSymbol symbol="__LFRACT_IBIT__=0"/>
<definedSymbol symbol="__LFRACT_MIN__=(-0.5LR-0.5LR)"/>
<definedSymbol symbol="__LFRACT_MAX__=0X7FFFFFFFP-31LR"/>
<definedSymbol symbol="__LFRACT_EPSILON__=0x1P-31LR"/>
<definedSymbol symbol="__ULFRACT_FBIT__=32"/>
<definedSymbol symbol="__ULFRACT_IBIT__=0"/>
<definedSymbol symbol="__ULFRACT_MIN__=0.0ULR"/>
<definedSymbol symbol="__ULFRACT_MAX__=0XFFFFFFFFP-32ULR"/>
<definedSymbol symbol="__ULFRACT_EPSILON__=0x1P-32ULR"/>
<definedSymbol symbol="__LLFRACT_FBIT__=63"/>
<definedSymbol symbol="__LLFRACT_IBIT__=0"/>
<definedSymbol symbol="__LLFRACT_MIN__=(-0.5LLR-0.5LLR)"/>
<definedSymbol symbol="__LLFRACT_MAX__=0X7FFFFFFFFFFFFFFFP-63LLR"/>
<definedSymbol symbol="__LLFRACT_EPSILON__=0x1P-63LLR"/>
<definedSymbol symbol="__ULLFRACT_FBIT__=64"/>
<definedSymbol symbol="__ULLFRACT_IBIT__=0"/>
<definedSymbol symbol="__ULLFRACT_MIN__=0.0ULLR"/>
<definedSymbol symbol="__ULLFRACT_MAX__=0XFFFFFFFFFFFFFFFFP-64ULLR"/>
<definedSymbol symbol="__ULLFRACT_EPSILON__=0x1P-64ULLR"/>
<definedSymbol symbol="__SACCUM_FBIT__=7"/>
<definedSymbol symbol="__SACCUM_IBIT__=8"/>
<definedSymbol symbol="__SACCUM_MIN__=(-0X1P7HK-0X1P7HK)"/>
<definedSymbol symbol="__SACCUM_MAX__=0X7FFFP-7HK"/>
<definedSymbol symbol="__SACCUM_EPSILON__=0x1P-7HK"/>
<definedSymbol symbol="__USACCUM_FBIT__=8"/>
<definedSymbol symbol="__USACCUM_IBIT__=8"/>
<definedSymbol symbol="__USACCUM_MIN__=0.0UHK"/>
<definedSymbol symbol="__USACCUM_MAX__=0XFFFFP-8UHK"/>
<definedSymbol symbol="__USACCUM_EPSILON__=0x1P-8UHK"/>
<definedSymbol symbol="__ACCUM_FBIT__=15"/>
<definedSymbol symbol="__ACCUM_IBIT__=16"/>
<definedSymbol symbol="__ACCUM_MIN__=(-0X1P15K-0X1P15K)"/>
<definedSymbol symbol="__ACCUM_MAX__=0X7FFFFFFFP-15K"/>
<definedSymbol symbol="__ACCUM_EPSILON__=0x1P-15K"/>
<definedSymbol symbol="__UACCUM_FBIT__=16"/>
<definedSymbol symbol="__UACCUM_IBIT__=16"/>
<definedSymbol symbol="__UACCUM_MIN__=0.0UK"/>
<definedSymbol symbol="__UACCUM_MAX__=0XFFFFFFFFP-16UK"/>
<definedSymbol symbol="__UACCUM_EPSILON__=0x1P-16UK"/>
<definedSymbol symbol="__LACCUM_FBIT__=31"/>
<definedSymbol symbol="__LACCUM_IBIT__=32"/>
<definedSymbol symbol="__LACCUM_MIN__=(-0X1P31LK-0X1P31LK)"/>
<definedSymbol symbol="__LACCUM_MAX__=0X7FFFFFFFFFFFFFFFP-31LK"/>
<definedSymbol symbol="__LACCUM_EPSILON__=0x1P-31LK"/>
<definedSymbol symbol="__ULACCUM_FBIT__=32"/>
<definedSymbol symbol="__ULACCUM_IBIT__=32"/>
<definedSymbol symbol="__ULACCUM_MIN__=0.0ULK"/>
<definedSymbol symbol="__ULACCUM_MAX__=0XFFFFFFFFFFFFFFFFP-32ULK"/>
<definedSymbol symbol="__ULACCUM_EPSILON__=0x1P-32ULK"/>
<definedSymbol symbol="__LLACCUM_FBIT__=31"/>
<definedSymbol symbol="__LLACCUM_IBIT__=32"/>
<definedSymbol symbol="__LLACCUM_MIN__=(-0X1P31LLK-0X1P31LLK)"/>
<definedSymbol symbol="__LLACCUM_MAX__=0X7FFFFFFFFFFFFFFFP-31LLK"/>
<definedSymbol symbol="__LLACCUM_EPSILON__=0x1P-31LLK"/>
<definedSymbol symbol="__ULLACCUM_FBIT__=32"/>
<definedSymbol symbol="__ULLACCUM_IBIT__=32"/>
<definedSymbol symbol="__ULLACCUM_MIN__=0.0ULLK"/>
<definedSymbol symbol="__ULLACCUM_MAX__=0XFFFFFFFFFFFFFFFFP-32ULLK"/>
<definedSymbol symbol="__ULLACCUM_EPSILON__=0x1P-32ULLK"/>
<definedSymbol symbol="__QQ_FBIT__=7"/>
<definedSymbol symbol="__QQ_IBIT__=0"/>
<definedSymbol symbol="__HQ_FBIT__=15"/>
<definedSymbol symbol="__HQ_IBIT__=0"/>
<definedSymbol symbol="__SQ_FBIT__=31"/>
<definedSymbol symbol="__SQ_IBIT__=0"/>
<definedSymbol symbol="__DQ_FBIT__=63"/>
<definedSymbol symbol="__DQ_IBIT__=0"/>
<definedSymbol symbol="__TQ_FBIT__=127"/>
<definedSymbol symbol="__TQ_IBIT__=0"/>
<definedSymbol symbol="__UQQ_FBIT__=8"/>
<definedSymbol symbol="__UQQ_IBIT__=0"/>
<definedSymbol symbol="__UHQ_FBIT__=16"/>
<definedSymbol symbol="__UHQ_IBIT__=0"/>
<definedSymbol symbol="__USQ_FBIT__=32"/>
<definedSymbol symbol="__USQ_IBIT__=0"/>
<definedSymbol symbol="__UDQ_FBIT__=64"/>
<definedSymbol symbol="__UDQ_IBIT__=0"/>
<definedSymbol symbol="__UTQ_FBIT__=128"/>
<definedSymbol symbol="__UTQ_IBIT__=0"/>
<definedSymbol symbol="__HA_FBIT__=7"/>
<definedSymbol symbol="__HA_IBIT__=8"/>
<definedSymbol symbol="__SA_FBIT__=15"/>
<definedSymbol symbol="__SA_IBIT__=16"/>
<definedSymbol symbol="__DA_FBIT__=31"/>
<definedSymbol symbol="__DA_IBIT__=32"/>
<definedSymbol symbol="__TA_FBIT__=63"/>
<definedSymbol symbol="__TA_IBIT__=64"/>
<definedSymbol symbol="__UHA_FBIT__=8"/>
<definedSymbol symbol="__UHA_IBIT__=8"/>
<definedSymbol symbol="__USA_FBIT__=16"/>
<definedSymbol symbol="__USA_IBIT__=16"/>
<definedSymbol symbol="__UDA_FBIT__=32"/>
<definedSymbol symbol="__UDA_IBIT__=32"/>
<definedSymbol symbol="__UTA_FBIT__=64"/>
<definedSymbol symbol="__UTA_IBIT__=64"/>
<definedSymbol symbol="__REGISTER_PREFIX__="/>
<definedSymbol symbol="__USER_LABEL_PREFIX__="/>
<definedSymbol symbol="__GNUC_STDC_INLINE__=1"/>
<definedSymbol symbol="__NO_INLINE__=1"/>
<definedSymbol symbol="__CHAR_UNSIGNED__=1"/>
<definedSymbol symbol="__GCC_ATOMIC_BOOL_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR16_T_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR32_T_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_WCHAR_T_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_SHORT_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_INT_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_LONG_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_LLONG_LOCK_FREE=1"/>
<definedSymbol symbol="__GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1"/>
<definedSymbol symbol="__GCC_DESTRUCTIVE_SIZE=64"/>
<definedSymbol symbol="__GCC_CONSTRUCTIVE_SIZE=64"/>
<definedSymbol symbol="__GCC_ATOMIC_POINTER_LOCK_FREE=1"/>
<definedSymbol symbol="__HAVE_SPECULATION_SAFE_VALUE=1"/>
<definedSymbol symbol="__PRAGMA_REDEFINE_EXTNAME=1"/>
<definedSymbol symbol="__SIZEOF_WCHAR_T__=4"/>
<definedSymbol symbol="__SIZEOF_WINT_T__=4"/>
<definedSymbol symbol="__SIZEOF_PTRDIFF_T__=4"/>
<definedSymbol symbol="__ARM_32BIT_STATE=1"/>
<definedSymbol symbol="__ARM_SIZEOF_MINIMAL_ENUM=1"/>
<definedSymbol symbol="__ARM_SIZEOF_WCHAR_T=4"/>
<definedSymbol symbol="__arm__=1"/>
<definedSymbol symbol="__ARM_ARCH=4"/>
<definedSymbol symbol="__ARM_ARCH_ISA_ARM=1"/>
<definedSymbol symbol="__APCS_32__=1"/>
<definedSymbol symbol="__GCC_ASM_FLAG_OUTPUTS__=1"/>
<definedSymbol symbol="__ARM_ARCH_ISA_THUMB=1"/>
<definedSymbol symbol="__ARMEL__=1"/>
<definedSymbol symbol="__SOFTFP__=1"/>
<definedSymbol symbol="__VFP_FP__=1"/>
<definedSymbol symbol="__THUMB_INTERWORK__=1"/>
<definedSymbol symbol="__ARM_ARCH_4T__=1"/>
<definedSymbol symbol="__ARM_PCS=1"/>
<definedSymbol symbol="__ARM_EABI__=1"/>
<definedSymbol symbol="__ARM_FEATURE_COPROC=1"/>
<definedSymbol symbol="__GXX_TYPEINFO_EQUALITY_INLINE=0"/>
<definedSymbol symbol="__ELF__=1"/>
<definedSymbol symbol="__USES_INITFINI__=1"/>
</collector>
</instance>
</scannerInfo>
@@ -1,755 +0,0 @@
09:48:39 **** Build of project NewInstCal_bsp ****
buildplatform.sh 33485 NewInstCal_bsp
XSDB Server Channel: tcfchan#1
Cleaning the zynq_fsbl application.
rm -rf fsbl_hooks.o image_mover.o main.o md5.o nand.o nor.o pcap.o ps7_init.o qspi.o rsa.o sd.o fsbl_handoff.o zynq
_fsbl_bsp/ps7_cortexa9_0/lib/libxil.a fsbl.elf *.o
Building the zynq_fsbl application.
make: Entering directory '/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/zynq_fsbl/zynq_fsb
l_bsp'
make --no-print-directory seq_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilffs_v5_1/src
make -C ps7_cortexa9_0/libsrc/xilffs_v5_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilrsa_v1_7/src
make -C ps7_cortexa9_0/libsrc/xilrsa_v1_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xilrsa_v1_7/src
make -C ps7_cortexa9_0/libsrc/xilrsa_v1_7/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Finished building libraries sequentially.
make -j 30 --no-print-directory par_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilffs_v5_1/src
make -C ps7_cortexa9_0/libsrc/xilffs_v5_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilrsa_v1_7/src
make -C ps7_cortexa9_0/libsrc/xilrsa_v1_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-non
e-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=
hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scugic_v5_2/src
Running Make libs in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nosta
rtfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xilffs_v5_1/src
make -C ps7_cortexa9_0/libsrc/xilffs_v5_1/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
xtime_l.c:45:9: note: '#pragma message: For the sleep routines, Global timer is being used'
45 | #pragma message ("For the sleep routines, Global timer is being used")
| ^~~~~~~
Finished building libraries parallelly.
make --no-print-directory archive
arm-none-eabi-ar -r ps7_cortexa9_0/lib/libxil.a ps7_cortexa9_0/lib/_exit.o ps7_cortexa9_0/lib/_open.o ps7_cortexa9_0/lib/_sbrk
.o ps7_cortexa9_0/lib/abort.o ps7_cortexa9_0/lib/asm_vectors.o ps7_cortexa9_0/lib/boot.o ps7_cortexa9_0/lib/close.o ps7_cortexa
9_0/lib/cpputest_time.o ps7_cortexa9_0/lib/cpu_init.o ps7_cortexa9_0/lib/errno.o ps7_cortexa9_0/lib/fcntl.o ps7_cortexa9_0/lib/
fstat.o ps7_cortexa9_0/lib/getentropy.o ps7_cortexa9_0/lib/getpid.o ps7_cortexa9_0/lib/inbyte.o ps7_cortexa9_0/lib/isatty.o ps7
_cortexa9_0/lib/kill.o ps7_cortexa9_0/lib/lseek.o ps7_cortexa9_0/lib/open.o ps7_cortexa9_0/lib/outbyte.o ps7_cortexa9_0/lib/pri
nt.o ps7_cortexa9_0/lib/putnum.o ps7_cortexa9_0/lib/read.o ps7_cortexa9_0/lib/sbrk.o ps7_cortexa9_0/lib/sleep.o ps7_cortexa9_0/
lib/time.o ps7_cortexa9_0/lib/translation_table.o ps7_cortexa9_0/lib/unlink.o ps7_cortexa9_0/lib/usleep.o ps7_cortexa9_0/lib/ve
ctors.o ps7_cortexa9_0/lib/write.o ps7_cortexa9_0/lib/xadcps.o ps7_cortexa9_0/lib/xadcps_g.o ps7_cortexa9_0/lib/xadcps_intr.o p
s7_cortexa9_0/lib/xadcps_selftest.o ps7_cortexa9_0/lib/xadcps_sinit.o ps7_cortexa9_0/lib/xcoresightpsdcc.o ps7_cortexa9_0/lib/x
devcfg.o ps7_cortexa9_0/lib/xdevcfg_g.o ps7_cortexa9_0/lib/xdevcfg_hw.o ps7_cortexa9_0/lib/xdevcfg_intr.o ps7_cortexa9_0/lib/xd
evcfg_selftest.o ps7_cortexa9_0/lib/xdevcfg_sinit.o ps7_cortexa9_0/lib/xdmaps.o ps7_cortexa9_0/lib/xdmaps_g.o ps7_cortexa9_0/li
b/xdmaps_hw.o ps7_cortexa9_0/lib/xdmaps_selftest.o ps7_cortexa9_0/lib/xdmaps_sinit.o ps7_cortexa9_0/lib/xemacps.o ps7_cortexa9_
0/lib/xemacps_bdring.o ps7_cortexa9_0/lib/xemacps_control.o ps7_cortexa9_0/lib/xemacps_g.o ps7_cortexa9_0/lib/xemacps_hw.o ps7_
cortexa9_0/lib/xemacps_intr.o ps7_cortexa9_0/lib/xemacps_sinit.o ps7_cortexa9_0/lib/xgpiops.o ps7_cortexa9_0/lib/xgpiops_g.o ps
7_cortexa9_0/lib/xgpiops_hw.o ps7_cortexa9_0/lib/xgpiops_intr.o ps7_cortexa9_0/lib/xgpiops_selftest.o ps7_cortexa9_0/lib/xgpiop
s_sinit.o ps7_cortexa9_0/lib/xil-crt0.o ps7_cortexa9_0/lib/xil_assert.o ps7_cortexa9_0/lib/xil_cache.o ps7_cortexa9_0/lib/xil_c
locking.o ps7_cortexa9_0/lib/xil_exception.o ps7_cortexa9_0/lib/xil_mem.o ps7_cortexa9_0/lib/xil_misc_psreset_api.o ps7_cortexa
9_0/lib/xil_mmu.o ps7_cortexa9_0/lib/xil_printf.o ps7_cortexa9_0/lib/xil_sleepcommon.o ps7_cortexa9_0/lib/xil_sleeptimer.o ps7_
cortexa9_0/lib/xil_spinlock.o ps7_cortexa9_0/lib/xil_testcache.o ps7_cortexa9_0/lib/xil_testio.o ps7_cortexa9_0/lib/xil_testmem
.o ps7_cortexa9_0/lib/xil_util.o ps7_cortexa9_0/lib/xinterrupt_wrap.o ps7_cortexa9_0/lib/xl2cc_counter.o ps7_cortexa9_0/lib/xpl
atform_info.o ps7_cortexa9_0/lib/xpm_counter.o ps7_cortexa9_0/lib/xpm_init.o ps7_cortexa9_0/lib/xqspips.o ps7_cortexa9_0/lib/xq
spips_g.o ps7_cortexa9_0/lib/xqspips_hw.o ps7_cortexa9_0/lib/xqspips_options.o ps7_cortexa9_0/lib/xqspips_selftest.o ps7_cortex
a9_0/lib/xqspips_sinit.o ps7_cortexa9_0/lib/xscugic.o ps7_cortexa9_0/lib/xscugic_g.o ps7_cortexa9_0/lib/xscugic_hw.o ps7_cortex
a9_0/lib/xscugic_intr.o ps7_cortexa9_0/lib/xscugic_selftest.o ps7_cortexa9_0/lib/xscugic_sinit.o ps7_cortexa9_0/lib/xscutimer.o
ps7_cortexa9_0/lib/xscutimer_g.o ps7_cortexa9_0/lib/xscutimer_selftest.o ps7_cortexa9_0/lib/xscutimer_sinit.o ps7_cortexa9_0/l
ib/xscuwdt.o ps7_cortexa9_0/lib/xscuwdt_g.o ps7_cortexa9_0/lib/xscuwdt_selftest.o ps7_cortexa9_0/lib/xscuwdt_sinit.o ps7_cortex
a9_0/lib/xsdps.o ps7_cortexa9_0/lib/xsdps_card.o ps7_cortexa9_0/lib/xsdps_g.o ps7_cortexa9_0/lib/xsdps_host.o ps7_cortexa9_0/li
b/xsdps_options.o ps7_cortexa9_0/lib/xsdps_sinit.o ps7_cortexa9_0/lib/xtime_l.o ps7_cortexa9_0/lib/xuartps.o ps7_cortexa9_0/lib
/xuartps_g.o ps7_cortexa9_0/lib/xuartps_hw.o ps7_cortexa9_0/lib/xuartps_intr.o ps7_cortexa9_0/lib/xuartps_options.o ps7_cortexa
9_0/lib/xuartps_selftest.o ps7_cortexa9_0/lib/xuartps_sinit.o
/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/bin/../x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/arm-xilinx-eabi-ar.real: creating ps7_cortexa9_0/lib/libxil.a
Finished building libraries
make: Leaving directory '/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/zynq_fsbl/zynq_fsbl
_bsp'
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c fsbl_hooks.c -o fsbl_hooks.o -Izynq_f
sbl_bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c image_mover.c -o image_mover.o -Izynq
_fsbl_bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c main.c -o main.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c md5.c -o md5.o -Izynq_fsbl_bsp/ps7_co
rtexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c nand.c -o nand.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c nor.c -o nor.o -Izynq_fsbl_bsp/ps7_co
rtexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c pcap.c -o pcap.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c ps7_init.c -o ps7_init.o -Izynq_fsbl_
bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c qspi.c -o qspi.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c rsa.c -o rsa.o -Izynq_fsbl_bsp/ps7_co
rtexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c sd.c -o sd.o -Izynq_fsbl_bsp/ps7_cort
exa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c fsbl_handoff.S -o fsbl_handoff.o -Izy
nq_fsbl_bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -o fsbl.elf fsbl_handoff.o fsbl_hooks.o image_mover.o main.o md5.o nand.o nor.o pcap.o ps7_init.o qspi.o rsa.
o sd.o -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -Wl,-build-id
=none -specs=Xilinx.spec -lrsa -Wl,--start-group,-lxil,-lgcc,-lc,--end-group -Wl,--start-group,-lxilffs,-lxil,-lgcc,-lc,--end-
group -Wl,--start-group,-lrsa,-lxil,-lgcc,-lc,--end-group -Wl,--gc-sections -Lzynq_fsbl_bsp/p
s7_cortexa9_0/lib -L./ -Tlscript.ld
Building the BSP Library for domain - standalone_domain on processor ps7_cortexa9_0
make --no-print-directory seq_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/lwip213_v1_1/src
make -C ps7_cortexa9_0/libsrc/lwip213_v1_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/lwip213_v1_1/src
make -C ps7_cortexa9_0/libsrc/lwip213_v1_1/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Compiling lwip src and adapter files
contrib/ports/xilinx/netif/xadapter.c: In function 'eth_link_detect':
contrib/ports/xilinx/netif/xadapter.c:471:9: warning: enumeration value 'xemac_type_unknown' not handled in switch [-Wswitch]
471 | switch (xemac->type) {
| ^~~~~~
contrib/ports/xilinx/netif/xadapter.c:471:9: warning: enumeration value 'xemac_type_xps_ll_temac' not handled in switch [-Wswitch]
Finished building libraries sequentially.
make -j 30 --no-print-directory par_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/lwip213_v1_1/src
make -C ps7_cortexa9_0/libsrc/lwip213_v1_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-non
e-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=
hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
Running Make libs in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
Running Make libs in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nosta
rtfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
xtime_l.c:45:9: note: '#pragma message: For the sleep routines, Global timer is being used'
45 | #pragma message ("For the sleep routines, Global timer is being used")
| ^~~~~~~
Finished building libraries parallelly.
make --no-print-directory archive
arm-none-eabi-ar -r ps7_cortexa9_0/lib/libxil.a ps7_cortexa9_0/lib/_exit.o ps7_cortexa9_0/lib/_open.o ps7_cortexa9_0/lib/_sbrk
.o ps7_cortexa9_0/lib/abort.o ps7_cortexa9_0/lib/asm_vectors.o ps7_cortexa9_0/lib/boot.o ps7_cortexa9_0/lib/close.o ps7_cortexa
9_0/lib/cpputest_time.o ps7_cortexa9_0/lib/cpu_init.o ps7_cortexa9_0/lib/errno.o ps7_cortexa9_0/lib/fcntl.o ps7_cortexa9_0/lib/
fstat.o ps7_cortexa9_0/lib/getentropy.o ps7_cortexa9_0/lib/getpid.o ps7_cortexa9_0/lib/inbyte.o ps7_cortexa9_0/lib/isatty.o ps7
_cortexa9_0/lib/kill.o ps7_cortexa9_0/lib/lseek.o ps7_cortexa9_0/lib/open.o ps7_cortexa9_0/lib/outbyte.o ps7_cortexa9_0/lib/pri
nt.o ps7_cortexa9_0/lib/putnum.o ps7_cortexa9_0/lib/read.o ps7_cortexa9_0/lib/sbrk.o ps7_cortexa9_0/lib/sleep.o ps7_cortexa9_0/
lib/time.o ps7_cortexa9_0/lib/translation_table.o ps7_cortexa9_0/lib/unlink.o ps7_cortexa9_0/lib/usleep.o ps7_cortexa9_0/lib/ve
ctors.o ps7_cortexa9_0/lib/write.o ps7_cortexa9_0/lib/xadcps.o ps7_cortexa9_0/lib/xadcps_g.o ps7_cortexa9_0/lib/xadcps_intr.o p
s7_cortexa9_0/lib/xadcps_selftest.o ps7_cortexa9_0/lib/xadcps_sinit.o ps7_cortexa9_0/lib/xcoresightpsdcc.o ps7_cortexa9_0/lib/x
devcfg.o ps7_cortexa9_0/lib/xdevcfg_g.o ps7_cortexa9_0/lib/xdevcfg_hw.o ps7_cortexa9_0/lib/xdevcfg_intr.o ps7_cortexa9_0/lib/xd
evcfg_selftest.o ps7_cortexa9_0/lib/xdevcfg_sinit.o ps7_cortexa9_0/lib/xdmaps.o ps7_cortexa9_0/lib/xdmaps_g.o ps7_cortexa9_0/li
b/xdmaps_hw.o ps7_cortexa9_0/lib/xdmaps_selftest.o ps7_cortexa9_0/lib/xdmaps_sinit.o ps7_cortexa9_0/lib/xemacps.o ps7_cortexa9_
0/lib/xemacps_bdring.o ps7_cortexa9_0/lib/xemacps_control.o ps7_cortexa9_0/lib/xemacps_g.o ps7_cortexa9_0/lib/xemacps_hw.o ps7_
cortexa9_0/lib/xemacps_intr.o ps7_cortexa9_0/lib/xemacps_sinit.o ps7_cortexa9_0/lib/xgpiops.o ps7_cortexa9_0/lib/xgpiops_g.o ps
7_cortexa9_0/lib/xgpiops_hw.o ps7_cortexa9_0/lib/xgpiops_intr.o ps7_cortexa9_0/lib/xgpiops_selftest.o ps7_cortexa9_0/lib/xgpiop
s_sinit.o ps7_cortexa9_0/lib/xil-crt0.o ps7_cortexa9_0/lib/xil_assert.o ps7_cortexa9_0/lib/xil_cache.o ps7_cortexa9_0/lib/xil_c
locking.o ps7_cortexa9_0/lib/xil_exception.o ps7_cortexa9_0/lib/xil_mem.o ps7_cortexa9_0/lib/xil_misc_psreset_api.o ps7_cortexa
9_0/lib/xil_mmu.o ps7_cortexa9_0/lib/xil_printf.o ps7_cortexa9_0/lib/xil_sleepcommon.o ps7_cortexa9_0/lib/xil_sleeptimer.o ps7_
cortexa9_0/lib/xil_spinlock.o ps7_cortexa9_0/lib/xil_testcache.o ps7_cortexa9_0/lib/xil_testio.o ps7_cortexa9_0/lib/xil_testmem
.o ps7_cortexa9_0/lib/xil_util.o ps7_cortexa9_0/lib/xinterrupt_wrap.o ps7_cortexa9_0/lib/xl2cc_counter.o ps7_cortexa9_0/lib/xpl
atform_info.o ps7_cortexa9_0/lib/xpm_counter.o ps7_cortexa9_0/lib/xpm_init.o ps7_cortexa9_0/lib/xqspips.o ps7_cortexa9_0/lib/xq
spips_g.o ps7_cortexa9_0/lib/xqspips_hw.o ps7_cortexa9_0/lib/xqspips_options.o ps7_cortexa9_0/lib/xqspips_selftest.o ps7_cortex
a9_0/lib/xqspips_sinit.o ps7_cortexa9_0/lib/xscugic.o ps7_cortexa9_0/lib/xscugic_g.o ps7_cortexa9_0/lib/xscugic_hw.o ps7_cortex
a9_0/lib/xscugic_intr.o ps7_cortexa9_0/lib/xscugic_selftest.o ps7_cortexa9_0/lib/xscugic_sinit.o ps7_cortexa9_0/lib/xscutimer.o
ps7_cortexa9_0/lib/xscutimer_g.o ps7_cortexa9_0/lib/xscutimer_selftest.o ps7_cortexa9_0/lib/xscutimer_sinit.o ps7_cortexa9_0/l
ib/xscuwdt.o ps7_cortexa9_0/lib/xscuwdt_g.o ps7_cortexa9_0/lib/xscuwdt_selftest.o ps7_cortexa9_0/lib/xscuwdt_sinit.o ps7_cortex
a9_0/lib/xsdps.o ps7_cortexa9_0/lib/xsdps_card.o ps7_cortexa9_0/lib/xsdps_g.o ps7_cortexa9_0/lib/xsdps_host.o ps7_cortexa9_0/li
b/xsdps_options.o ps7_cortexa9_0/lib/xsdps_sinit.o ps7_cortexa9_0/lib/xtime_l.o ps7_cortexa9_0/lib/xuartps.o ps7_cortexa9_0/lib
/xuartps_g.o ps7_cortexa9_0/lib/xuartps_hw.o ps7_cortexa9_0/lib/xuartps_intr.o ps7_cortexa9_0/lib/xuartps_options.o ps7_cortexa
9_0/lib/xuartps_selftest.o ps7_cortexa9_0/lib/xuartps_sinit.o
/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/bin/../x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/arm-xilinx-eabi-ar.real: creating ps7_cortexa9_0/lib/libxil.a
Finished building libraries
09:48:49 Build Finished (took 10s.702ms)
@@ -1,752 +0,0 @@
09:48:39 **** Build of project NewInstCal_bsp ****
buildplatform.sh 33485 NewInstCal_bsp
XSDB Server Channel: tcfchan#1
Cleaning the zynq_fsbl application.
rm -rf fsbl_hooks.o image_mover.o main.o md5.o nand.o nor.o pcap.o ps7_init.o qspi.o rsa.o sd.o fsbl_handoff.o zynq
_fsbl_bsp/ps7_cortexa9_0/lib/libxil.a fsbl.elf *.o
Building the zynq_fsbl application.
make: Entering directory '/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/zynq_fsbl/zynq_fsb
l_bsp'
make --no-print-directory seq_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilffs_v5_1/src
make -C ps7_cortexa9_0/libsrc/xilffs_v5_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilrsa_v1_7/src
make -C ps7_cortexa9_0/libsrc/xilrsa_v1_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xilrsa_v1_7/src
make -C ps7_cortexa9_0/libsrc/xilrsa_v1_7/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Finished building libraries sequentially.
make -j 30 --no-print-directory par_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilffs_v5_1/src
make -C ps7_cortexa9_0/libsrc/xilffs_v5_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xilrsa_v1_7/src
make -C ps7_cortexa9_0/libsrc/xilrsa_v1_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-non
e-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=
hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scugic_v5_2/src
Running Make libs in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nosta
rtfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xilffs_v5_1/src
make -C ps7_cortexa9_0/libsrc/xilffs_v5_1/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
xtime_l.c:45:9: note: '#pragma message: For the sleep routines, Global timer is being used'
45 | #pragma message ("For the sleep routines, Global timer is being used")
| ^~~~~~~
Finished building libraries parallelly.
make --no-print-directory archive
arm-none-eabi-ar -r ps7_cortexa9_0/lib/libxil.a ps7_cortexa9_0/lib/_exit.o ps7_cortexa9_0/lib/_open.o ps7_cortexa9_0/lib/_sbrk
.o ps7_cortexa9_0/lib/abort.o ps7_cortexa9_0/lib/asm_vectors.o ps7_cortexa9_0/lib/boot.o ps7_cortexa9_0/lib/close.o ps7_cortexa
9_0/lib/cpputest_time.o ps7_cortexa9_0/lib/cpu_init.o ps7_cortexa9_0/lib/errno.o ps7_cortexa9_0/lib/fcntl.o ps7_cortexa9_0/lib/
fstat.o ps7_cortexa9_0/lib/getentropy.o ps7_cortexa9_0/lib/getpid.o ps7_cortexa9_0/lib/inbyte.o ps7_cortexa9_0/lib/isatty.o ps7
_cortexa9_0/lib/kill.o ps7_cortexa9_0/lib/lseek.o ps7_cortexa9_0/lib/open.o ps7_cortexa9_0/lib/outbyte.o ps7_cortexa9_0/lib/pri
nt.o ps7_cortexa9_0/lib/putnum.o ps7_cortexa9_0/lib/read.o ps7_cortexa9_0/lib/sbrk.o ps7_cortexa9_0/lib/sleep.o ps7_cortexa9_0/
lib/time.o ps7_cortexa9_0/lib/translation_table.o ps7_cortexa9_0/lib/unlink.o ps7_cortexa9_0/lib/usleep.o ps7_cortexa9_0/lib/ve
ctors.o ps7_cortexa9_0/lib/write.o ps7_cortexa9_0/lib/xadcps.o ps7_cortexa9_0/lib/xadcps_g.o ps7_cortexa9_0/lib/xadcps_intr.o p
s7_cortexa9_0/lib/xadcps_selftest.o ps7_cortexa9_0/lib/xadcps_sinit.o ps7_cortexa9_0/lib/xcoresightpsdcc.o ps7_cortexa9_0/lib/x
devcfg.o ps7_cortexa9_0/lib/xdevcfg_g.o ps7_cortexa9_0/lib/xdevcfg_hw.o ps7_cortexa9_0/lib/xdevcfg_intr.o ps7_cortexa9_0/lib/xd
evcfg_selftest.o ps7_cortexa9_0/lib/xdevcfg_sinit.o ps7_cortexa9_0/lib/xdmaps.o ps7_cortexa9_0/lib/xdmaps_g.o ps7_cortexa9_0/li
b/xdmaps_hw.o ps7_cortexa9_0/lib/xdmaps_selftest.o ps7_cortexa9_0/lib/xdmaps_sinit.o ps7_cortexa9_0/lib/xemacps.o ps7_cortexa9_
0/lib/xemacps_bdring.o ps7_cortexa9_0/lib/xemacps_control.o ps7_cortexa9_0/lib/xemacps_g.o ps7_cortexa9_0/lib/xemacps_hw.o ps7_
cortexa9_0/lib/xemacps_intr.o ps7_cortexa9_0/lib/xemacps_sinit.o ps7_cortexa9_0/lib/xgpiops.o ps7_cortexa9_0/lib/xgpiops_g.o ps
7_cortexa9_0/lib/xgpiops_hw.o ps7_cortexa9_0/lib/xgpiops_intr.o ps7_cortexa9_0/lib/xgpiops_selftest.o ps7_cortexa9_0/lib/xgpiop
s_sinit.o ps7_cortexa9_0/lib/xil-crt0.o ps7_cortexa9_0/lib/xil_assert.o ps7_cortexa9_0/lib/xil_cache.o ps7_cortexa9_0/lib/xil_c
locking.o ps7_cortexa9_0/lib/xil_exception.o ps7_cortexa9_0/lib/xil_mem.o ps7_cortexa9_0/lib/xil_misc_psreset_api.o ps7_cortexa
9_0/lib/xil_mmu.o ps7_cortexa9_0/lib/xil_printf.o ps7_cortexa9_0/lib/xil_sleepcommon.o ps7_cortexa9_0/lib/xil_sleeptimer.o ps7_
cortexa9_0/lib/xil_spinlock.o ps7_cortexa9_0/lib/xil_testcache.o ps7_cortexa9_0/lib/xil_testio.o ps7_cortexa9_0/lib/xil_testmem
.o ps7_cortexa9_0/lib/xil_util.o ps7_cortexa9_0/lib/xinterrupt_wrap.o ps7_cortexa9_0/lib/xl2cc_counter.o ps7_cortexa9_0/lib/xpl
atform_info.o ps7_cortexa9_0/lib/xpm_counter.o ps7_cortexa9_0/lib/xpm_init.o ps7_cortexa9_0/lib/xqspips.o ps7_cortexa9_0/lib/xq
spips_g.o ps7_cortexa9_0/lib/xqspips_hw.o ps7_cortexa9_0/lib/xqspips_options.o ps7_cortexa9_0/lib/xqspips_selftest.o ps7_cortex
a9_0/lib/xqspips_sinit.o ps7_cortexa9_0/lib/xscugic.o ps7_cortexa9_0/lib/xscugic_g.o ps7_cortexa9_0/lib/xscugic_hw.o ps7_cortex
a9_0/lib/xscugic_intr.o ps7_cortexa9_0/lib/xscugic_selftest.o ps7_cortexa9_0/lib/xscugic_sinit.o ps7_cortexa9_0/lib/xscutimer.o
ps7_cortexa9_0/lib/xscutimer_g.o ps7_cortexa9_0/lib/xscutimer_selftest.o ps7_cortexa9_0/lib/xscutimer_sinit.o ps7_cortexa9_0/l
ib/xscuwdt.o ps7_cortexa9_0/lib/xscuwdt_g.o ps7_cortexa9_0/lib/xscuwdt_selftest.o ps7_cortexa9_0/lib/xscuwdt_sinit.o ps7_cortex
a9_0/lib/xsdps.o ps7_cortexa9_0/lib/xsdps_card.o ps7_cortexa9_0/lib/xsdps_g.o ps7_cortexa9_0/lib/xsdps_host.o ps7_cortexa9_0/li
b/xsdps_options.o ps7_cortexa9_0/lib/xsdps_sinit.o ps7_cortexa9_0/lib/xtime_l.o ps7_cortexa9_0/lib/xuartps.o ps7_cortexa9_0/lib
/xuartps_g.o ps7_cortexa9_0/lib/xuartps_hw.o ps7_cortexa9_0/lib/xuartps_intr.o ps7_cortexa9_0/lib/xuartps_options.o ps7_cortexa
9_0/lib/xuartps_selftest.o ps7_cortexa9_0/lib/xuartps_sinit.o
/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/bin/../x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/arm-xilinx-eabi-ar.real: creating ps7_cortexa9_0/lib/libxil.a
Finished building libraries
make: Leaving directory '/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/Vitis_Classic/NewInstCal_bsp/zynq_fsbl/zynq_fsbl
_bsp'
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c fsbl_hooks.c -o fsbl_hooks.o -Izynq_f
sbl_bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c image_mover.c -o image_mover.o -Izynq
_fsbl_bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c main.c -o main.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c md5.c -o md5.o -Izynq_fsbl_bsp/ps7_co
rtexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c nand.c -o nand.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c nor.c -o nor.o -Izynq_fsbl_bsp/ps7_co
rtexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c pcap.c -o pcap.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c ps7_init.c -o ps7_init.o -Izynq_fsbl_
bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c qspi.c -o qspi.o -Izynq_fsbl_bsp/ps7_
cortexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c rsa.c -o rsa.o -Izynq_fsbl_bsp/ps7_co
rtexa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c sd.c -o sd.o -Izynq_fsbl_bsp/ps7_cort
exa9_0/include -I.
arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c fsbl_handoff.S -o fsbl_handoff.o -Izy
nq_fsbl_bsp/ps7_cortexa9_0/include -I.
arm-none-eabi-gcc -o fsbl.elf fsbl_handoff.o fsbl_hooks.o image_mover.o main.o md5.o nand.o nor.o pcap.o ps7_init.o qspi.o rsa.
o sd.o -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -Wl,-build-id
=none -specs=Xilinx.spec -lrsa -Wl,--start-group,-lxil,-lgcc,-lc,--end-group -Wl,--start-group,-lxilffs,-lxil,-lgcc,-lc,--end-
group -Wl,--start-group,-lrsa,-lxil,-lgcc,-lc,--end-group -Wl,--gc-sections -Lzynq_fsbl_bsp/p
s7_cortexa9_0/lib -L./ -Tlscript.ld
Building the BSP Library for domain - standalone_domain on processor ps7_cortexa9_0
make --no-print-directory seq_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/lwip213_v1_1/src
make -C ps7_cortexa9_0/libsrc/lwip213_v1_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/lwip213_v1_1/src
make -C ps7_cortexa9_0/libsrc/lwip213_v1_1/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Compiling lwip src and adapter files
contrib/ports/xilinx/netif/xadapter.c: In function 'eth_link_detect':
contrib/ports/xilinx/netif/xadapter.c:471:9: warning: enumeration value 'xemac_type_unknown' not handled in switch [-Wswitch]
471 | switch (xemac->type) {
| ^~~~~~
contrib/ports/xilinx/netif/xadapter.c:471:9: warning: enumeration value 'xemac_type_xps_ll_temac' not handled in switch [-Wswitch]
Finished building libraries sequentially.
make -j 30 --no-print-directory par_libs
Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-
none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-a
bi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-no
ne-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi
=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/lwip213_v1_1/src
make -C ps7_cortexa9_0/libsrc/lwip213_v1_1/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scugic_v5_2/src
Running Make include in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-ea
bi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make include in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi
-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -
nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src
make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-non
e-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=
hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src
Running Make libs in ps7_cortexa9_0/libsrc/ddrps_v1_2/src
make -C ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-
eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=ha
rd -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/ddrps_v1_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/devcfg_v3_8/src
make -C ps7_cortexa9_0/libsrc/devcfg_v3_8/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/dmaps_v2_9/src
Running Make libs in ps7_cortexa9_0/libsrc/emacps_v3_19/src
make -C ps7_cortexa9_0/libsrc/dmaps_v2_9/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nost
artfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
make -C ps7_cortexa9_0/libsrc/emacps_v3_19/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/gpiops_v3_12/src
make -C ps7_cortexa9_0/libsrc/gpiops_v3_12/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/qspips_v3_11/src
make -C ps7_cortexa9_0/libsrc/qspips_v3_11/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scugic_v5_2/src
make -C ps7_cortexa9_0/libsrc/scugic_v5_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scutimer_v2_5/src
make -C ps7_cortexa9_0/libsrc/scutimer_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-
as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -n
ostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/scuwdt_v2_5/src
make -C ps7_cortexa9_0/libsrc/scuwdt_v2_5/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/sdps_v4_2/src
make -C ps7_cortexa9_0/libsrc/sdps_v4_2/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as"
"ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nosta
rtfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/standalone_v9_0/src
make -C ps7_cortexa9_0/libsrc/standalone_v9_0/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eab
i-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard
-nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/uartps_v3_13/src
make -C ps7_cortexa9_0/libsrc/uartps_v3_13/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-a
s" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -no
startfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
Running Make libs in ps7_cortexa9_0/libsrc/xadcps_v2_7/src
make -C ps7_cortexa9_0/libsrc/xadcps_v2_7/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as
" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nos
tartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns"
xtime_l.c:45:9: note: '#pragma message: For the sleep routines, Global timer is being used'
45 | #pragma message ("For the sleep routines, Global timer is being used")
| ^~~~~~~
Finished building libraries parallelly.
make --no-print-directory archive
arm-none-eabi-ar -r ps7_cortexa9_0/lib/libxil.a ps7_cortexa9_0/lib/_exit.o ps7_cortexa9_0/lib/_open.o ps7_cortexa9_0/lib/_sbrk
.o ps7_cortexa9_0/lib/abort.o ps7_cortexa9_0/lib/asm_vectors.o ps7_cortexa9_0/lib/boot.o ps7_cortexa9_0/lib/close.o ps7_cortexa
9_0/lib/cpputest_time.o ps7_cortexa9_0/lib/cpu_init.o ps7_cortexa9_0/lib/errno.o ps7_cortexa9_0/lib/fcntl.o ps7_cortexa9_0/lib/
fstat.o ps7_cortexa9_0/lib/getentropy.o ps7_cortexa9_0/lib/getpid.o ps7_cortexa9_0/lib/inbyte.o ps7_cortexa9_0/lib/isatty.o ps7
_cortexa9_0/lib/kill.o ps7_cortexa9_0/lib/lseek.o ps7_cortexa9_0/lib/open.o ps7_cortexa9_0/lib/outbyte.o ps7_cortexa9_0/lib/pri
nt.o ps7_cortexa9_0/lib/putnum.o ps7_cortexa9_0/lib/read.o ps7_cortexa9_0/lib/sbrk.o ps7_cortexa9_0/lib/sleep.o ps7_cortexa9_0/
lib/time.o ps7_cortexa9_0/lib/translation_table.o ps7_cortexa9_0/lib/unlink.o ps7_cortexa9_0/lib/usleep.o ps7_cortexa9_0/lib/ve
ctors.o ps7_cortexa9_0/lib/write.o ps7_cortexa9_0/lib/xadcps.o ps7_cortexa9_0/lib/xadcps_g.o ps7_cortexa9_0/lib/xadcps_intr.o p
s7_cortexa9_0/lib/xadcps_selftest.o ps7_cortexa9_0/lib/xadcps_sinit.o ps7_cortexa9_0/lib/xcoresightpsdcc.o ps7_cortexa9_0/lib/x
devcfg.o ps7_cortexa9_0/lib/xdevcfg_g.o ps7_cortexa9_0/lib/xdevcfg_hw.o ps7_cortexa9_0/lib/xdevcfg_intr.o ps7_cortexa9_0/lib/xd
evcfg_selftest.o ps7_cortexa9_0/lib/xdevcfg_sinit.o ps7_cortexa9_0/lib/xdmaps.o ps7_cortexa9_0/lib/xdmaps_g.o ps7_cortexa9_0/li
b/xdmaps_hw.o ps7_cortexa9_0/lib/xdmaps_selftest.o ps7_cortexa9_0/lib/xdmaps_sinit.o ps7_cortexa9_0/lib/xemacps.o ps7_cortexa9_
0/lib/xemacps_bdring.o ps7_cortexa9_0/lib/xemacps_control.o ps7_cortexa9_0/lib/xemacps_g.o ps7_cortexa9_0/lib/xemacps_hw.o ps7_
cortexa9_0/lib/xemacps_intr.o ps7_cortexa9_0/lib/xemacps_sinit.o ps7_cortexa9_0/lib/xgpiops.o ps7_cortexa9_0/lib/xgpiops_g.o ps
7_cortexa9_0/lib/xgpiops_hw.o ps7_cortexa9_0/lib/xgpiops_intr.o ps7_cortexa9_0/lib/xgpiops_selftest.o ps7_cortexa9_0/lib/xgpiop
s_sinit.o ps7_cortexa9_0/lib/xil-crt0.o ps7_cortexa9_0/lib/xil_assert.o ps7_cortexa9_0/lib/xil_cache.o ps7_cortexa9_0/lib/xil_c
locking.o ps7_cortexa9_0/lib/xil_exception.o ps7_cortexa9_0/lib/xil_mem.o ps7_cortexa9_0/lib/xil_misc_psreset_api.o ps7_cortexa
9_0/lib/xil_mmu.o ps7_cortexa9_0/lib/xil_printf.o ps7_cortexa9_0/lib/xil_sleepcommon.o ps7_cortexa9_0/lib/xil_sleeptimer.o ps7_
cortexa9_0/lib/xil_spinlock.o ps7_cortexa9_0/lib/xil_testcache.o ps7_cortexa9_0/lib/xil_testio.o ps7_cortexa9_0/lib/xil_testmem
.o ps7_cortexa9_0/lib/xil_util.o ps7_cortexa9_0/lib/xinterrupt_wrap.o ps7_cortexa9_0/lib/xl2cc_counter.o ps7_cortexa9_0/lib/xpl
atform_info.o ps7_cortexa9_0/lib/xpm_counter.o ps7_cortexa9_0/lib/xpm_init.o ps7_cortexa9_0/lib/xqspips.o ps7_cortexa9_0/lib/xq
spips_g.o ps7_cortexa9_0/lib/xqspips_hw.o ps7_cortexa9_0/lib/xqspips_options.o ps7_cortexa9_0/lib/xqspips_selftest.o ps7_cortex
a9_0/lib/xqspips_sinit.o ps7_cortexa9_0/lib/xscugic.o ps7_cortexa9_0/lib/xscugic_g.o ps7_cortexa9_0/lib/xscugic_hw.o ps7_cortex
a9_0/lib/xscugic_intr.o ps7_cortexa9_0/lib/xscugic_selftest.o ps7_cortexa9_0/lib/xscugic_sinit.o ps7_cortexa9_0/lib/xscutimer.o
ps7_cortexa9_0/lib/xscutimer_g.o ps7_cortexa9_0/lib/xscutimer_selftest.o ps7_cortexa9_0/lib/xscutimer_sinit.o ps7_cortexa9_0/l
ib/xscuwdt.o ps7_cortexa9_0/lib/xscuwdt_g.o ps7_cortexa9_0/lib/xscuwdt_selftest.o ps7_cortexa9_0/lib/xscuwdt_sinit.o ps7_cortex
a9_0/lib/xsdps.o ps7_cortexa9_0/lib/xsdps_card.o ps7_cortexa9_0/lib/xsdps_g.o ps7_cortexa9_0/lib/xsdps_host.o ps7_cortexa9_0/li
b/xsdps_options.o ps7_cortexa9_0/lib/xsdps_sinit.o ps7_cortexa9_0/lib/xtime_l.o ps7_cortexa9_0/lib/xuartps.o ps7_cortexa9_0/lib
/xuartps_g.o ps7_cortexa9_0/lib/xuartps_hw.o ps7_cortexa9_0/lib/xuartps_intr.o ps7_cortexa9_0/lib/xuartps_options.o ps7_cortexa
9_0/lib/xuartps_selftest.o ps7_cortexa9_0/lib/xuartps_sinit.o
/data/xilinx/Vitis/2023.2/gnu/aarch32/lin/gcc-arm-none-eabi/bin/../x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/arm-xilinx-eabi-ar.real: creating ps7_cortexa9_0/lib/libxil.a
Finished building libraries
@@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>NewInstCal_bsp</name>
<comment>Created by Vitis v2023.2</comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.xilinx.sdx.scw.PlatformProjectBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.xilinx.sdx.scw.platformProject</nature>
<nature>org.eclipse.cdt.core.cnature</nature>
</natures>
</projectDescription>
@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>NewInstrCalBoard_system</name>
<comment></comment>
<projects>
<project>NewInstrCalBoard</project>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.xilinx.sdx.system.core.embedded</nature>
<nature>com.xilinx.sdx.system.systemprojectnature</nature>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>
@@ -1,27 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>NewInstrCalBoard</name>
<comment>Created by Vitis v2023.2</comment>
<projects>
<project>NewInstCal_bsp</project>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.xilinx.sdx.sdk.core.SdkProjectNature</nature>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>
@@ -1,3 +0,0 @@
#GitProjectData
#Wed May 27 09:48:02 UTC 2026
.gitdir=../../.git
@@ -1,3 +0,0 @@
#GitProjectData
#Wed May 27 09:48:01 UTC 2026
.gitdir=../../.git
@@ -1,3 +0,0 @@
#GitProjectData
#Wed May 27 09:48:02 UTC 2026
.gitdir=../../.git
@@ -1,3 +0,0 @@
#GitProjectData
#Wed May 27 09:47:22 UTC 2026
.gitdir=../../.git
@@ -1,2 +0,0 @@
eclipse.preferences.version=1
indexer/preferenceScope=0
@@ -1,2 +0,0 @@
eclipse.preferences.version=1
indexer/preferenceScope=0
@@ -1,2 +0,0 @@
eclipse.preferences.version=1
indexer/preferenceScope=0
@@ -1,2 +0,0 @@
eclipse.preferences.version=1
org.eclipse.cdt.debug.core.cDebug.default_source_containers=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\n<sourceLookupDirector>\n <sourceContainers duplicates\="false">\n <container memento\="AbsolutePath" typeId\="org.eclipse.cdt.debug.core.containerType.absolutePath"/>\n <container memento\="programRelativePath" typeId\="org.eclipse.cdt.debug.core.containerType.programRelativePath"/>\n <container memento\="&lt;?xml version\=&quot;1.0&quot; encoding\=&quot;UTF-8&quot; standalone\=&quot;no&quot;?&gt;&\#10;&lt;project referencedProjects\=&quot;true&quot;/&gt;&\#10;" typeId\="org.eclipse.cdt.debug.core.containerType.project"/>\n </sourceContainers>\n</sourceLookupDirector>\n
@@ -1,2 +0,0 @@
eclipse.preferences.version=1
version=1
@@ -1,5 +0,0 @@
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.applicationLaunchType=org.eclipse.cdt.dsf.gdb.launch.localCLaunch,debug,;org.eclipse.cdt.cdi.launch.localCLaunch,run,;
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.attachLaunchType=org.eclipse.cdt.dsf.gdb.launch.attachCLaunch,debug,;
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.postmortemLaunchType=org.eclipse.cdt.dsf.gdb.launch.coreCLaunch,debug,;
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.remoteApplicationLaunchType=org.eclipse.rse.remotecdt.dsf.debug,debug,;
eclipse.preferences.version=1
@@ -1,3 +0,0 @@
eclipse.preferences.version=1
org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\n<launchPerspectives/>\n
org.eclipse.debug.ui.build_before_launch=false
@@ -1,2 +0,0 @@
GitRepositoriesView.GitDirectories=/home/ly0kos/work/prj/New_CalBoard/2.FW/Zynq/Debug_FW/.git\:
eclipse.preferences.version=1
@@ -1,7 +0,0 @@
content_assist_proposals_background=252,252,252
content_assist_proposals_foreground=35,38,39
eclipse.preferences.version=1
org.eclipse.jdt.ui.formatterprofiles.version=18
spelling_locale_initialized=true
useAnnotationsPrefPage=true
useQuickDiffPrefPage=true
@@ -1,2 +0,0 @@
eclipse.preferences.version=1
org.eclipse.rse.systemtype.local.systemType.defaultUserId=ly0kos
@@ -1,2 +0,0 @@
eclipse.preferences.version=1
org.eclipse.rse.preferences.order.connections=mkb.Local
@@ -1,5 +0,0 @@
PERSPECTIVE_BAR_EXTRAS=com.xilinx.ide.application.ui.perspectve,org.eclipse.debug.ui.DebugPerspective
SHOW_OPEN_ON_PERSPECTIVE_BAR=false
SHOW_TEXT_ON_PERSPECTIVE_BAR=true
eclipse.preferences.version=1
showIntro=false
File diff suppressed because it is too large Load Diff
@@ -1,57 +0,0 @@
# RSE DOM Node
00-name=mkb\:local.files
01-type=FilterPool
03-attr.default=true
03-attr.deletable=true
03-attr.id=local.files
03-attr.nonRenamable=false
03-attr.owningParentName=null
03-attr.release=200
03-attr.singleFilterStringOnly=false
03-attr.singleFilterStringOnlyESet=false
03-attr.stringsCaseSensitive=true
03-attr.supportsDuplicateFilterStrings=false
03-attr.supportsNestedFilters=true
03-attr.type=default
06-child.00000.00-name=My Home
06-child.00000.01-type=Filter
06-child.00000.03-attr.default=false
06-child.00000.03-attr.filterType=default
06-child.00000.03-attr.id=My Home
06-child.00000.03-attr.nonChangable=false
06-child.00000.03-attr.nonDeletable=false
06-child.00000.03-attr.nonRenamable=false
06-child.00000.03-attr.promptable=false
06-child.00000.03-attr.relativeOrder=0
06-child.00000.03-attr.release=200
06-child.00000.03-attr.singleFilterStringOnly=false
06-child.00000.03-attr.stringsCaseSensitive=true
06-child.00000.03-attr.stringsNonChangable=false
06-child.00000.03-attr.supportsDuplicateFilterStrings=false
06-child.00000.03-attr.supportsNestedFilters=true
06-child.00000.06-child.00000.00-name=/home/ly0kos/*
06-child.00000.06-child.00000.01-type=FilterString
06-child.00000.06-child.00000.03-attr.default=false
06-child.00000.06-child.00000.03-attr.string=/home/ly0kos/*
06-child.00000.06-child.00000.03-attr.type=default
06-child.00001.00-name=Root
06-child.00001.01-type=Filter
06-child.00001.03-attr.default=false
06-child.00001.03-attr.filterType=default
06-child.00001.03-attr.id=Root
06-child.00001.03-attr.nonChangable=false
06-child.00001.03-attr.nonDeletable=false
06-child.00001.03-attr.nonRenamable=false
06-child.00001.03-attr.promptable=false
06-child.00001.03-attr.relativeOrder=0
06-child.00001.03-attr.release=200
06-child.00001.03-attr.singleFilterStringOnly=false
06-child.00001.03-attr.stringsCaseSensitive=true
06-child.00001.03-attr.stringsNonChangable=false
06-child.00001.03-attr.supportsDuplicateFilterStrings=false
06-child.00001.03-attr.supportsNestedFilters=true
06-child.00001.06-child.00000.00-name=/*
06-child.00001.06-child.00000.01-type=FilterString
06-child.00001.06-child.00000.03-attr.default=false
06-child.00001.06-child.00000.03-attr.string=/*
06-child.00001.06-child.00000.03-attr.type=default
@@ -1,25 +0,0 @@
# RSE DOM Node
00-name=Local
01-type=Host
03-attr.description=
03-attr.hostname=LOCALHOST
03-attr.offline=false
03-attr.promptable=false
03-attr.systemType=org.eclipse.rse.systemtype.local
03-attr.type=Local
06-child.00000.00-name=Local Connector Service
06-child.00000.01-type=ConnectorService
06-child.00000.03-attr.group=Local Connector Service
06-child.00000.03-attr.port=0
06-child.00000.03-attr.useSSL=false
06-child.00000.06-child.00000.00-name=Local Files
06-child.00000.06-child.00000.01-type=SubSystem
06-child.00000.06-child.00000.03-attr.hidden=false
06-child.00000.06-child.00000.03-attr.type=local.files
06-child.00000.06-child.00000.06-child.00000.00-name=mkb___mkb\:local.files
06-child.00000.06-child.00000.06-child.00000.01-type=FilterPoolReference
06-child.00000.06-child.00000.06-child.00000.03-attr.refID=local.files
06-child.00000.06-child.00001.00-name=Local Shells
06-child.00000.06-child.00001.01-type=SubSystem
06-child.00000.06-child.00001.03-attr.hidden=false
06-child.00000.06-child.00001.03-attr.type=local.shells
@@ -1,7 +0,0 @@
# RSE DOM Node
00-name=mkb
01-type=Profile
03-attr.defaultPrivate=true
03-attr.isActive=true
05-ref.00000=FP.local.files_0
05-ref.00001=H.local_16
@@ -1,36 +0,0 @@
ServiceManagerID=7e7ebd1f-face-4902-952a-08dd39961977
TransportName=TCP
AutoSetJtagFrequency=true
PeerTypeId=HARDWARE_SERVER
UserName=ly0kos
Port=3121
Host=127.0.0.1
OSName=Linux
ID=Local
AgentID=7e7ebd1f-face-4902-952a-08dd39961977
Name=Local
ServiceManagerID=7e7ebd1f-face-4902-952a-08dd39961977
TransportName=TCP
AutoSetJtagFrequency=false
PeerTypeId=LINUX_TCF_AGENT
UserName=ly0kos
Port=1534
Host=192.168.0.1
OSName=Linux
ID=Linux Agent
AgentID=7e7ebd1f-face-4902-952a-08dd39961977
Name=Linux Agent
ServiceManagerID=7e7ebd1f-face-4902-952a-08dd39961977
TransportName=TCP
AutoSetJtagFrequency=false
PeerTypeId=QEMU_TCF_GDB_CLIENT
UserName=ly0kos
Port=1138
Host=127.0.0.1
OSName=Linux
ID=QEMU
AgentID=7e7ebd1f-face-4902-952a-08dd39961977
Name=QEMU
@@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<workingSetManager>
<workingSet editPageId="org.eclipse.jdt.internal.ui.DynamicSourcesWorkingSet" factoryID="org.eclipse.ui.internal.WorkingSetFactory" id="1779875240030_0" label="Java Main Sources" name="Java Main Sources"/>
<workingSet editPageId="org.eclipse.jdt.internal.ui.DynamicSourcesWorkingSet" factoryID="org.eclipse.ui.internal.WorkingSetFactory" id="1779875240034_1" label="Java Test Sources" name="Java Test Sources"/>
</workingSetManager>
-5
View File
@@ -1,5 +0,0 @@
#Wed May 27 09:47:17 UTC 2026
org.eclipse.core.runtime=2
org.eclipse.platform=4.15.0.v20200305-0155
com.xilinx.tools.product=VITIS_IDE
com.xilinx.tools.version=2023.2.0
@@ -1,17 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<sdx:platform sdx:vendor="xilinx.com"
sdx:library="sdx"
sdx:name="NewInstCal_bsp"
sdx:version="1.0"
xmlns:sdx="http://www.xilinx.com/sdx">
<sdx:description>
NewInstCal_bsp
</sdx:description>
<sdx:hardwarePlatforms>
<sdx:hardwarePlatform sdx:path="hw" sdx:name="system_wrapper.xsa"/>
</sdx:hardwarePlatforms>
<sdx:softwarePlatforms>
<sdx:softwarePlatform sdx:path="sw" sdx:name="NewInstCal_bsp.spfm"/>
</sdx:softwarePlatforms>
</sdx:platform>
@@ -1,43 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<sdx:platform sdx:vendor="xilinx.com"
sdx:library="sdx"
sdx:name="NewInstCal_bsp"
sdx:version="1.0"
sdx:schemaVersion="1.0"
xmlns:sdx="http://www.xilinx.com/sdx">
<sdx:description>
NewInstCal_bsp
</sdx:description>
<sdx:systemConfigurations sdx:defaultConfiguration="NewInstCal_bsp">
<sdx:configuration sdx:name="NewInstCal_bsp"
sdx:displayName="NewInstCal_bsp"
sdx:defaultProcessorGroup="standalone_domain"
sdx:runtimes="cpp">
<sdx:description>NewInstCal_bsp</sdx:description>
<sdx:bootImages sdx:default="standard">
<sdx:image sdx:name="standard"
sdx:bif=""
sdx:imageData=""
sdx:readme="NewInstCal_bsp/boot/generic.readme"
sdx:qemuArguments="NewInstCal_bsp/qemu/qemu_args.txt"
/>
<sdx:image sdx:name="standalone_domain"
sdx:bif="NewInstCal_bsp/boot/NewInstCal_bsp.bif"
sdx:readme="NewInstCal_bsp/boot/generic.readme"
sdx:qemuArguments="NewInstCal_bsp/standalone_domain/qemu/qemu_args.txt"
/>
</sdx:bootImages>
<sdx:processorGroup sdx:name="standalone_domain"
sdx:displayName="standalone on ps7_cortexa9_0"
sdx:cpuType="cortex-a9"
sdx:cpuInstance="ps7_cortexa9_0">
<sdx:os sdx:name="standalone"
sdx:displayName="standalone"
sdx:bspLibraryPaths="NewInstCal_bsp/standalone_domain/bsplib/lib"
sdx:bspIncludePaths="NewInstCal_bsp/standalone_domain/bspinclude/include"
sdx:bspConfig="NewInstCal_bsp/standalone_domain/system.mss"
/>
</sdx:processorGroup>
</sdx:configuration>
</sdx:systemConfigurations>
</sdx:platform>
@@ -1,7 +0,0 @@
/*NewInstCal_bsp*/
the_ROM_image:
{
[bootloader]<NewInstCal_bsp/boot/fsbl.elf>
<bitstream>
<elf,ps7_cortexa9_0>
}
@@ -1,8 +0,0 @@
-= SD card boot image =-
Platform: <platform>
Application: <elf>
1. Copy the contents of this directory to an SD card
2. Set boot mode to SD
3. Insert SD card and turn board on
@@ -1,51 +0,0 @@
########################################################################
# This is file which used to generate QEMU(which emulates A9 core)
# commandline(start_qemu.sh script) which used in Zynq HW-EMU.
# This is a template file which is packaged in platform and it gets
# processed by Vitis tool to generate meaningful file.
#
# This file contains flag and value pairs and they must be seperated
# into two lines value followed by flag. Below are the common/mandated
# flag and value pairs used for emulating Zynq. User can add more
# commandline args to this file depends on requirements.
#
# For more details on the QEMU commandline, please refer to
# the QEMU user guide UG1169.
########################################################################
#
#
# selects emulated machine
-M
arm-generic-fdt-7series
#
#
# redirect the serial port to specified char dev (i.e stdio, tcp port, file etc)
-serial
/dev/null
-serial
mon:stdio
#
#
# Register writes to SLCR block, to set PLL and CLK_CTRL regs (required for linux)
-device
loader,addr=0xf8000008,data=0xDF0D,data-len=4
-device
loader,addr=0xf8000140,data=0x00500801,data-len=4
-device
loader,addr=0xf800012c,data=0x1ed044d,data-len=4
-device
loader,addr=0xf8000108,data=0x0001e008,data-len=4
-device
loader,addr=0xF800025C,data=0x00000005,data-len=4
-device
loader,addr=0xF8000240,data=0x00000000,data-len=4
#
#
# Boot device selection
-boot
mode=5
#
#
# Guest software to load during boot up
-kernel
<elf>
@@ -1,281 +0,0 @@
/******************************************************************************
* Copyright (c) 2004 - 2020 Xilinx, Inc. All rights reserved.
* SPDX-License-Identifier: MIT
******************************************************************************/
#ifndef PROFILE_TIMER_HW_H
#define PROFILE_TIMER_HW_H
#include "profile.h"
#ifdef PROC_PPC
#if defined __GNUC__
# define SYNCHRONIZE_IO __asm__ volatile ("eieio")
#elif defined __DCC__
# define SYNCHRONIZE_IO __asm volatile(" eieio")
#else
# define SYNCHRONIZE_IO
#endif
#endif
#ifdef PROC_PPC
#define ProfIo_In32(InputPtr) { (*(volatile u32 *)(InputPtr)); SYNCHRONIZE_IO; }
#define ProfIo_Out32(OutputPtr, Value) { (*(volatile u32 *)(OutputPtr) = Value); SYNCHRONIZE_IO; }
#else
#define ProfIo_In32(InputPtr) (*(volatile u32 *)(InputPtr));
#define ProfIo_Out32(OutputPtr, Value) { (*(volatile u32 *)(OutputPtr) = (Value)); }
#endif
#define ProfTmrCtr_mWriteReg(BaseAddress, TmrCtrNumber, RegOffset, ValueToWrite)\
ProfIo_Out32(((u32)(BaseAddress) + (u32)XTmrCtr_Offsets[(TmrCtrNumber)] + \
(u32)(RegOffset)), (u32)(ValueToWrite))
#define ProfTimerCtr_mReadReg(BaseAddress, TmrCtrNumber, RegOffset) \
ProfIo_In32((u32)(BaseAddress) + (u32)XTmrCtr_Offsets[(TmrCtrNumber)] + (u32)(RegOffset))
#define ProfTmrCtr_mSetControlStatusReg(BaseAddress, TmrCtrNumber, RegisterValue)\
ProfTmrCtr_mWriteReg((BaseAddress), (TmrCtrNumber), XTC_TCSR_OFFSET, \
(RegisterValue))
#define ProfTmrCtr_mGetControlStatusReg(BaseAddress, TmrCtrNumber) \
ProfTimerCtr_mReadReg((u32)(BaseAddress), (TmrCtrNumber), XTC_TCSR_OFFSET)
#ifdef __cplusplus
extern "C" {
#endif
#ifdef PROC_PPC
#include "xexception_l.h"
#include "xtime_l.h"
#include "xpseudo_asm.h"
#endif
#ifdef TIMER_CONNECT_INTC
#include "xintc_l.h"
#include "xintc.h"
#endif /* TIMER_CONNECT_INTC */
#if (!defined PPC_PIT_INTERRUPT && !defined PROC_CORTEXA9)
#include "xtmrctr_l.h"
#endif
#ifdef PROC_CORTEXA9
#include "xscutimer_hw.h"
#include "xscugic.h"
#endif
extern u32 timer_clk_ticks ;
/*--------------------------------------------------------------------
* PowerPC Target - Timer related functions
*-------------------------------------------------------------------- */
#ifdef PROC_PPC
#ifdef PPC_PIT_INTERRUPT
u32 timer_lo_clk_ticks ; /* Clk ticks when Timer is disabled in CG */
#endif
#ifdef PROC_PPC440
#define XREG_TCR_PIT_INTERRUPT_ENABLE XREG_TCR_DEC_INTERRUPT_ENABLE
#define XREG_TSR_PIT_INTERRUPT_STATUS XREG_TSR_DEC_INTERRUPT_STATUS
#define XREG_SPR_PIT XREG_SPR_DEC
#define XEXC_ID_PIT_INT XEXC_ID_DEC_INT
#endif
/* --------------------------------------------------------------------
* Disable the Timer - During Profiling
*
* For PIT Timer -
* 1. XTime_PITDisableInterrupt() ;
* 2. Store the remaining timer clk tick
* 3. Stop the PIT Timer
*-------------------------------------------------------------------- */
#ifdef PPC_PIT_INTERRUPT
#define disable_timer() \
{ \
u32 val; \
val=mfspr(XREG_SPR_TCR); \
mtspr(XREG_SPR_TCR, val & (~XREG_TCR_PIT_INTERRUPT_ENABLE)); \
timer_lo_clk_ticks = mfspr(XREG_SPR_PIT); \
mtspr(XREG_SPR_PIT, 0); \
}
#else
#define disable_timer() \
{ \
u32 addr = (PROFILE_TIMER_BASEADDR) + XTmrCtr_Offsets[(0)] + XTC_TCSR_OFFSET; \
u32 tmp_v = ProfIo_In32(addr); \
tmp_v = tmp_v & (~XTC_CSR_ENABLE_TMR_MASK); \
ProfIo_Out32((PROFILE_TIMER_BASEADDR) + XTmrCtr_Offsets[(0)] + XTC_TCSR_OFFSET, tmp_v); \
}
#endif
/* --------------------------------------------------------------------
* Enable the Timer
*
* For PIT Timer -
* 1. Load the remaining timer clk ticks
* 2. XTime_PITEnableInterrupt() ;
*-------------------------------------------------------------------- */
#ifdef PPC_PIT_INTERRUPT
#define enable_timer() \
{ \
u32 val; \
val=mfspr(XREG_SPR_TCR); \
mtspr(XREG_SPR_PIT, timer_lo_clk_ticks); \
mtspr(XREG_SPR_TCR, val | XREG_TCR_PIT_INTERRUPT_ENABLE); \
}
#else
#define enable_timer() \
{ \
u32 addr = (PROFILE_TIMER_BASEADDR) + XTmrCtr_Offsets[(0)] + XTC_TCSR_OFFSET; \
u32 tmp_v = ProfIo_In32(addr); \
tmp_v = tmp_v | XTC_CSR_ENABLE_TMR_MASK; \
ProfIo_Out32((PROFILE_TIMER_BASEADDR) + XTmrCtr_Offsets[(0)] + XTC_TCSR_OFFSET, tmp_v); \
}
#endif
/* --------------------------------------------------------------------
* Send Ack to Timer Interrupt
*
* For PIT Timer -
* 1. Load the timer clk ticks
* 2. Enable AutoReload and Interrupt
* 3. Clear PIT Timer Status bits
*-------------------------------------------------------------------- */
#ifdef PPC_PIT_INTERRUPT
#define timer_ack() \
{ \
u32 val; \
mtspr(XREG_SPR_PIT, timer_clk_ticks); \
mtspr(XREG_SPR_TSR, XREG_TSR_PIT_INTERRUPT_STATUS); \
val=mfspr(XREG_SPR_TCR); \
mtspr(XREG_SPR_TCR, val| XREG_TCR_PIT_INTERRUPT_ENABLE| XREG_TCR_AUTORELOAD_ENABLE); \
}
#else
#define timer_ack() \
{ \
u32 csr; \
csr = ProfTmrCtr_mGetControlStatusReg(PROFILE_TIMER_BASEADDR, 0); \
ProfTmrCtr_mSetControlStatusReg(PROFILE_TIMER_BASEADDR, 0, csr); \
}
#endif
/*-------------------------------------------------------------------- */
#endif /* PROC_PPC */
/* -------------------------------------------------------------------- */
/* --------------------------------------------------------------------
* MicroBlaze Target - Timer related functions
*-------------------------------------------------------------------- */
#ifdef PROC_MICROBLAZE
/* --------------------------------------------------------------------
* Disable the Timer during Call-Graph Data collection
*
*-------------------------------------------------------------------- */
#define disable_timer() \
{ \
u32 Addr = ((u32)PROFILE_TIMER_BASEADDR); \
Addr += (u32)XTmrCtr_Offsets[(u16)(0)]; \
Addr += (u32)XTC_TCSR_OFFSET; \
u32 tmp_v = ProfIo_In32(Addr); \
tmp_v = tmp_v & (u32)(~XTC_CSR_ENABLE_TMR_MASK); \
u32 OutAddr = (u32)PROFILE_TIMER_BASEADDR; \
OutAddr += (u32)XTmrCtr_Offsets[(u16)(0)]; \
OutAddr += (u32)XTC_TCSR_OFFSET; \
ProfIo_Out32(OutAddr, (u32)tmp_v); \
}
/* --------------------------------------------------------------------
* Enable the Timer after Call-Graph Data collection
*
*-------------------------------------------------------------------- */
#define enable_timer() \
{ \
u32 Addr = ((u32)PROFILE_TIMER_BASEADDR); \
Addr += (u32)XTmrCtr_Offsets[(u16)(0)]; \
Addr += (u32)XTC_TCSR_OFFSET; \
u32 tmp_v = (u32)ProfIo_In32(Addr); \
tmp_v = tmp_v | (u32)XTC_CSR_ENABLE_TMR_MASK; \
ProfIo_Out32((u32)(PROFILE_TIMER_BASEADDR) + (u32)XTmrCtr_Offsets[(u16)(0)] + (u32)XTC_TCSR_OFFSET, (u32)tmp_v); \
}
/* --------------------------------------------------------------------
* Send Ack to Timer Interrupt
*
*-------------------------------------------------------------------- */
#define timer_ack() \
{ \
u32 csr; \
csr = ProfTmrCtr_mGetControlStatusReg((u32)PROFILE_TIMER_BASEADDR, (u16)0); \
ProfTmrCtr_mSetControlStatusReg((u32)PROFILE_TIMER_BASEADDR, (u16)0, (u32)csr); \
}
/*-------------------------------------------------------------------- */
#endif /* PROC_MICROBLAZE */
/*-------------------------------------------------------------------- */
/* --------------------------------------------------------------------
* Cortex A9 Target - Timer related functions
*-------------------------------------------------------------------- */
#ifdef PROC_CORTEXA9
/* --------------------------------------------------------------------
* Disable the Timer during Call-Graph Data collection
*
*-------------------------------------------------------------------- */
#define disable_timer() \
{ \
u32 Reg; \
Reg = Xil_In32(PROFILE_TIMER_BASEADDR + XSCUTIMER_CONTROL_OFFSET); \
Reg &= (~XSCUTIMER_CONTROL_ENABLE_MASK);\
Xil_Out32(PROFILE_TIMER_BASEADDR + XSCUTIMER_CONTROL_OFFSET, Reg);\
}
/* --------------------------------------------------------------------
* Enable the Timer after Call-Graph Data collection
*
*-------------------------------------------------------------------- */
#define enable_timer() \
{ \
u32 Reg; \
Reg = Xil_In32(PROFILE_TIMER_BASEADDR + XSCUTIMER_CONTROL_OFFSET); \
Reg |= XSCUTIMER_CONTROL_ENABLE_MASK; \
Xil_Out32(PROFILE_TIMER_BASEADDR + XSCUTIMER_CONTROL_OFFSET, Reg);\
}
/* --------------------------------------------------------------------
* Send Ack to Timer Interrupt
*
*-------------------------------------------------------------------- */
#define timer_ack() \
{ \
Xil_Out32((u32)PROFILE_TIMER_BASEADDR + (u32)XSCUTIMER_ISR_OFFSET, \
(u32)XSCUTIMER_ISR_EVENT_FLAG_MASK);\
}
/*-------------------------------------------------------------------- */
#endif /* PROC_CORTEXA9 */
/*-------------------------------------------------------------------- */
#ifdef __cplusplus
}
#endif
#endif
@@ -1,83 +0,0 @@
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* Copyright (C) 2007 - 2022 Xilinx, Inc.
* Copyright (C) 2022 - 2023 Advanced Micro Devices, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
* EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
*/
#ifndef __ARCH_CC_H__
#define __ARCH_CC_H__
#include <stdio.h>
#include <stdlib.h>
#include "lwipopts.h"
/** if you want to use the struct timeval provided
* by your system, set this to 0 and include <sys/time.h> in cc.h */
#define LWIP_TIMEVAL_PRIVATE 0
#include <sys/time.h>
#include "cpu.h"
/* As per new design of lwip-2.0.2,
* LWIP_NO_STDINT_H should be defined as 1 in cc.h */
#define LWIP_NO_STDINT_H 1
typedef unsigned char u8_t;
typedef signed char s8_t;
typedef unsigned short u16_t;
typedef signed short s16_t;
typedef unsigned int u32_t;
typedef signed int s32_t;
typedef unsigned long long u64_t;
typedef signed long long s64_t;
#define S16_F "d"
#define U16_F "d"
#define S32_F "d"
#define U32_F "x"
#define X16_F "x"
#define X32_F "x"
#define LWIP_RAND rand
typedef unsigned long mem_ptr_t;
#define PACK_STRUCT_FIELD(x) x
#define PACK_STRUCT_STRUCT __attribute__((packed))
#define PACK_STRUCT_BEGIN
#define PACK_STRUCT_END
#define LWIP_PLATFORM_ASSERT(x)
#define LWIP_PLATFORM_DIAG(x) do { xil_printf x; } while(0)
#endif /* __ARCH_CC_H__ */
@@ -1,49 +0,0 @@
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* Copyright (C) 2007 - 2022 Xilinx, Inc.
* Copyright (C) 2022 - 2023 Advanced Micro Devices, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
* EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
*/
#ifndef __ARCH_CPU_H__
#define __ARCH_CPU_H__
#include "lwipopts.h"
#ifndef BYTE_ORDER
#ifdef PROCESSOR_LITTLE_ENDIAN
#define BYTE_ORDER LITTLE_ENDIAN
#else
#define BYTE_ORDER BIG_ENDIAN
#endif
#endif
#endif /* __ARCH_CPU_H__ */
@@ -1,52 +0,0 @@
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* Copyright (C) 2007 - 2022 Xilinx, Inc.
* Copyright (C) 2022 - 2023 Advanced Micro Devices, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
* EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
*/
#ifndef __ARCH_PERF_H__
#define __ARCH_PERF_H__
#define PERF_START /* null definition */
#define PERF_STOP(x) /* null definition */
#ifdef __cplusplus
extern "C" {
#endif
void perf_init(char *fname);
#ifdef __cplusplus
}
#endif
#endif /* __ARCH_PERF_H__ */
@@ -1,74 +0,0 @@
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* Copyright (C) 2007 - 2022 Xilinx, Inc.
* Copyright (C) 2022 - 2023 Advanced Micro Devices, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
* EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
*/
#ifndef __SYS_XILINX_ARCH_H__
#define __SYS_XILINX_ARCH_H__
#ifdef __cplusplus
extern "C" {
#endif
#include "lwipopts.h"
#if !NO_SYS
#include "FreeRTOS.h"
#include "task.h"
#include "queue.h"
#include "semphr.h"
#include "timers.h"
#define SYS_MBOX_NULL ( ( xQueueHandle ) NULL )
#define SYS_SEM_NULL ( ( xSemaphoreHandle ) NULL )
#define SYS_DEFAULT_THREAD_STACK_DEPTH configMINIMAL_STACK_SIZE
typedef xSemaphoreHandle sys_sem_t;
typedef xSemaphoreHandle sys_mutex_t;
typedef xQueueHandle sys_mbox_t;
typedef xTaskHandle sys_thread_t;
typedef unsigned long sys_prot_t;
#define sys_mbox_valid( x ) ( ( ( *x ) == NULL) ? pdFALSE : pdTRUE )
#define sys_mbox_set_invalid( x ) ( ( *x ) = NULL )
#define sys_sem_valid( x ) ( ( ( *x ) == NULL) ? pdFALSE : pdTRUE )
#define sys_sem_set_invalid( x ) ( ( *x ) = NULL )
#endif /* !NO_SYS */
#ifdef __cplusplus
}
#endif
#endif /* __SYS_XILINX_ARCH_H__ */
@@ -1,24 +0,0 @@
/*******************************************************************
*
* CAUTION: This file is automatically generated by HSI.
* Version: 2023.2
* DO NOT EDIT.
*
* Copyright (C) 2010-2026 Xilinx, Inc. All Rights Reserved.
* SPDX-License-Identifier: MIT
*
* Description: Configurations for Standalone BSP
*
*******************************************************************/
#ifndef BSPCONFIG_H /* prevent circular inclusions */
#define BSPCONFIG_H /* by using protection macros */
#define MICROBLAZE_PVR_NONE
/* Definition for hard-float ABI */
#define FPU_HARD_FLOAT_ABI_ENABLED 1
#endif /*end of __BSPCONFIG_H_*/
@@ -1,206 +0,0 @@
/**
* @file
* Application layered TCP connection API (to be used from TCPIP thread)\n
*
* This file contains the generic API.
* For more details see @ref altcp_api.
*/
/*
* Copyright (c) 2017 Simon Goldschmidt
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Simon Goldschmidt <goldsimon@gmx.de>
*
*/
#ifndef LWIP_HDR_ALTCP_H
#define LWIP_HDR_ALTCP_H
#include "lwip/opt.h"
#if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
#include "lwip/tcpbase.h"
#include "lwip/err.h"
#include "lwip/pbuf.h"
#include "lwip/ip_addr.h"
#ifdef __cplusplus
extern "C" {
#endif
struct altcp_pcb;
struct altcp_functions;
typedef err_t (*altcp_accept_fn)(void *arg, struct altcp_pcb *new_conn, err_t err);
typedef err_t (*altcp_connected_fn)(void *arg, struct altcp_pcb *conn, err_t err);
typedef err_t (*altcp_recv_fn)(void *arg, struct altcp_pcb *conn, struct pbuf *p, err_t err);
typedef err_t (*altcp_sent_fn)(void *arg, struct altcp_pcb *conn, u16_t len);
typedef err_t (*altcp_poll_fn)(void *arg, struct altcp_pcb *conn);
typedef void (*altcp_err_fn)(void *arg, err_t err);
typedef struct altcp_pcb* (*altcp_new_fn)(void *arg, u8_t ip_type);
struct altcp_pcb {
const struct altcp_functions *fns;
struct altcp_pcb *inner_conn;
void *arg;
void *state;
/* application callbacks */
altcp_accept_fn accept;
altcp_connected_fn connected;
altcp_recv_fn recv;
altcp_sent_fn sent;
altcp_poll_fn poll;
altcp_err_fn err;
u8_t pollinterval;
};
/** @ingroup altcp */
typedef struct altcp_allocator_s {
/** Allocator function */
altcp_new_fn alloc;
/** Argument to allocator function */
void *arg;
} altcp_allocator_t;
struct altcp_pcb *altcp_new(altcp_allocator_t *allocator);
struct altcp_pcb *altcp_new_ip6(altcp_allocator_t *allocator);
struct altcp_pcb *altcp_new_ip_type(altcp_allocator_t *allocator, u8_t ip_type);
void altcp_arg(struct altcp_pcb *conn, void *arg);
void altcp_accept(struct altcp_pcb *conn, altcp_accept_fn accept);
void altcp_recv(struct altcp_pcb *conn, altcp_recv_fn recv);
void altcp_sent(struct altcp_pcb *conn, altcp_sent_fn sent);
void altcp_poll(struct altcp_pcb *conn, altcp_poll_fn poll, u8_t interval);
void altcp_err(struct altcp_pcb *conn, altcp_err_fn err);
void altcp_recved(struct altcp_pcb *conn, u16_t len);
err_t altcp_bind(struct altcp_pcb *conn, const ip_addr_t *ipaddr, u16_t port);
err_t altcp_connect(struct altcp_pcb *conn, const ip_addr_t *ipaddr, u16_t port, altcp_connected_fn connected);
/* return conn for source code compatibility to tcp callback API only */
struct altcp_pcb *altcp_listen_with_backlog_and_err(struct altcp_pcb *conn, u8_t backlog, err_t *err);
#define altcp_listen_with_backlog(conn, backlog) altcp_listen_with_backlog_and_err(conn, backlog, NULL)
/** @ingroup altcp */
#define altcp_listen(conn) altcp_listen_with_backlog_and_err(conn, TCP_DEFAULT_LISTEN_BACKLOG, NULL)
void altcp_abort(struct altcp_pcb *conn);
err_t altcp_close(struct altcp_pcb *conn);
err_t altcp_shutdown(struct altcp_pcb *conn, int shut_rx, int shut_tx);
err_t altcp_write(struct altcp_pcb *conn, const void *dataptr, u16_t len, u8_t apiflags);
err_t altcp_output(struct altcp_pcb *conn);
u16_t altcp_mss(struct altcp_pcb *conn);
u16_t altcp_sndbuf(struct altcp_pcb *conn);
u16_t altcp_sndqueuelen(struct altcp_pcb *conn);
void altcp_nagle_disable(struct altcp_pcb *conn);
void altcp_nagle_enable(struct altcp_pcb *conn);
int altcp_nagle_disabled(struct altcp_pcb *conn);
void altcp_setprio(struct altcp_pcb *conn, u8_t prio);
err_t altcp_get_tcp_addrinfo(struct altcp_pcb *conn, int local, ip_addr_t *addr, u16_t *port);
ip_addr_t *altcp_get_ip(struct altcp_pcb *conn, int local);
u16_t altcp_get_port(struct altcp_pcb *conn, int local);
#if LWIP_TCP_KEEPALIVE
void altcp_keepalive_disable(struct altcp_pcb *conn);
void altcp_keepalive_enable(struct altcp_pcb *conn, u32_t idle, u32_t intvl, u32_t count);
#endif
#ifdef LWIP_DEBUG
enum tcp_state altcp_dbg_get_tcp_state(struct altcp_pcb *conn);
#endif
#ifdef __cplusplus
}
#endif
#else /* LWIP_ALTCP */
/* ALTCP disabled, define everything to link against tcp callback API (e.g. to get a small non-ssl httpd) */
#include "lwip/tcp.h"
#define altcp_accept_fn tcp_accept_fn
#define altcp_connected_fn tcp_connected_fn
#define altcp_recv_fn tcp_recv_fn
#define altcp_sent_fn tcp_sent_fn
#define altcp_poll_fn tcp_poll_fn
#define altcp_err_fn tcp_err_fn
#define altcp_pcb tcp_pcb
#define altcp_tcp_new_ip_type tcp_new_ip_type
#define altcp_tcp_new tcp_new
#define altcp_tcp_new_ip6 tcp_new_ip6
#define altcp_new(allocator) tcp_new()
#define altcp_new_ip6(allocator) tcp_new_ip6()
#define altcp_new_ip_type(allocator, ip_type) tcp_new_ip_type(ip_type)
#define altcp_arg tcp_arg
#define altcp_accept tcp_accept
#define altcp_recv tcp_recv
#define altcp_sent tcp_sent
#define altcp_poll tcp_poll
#define altcp_err tcp_err
#define altcp_recved tcp_recved
#define altcp_bind tcp_bind
#define altcp_connect tcp_connect
#define altcp_listen_with_backlog_and_err tcp_listen_with_backlog_and_err
#define altcp_listen_with_backlog tcp_listen_with_backlog
#define altcp_listen tcp_listen
#define altcp_abort tcp_abort
#define altcp_close tcp_close
#define altcp_shutdown tcp_shutdown
#define altcp_write tcp_write
#define altcp_output tcp_output
#define altcp_mss tcp_mss
#define altcp_sndbuf tcp_sndbuf
#define altcp_sndqueuelen tcp_sndqueuelen
#define altcp_nagle_disable tcp_nagle_disable
#define altcp_nagle_enable tcp_nagle_enable
#define altcp_nagle_disabled tcp_nagle_disabled
#define altcp_setprio tcp_setprio
#define altcp_get_tcp_addrinfo tcp_get_tcp_addrinfo
#define altcp_get_ip(pcb, local) ((local) ? (&(pcb)->local_ip) : (&(pcb)->remote_ip))
#ifdef LWIP_DEBUG
#define altcp_dbg_get_tcp_state tcp_dbg_get_tcp_state
#endif
#endif /* LWIP_ALTCP */
#endif /* LWIP_HDR_ALTCP_H */
@@ -1,72 +0,0 @@
/**
* @file
* Application layered TCP connection API (to be used from TCPIP thread)\n
* This interface mimics the tcp callback API to the application while preventing
* direct linking (much like virtual functions).
* This way, an application can make use of other application layer protocols
* on top of TCP without knowing the details (e.g. TLS, proxy connection).
*
* This file contains the base implementation calling into tcp.
*/
/*
* Copyright (c) 2017 Simon Goldschmidt
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Simon Goldschmidt <goldsimon@gmx.de>
*
*/
#ifndef LWIP_HDR_ALTCP_TCP_H
#define LWIP_HDR_ALTCP_TCP_H
#include "lwip/opt.h"
#if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
#include "lwip/altcp.h"
#ifdef __cplusplus
extern "C" {
#endif
struct altcp_pcb *altcp_tcp_new_ip_type(u8_t ip_type);
#define altcp_tcp_new() altcp_tcp_new_ip_type(IPADDR_TYPE_V4)
#define altcp_tcp_new_ip6() altcp_tcp_new_ip_type(IPADDR_TYPE_V6)
struct altcp_pcb *altcp_tcp_alloc(void *arg, u8_t ip_type);
struct tcp_pcb;
struct altcp_pcb *altcp_tcp_wrap(struct tcp_pcb *tpcb);
#ifdef __cplusplus
}
#endif
#endif /* LWIP_ALTCP */
#endif /* LWIP_HDR_ALTCP_TCP_H */
@@ -1,143 +0,0 @@
/**
* @file
* Application layered TCP/TLS connection API (to be used from TCPIP thread)
*
* @defgroup altcp_tls TLS layer
* @ingroup altcp
* This file contains function prototypes for a TLS layer.
* A port to ARM mbedtls is provided in the apps/ tree
* (LWIP_ALTCP_TLS_MBEDTLS option).
*/
/*
* Copyright (c) 2017 Simon Goldschmidt
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Simon Goldschmidt <goldsimon@gmx.de>
*
*/
#ifndef LWIP_HDR_ALTCP_TLS_H
#define LWIP_HDR_ALTCP_TLS_H
#include "lwip/opt.h"
#if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
#if LWIP_ALTCP_TLS
#include "lwip/altcp.h"
#ifdef __cplusplus
extern "C" {
#endif
/** @ingroup altcp_tls
* ALTCP_TLS configuration handle, content depends on port (e.g. mbedtls)
*/
struct altcp_tls_config;
/** @ingroup altcp_tls
* Create an ALTCP_TLS server configuration handle prepared for multiple certificates
*/
struct altcp_tls_config *altcp_tls_create_config_server(uint8_t cert_count);
/** @ingroup altcp_tls
* Add a certificate to an ALTCP_TLS server configuration handle
*/
err_t altcp_tls_config_server_add_privkey_cert(struct altcp_tls_config *config,
const u8_t *privkey, size_t privkey_len,
const u8_t *privkey_pass, size_t privkey_pass_len,
const u8_t *cert, size_t cert_len);
/** @ingroup altcp_tls
* Create an ALTCP_TLS server configuration handle with one certificate
* (short version of calling @ref altcp_tls_create_config_server and
* @ref altcp_tls_config_server_add_privkey_cert)
*/
struct altcp_tls_config *altcp_tls_create_config_server_privkey_cert(const u8_t *privkey, size_t privkey_len,
const u8_t *privkey_pass, size_t privkey_pass_len,
const u8_t *cert, size_t cert_len);
/** @ingroup altcp_tls
* Create an ALTCP_TLS client configuration handle
*/
struct altcp_tls_config *altcp_tls_create_config_client(const u8_t *cert, size_t cert_len);
/** @ingroup altcp_tls
* Create an ALTCP_TLS client configuration handle with two-way server/client authentication
*/
struct altcp_tls_config *altcp_tls_create_config_client_2wayauth(const u8_t *ca, size_t ca_len, const u8_t *privkey, size_t privkey_len,
const u8_t *privkey_pass, size_t privkey_pass_len,
const u8_t *cert, size_t cert_len);
/** @ingroup altcp_tls
* Free an ALTCP_TLS configuration handle
*/
void altcp_tls_free_config(struct altcp_tls_config *conf);
/** @ingroup altcp_tls
* Free an ALTCP_TLS global entropy instance.
* All ALTCP_TLS configuration are linked to one altcp_tls_entropy_rng structure
* that handle an unique system entropy & ctr_drbg instance.
* This function allow application to free this altcp_tls_entropy_rng structure
* when all configuration referencing it were destroyed.
* This function does nothing if some ALTCP_TLS configuration handle are still
* active.
*/
void altcp_tls_free_entropy(void);
/** @ingroup altcp_tls
* Create new ALTCP_TLS layer wrapping an existing pcb as inner connection (e.g. TLS over TCP)
*/
struct altcp_pcb *altcp_tls_wrap(struct altcp_tls_config *config, struct altcp_pcb *inner_pcb);
/** @ingroup altcp_tls
* Create new ALTCP_TLS pcb and its inner tcp pcb
*/
struct altcp_pcb *altcp_tls_new(struct altcp_tls_config *config, u8_t ip_type);
/** @ingroup altcp_tls
* Create new ALTCP_TLS layer pcb and its inner tcp pcb.
* Same as @ref altcp_tls_new but this allocator function fits to
* @ref altcp_allocator_t / @ref altcp_new.\n
'arg' must contain a struct altcp_tls_config *.
*/
struct altcp_pcb *altcp_tls_alloc(void *arg, u8_t ip_type);
/** @ingroup altcp_tls
* Return pointer to internal TLS context so application can tweak it.
* Real type depends on port (e.g. mbedtls)
*/
void *altcp_tls_context(struct altcp_pcb *conn);
#ifdef __cplusplus
}
#endif
#endif /* LWIP_ALTCP_TLS */
#endif /* LWIP_ALTCP */
#endif /* LWIP_HDR_ALTCP_TLS_H */
@@ -1,431 +0,0 @@
/**
* @file
* netconn API (to be used from non-TCPIP threads)
*/
/*
* Copyright (c) 2001-2004 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
*/
#ifndef LWIP_HDR_API_H
#define LWIP_HDR_API_H
#include "lwip/opt.h"
#if LWIP_NETCONN || LWIP_SOCKET /* don't build if not configured for use in lwipopts.h */
/* Note: Netconn API is always available when sockets are enabled -
* sockets are implemented on top of them */
#include "lwip/arch.h"
#include "lwip/netbuf.h"
#include "lwip/sys.h"
#include "lwip/ip_addr.h"
#include "lwip/err.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Throughout this file, IP addresses and port numbers are expected to be in
* the same byte order as in the corresponding pcb.
*/
/* Flags for netconn_write (u8_t) */
#define NETCONN_NOFLAG 0x00
#define NETCONN_NOCOPY 0x00 /* Only for source code compatibility */
#define NETCONN_COPY 0x01
#define NETCONN_MORE 0x02
#define NETCONN_DONTBLOCK 0x04
#define NETCONN_NOAUTORCVD 0x08 /* prevent netconn_recv_data_tcp() from updating the tcp window - must be done manually via netconn_tcp_recvd() */
#define NETCONN_NOFIN 0x10 /* upper layer already received data, leave FIN in queue until called again */
/* Flags for struct netconn.flags (u8_t) */
/** This netconn had an error, don't block on recvmbox/acceptmbox any more */
#define NETCONN_FLAG_MBOXCLOSED 0x01
/** Should this netconn avoid blocking? */
#define NETCONN_FLAG_NON_BLOCKING 0x02
/** Was the last connect action a non-blocking one? */
#define NETCONN_FLAG_IN_NONBLOCKING_CONNECT 0x04
#if LWIP_NETCONN_FULLDUPLEX
/** The mbox of this netconn is being deallocated, don't use it anymore */
#define NETCONN_FLAG_MBOXINVALID 0x08
#endif /* LWIP_NETCONN_FULLDUPLEX */
/** If a nonblocking write has been rejected before, poll_tcp needs to
check if the netconn is writable again */
#define NETCONN_FLAG_CHECK_WRITESPACE 0x10
#if LWIP_IPV6
/** If this flag is set then only IPv6 communication is allowed on the
netconn. As per RFC#3493 this features defaults to OFF allowing
dual-stack usage by default. */
#define NETCONN_FLAG_IPV6_V6ONLY 0x20
#endif /* LWIP_IPV6 */
#if LWIP_NETBUF_RECVINFO
/** Received packet info will be recorded for this netconn */
#define NETCONN_FLAG_PKTINFO 0x40
#endif /* LWIP_NETBUF_RECVINFO */
/** A FIN has been received but not passed to the application yet */
#define NETCONN_FIN_RX_PENDING 0x80
/* Helpers to process several netconn_types by the same code */
#define NETCONNTYPE_GROUP(t) ((t)&0xF0)
#define NETCONNTYPE_DATAGRAM(t) ((t)&0xE0)
#if LWIP_IPV6
#define NETCONN_TYPE_IPV6 0x08
#define NETCONNTYPE_ISIPV6(t) (((t)&NETCONN_TYPE_IPV6) != 0)
#define NETCONNTYPE_ISUDPLITE(t) (((t)&0xF3) == NETCONN_UDPLITE)
#define NETCONNTYPE_ISUDPNOCHKSUM(t) (((t)&0xF3) == NETCONN_UDPNOCHKSUM)
#else /* LWIP_IPV6 */
#define NETCONNTYPE_ISIPV6(t) (0)
#define NETCONNTYPE_ISUDPLITE(t) ((t) == NETCONN_UDPLITE)
#define NETCONNTYPE_ISUDPNOCHKSUM(t) ((t) == NETCONN_UDPNOCHKSUM)
#endif /* LWIP_IPV6 */
/** @ingroup netconn_common
* Protocol family and type of the netconn
*/
enum netconn_type {
NETCONN_INVALID = 0,
/** TCP IPv4 */
NETCONN_TCP = 0x10,
#if LWIP_IPV6
/** TCP IPv6 */
NETCONN_TCP_IPV6 = NETCONN_TCP | NETCONN_TYPE_IPV6 /* 0x18 */,
#endif /* LWIP_IPV6 */
/** UDP IPv4 */
NETCONN_UDP = 0x20,
/** UDP IPv4 lite */
NETCONN_UDPLITE = 0x21,
/** UDP IPv4 no checksum */
NETCONN_UDPNOCHKSUM = 0x22,
#if LWIP_IPV6
/** UDP IPv6 (dual-stack by default, unless you call @ref netconn_set_ipv6only) */
NETCONN_UDP_IPV6 = NETCONN_UDP | NETCONN_TYPE_IPV6 /* 0x28 */,
/** UDP IPv6 lite (dual-stack by default, unless you call @ref netconn_set_ipv6only) */
NETCONN_UDPLITE_IPV6 = NETCONN_UDPLITE | NETCONN_TYPE_IPV6 /* 0x29 */,
/** UDP IPv6 no checksum (dual-stack by default, unless you call @ref netconn_set_ipv6only) */
NETCONN_UDPNOCHKSUM_IPV6 = NETCONN_UDPNOCHKSUM | NETCONN_TYPE_IPV6 /* 0x2a */,
#endif /* LWIP_IPV6 */
/** Raw connection IPv4 */
NETCONN_RAW = 0x40
#if LWIP_IPV6
/** Raw connection IPv6 (dual-stack by default, unless you call @ref netconn_set_ipv6only) */
, NETCONN_RAW_IPV6 = NETCONN_RAW | NETCONN_TYPE_IPV6 /* 0x48 */
#endif /* LWIP_IPV6 */
};
/** Current state of the netconn. Non-TCP netconns are always
* in state NETCONN_NONE! */
enum netconn_state {
NETCONN_NONE,
NETCONN_WRITE,
NETCONN_LISTEN,
NETCONN_CONNECT,
NETCONN_CLOSE
};
/** Used to inform the callback function about changes
*
* Event explanation:
*
* In the netconn implementation, there are three ways to block a client:
*
* - accept mbox (sys_arch_mbox_fetch(&conn->acceptmbox, &accept_ptr, 0); in netconn_accept())
* - receive mbox (sys_arch_mbox_fetch(&conn->recvmbox, &buf, 0); in netconn_recv_data())
* - send queue is full (sys_arch_sem_wait(LWIP_API_MSG_SEM(msg), 0); in lwip_netconn_do_write())
*
* The events have to be seen as events signaling the state of these mboxes/semaphores. For non-blocking
* connections, you need to know in advance whether a call to a netconn function call would block or not,
* and these events tell you about that.
*
* RCVPLUS events say: Safe to perform a potentially blocking call call once more.
* They are counted in sockets - three RCVPLUS events for accept mbox means you are safe
* to call netconn_accept 3 times without being blocked.
* Same thing for receive mbox.
*
* RCVMINUS events say: Your call to to a possibly blocking function is "acknowledged".
* Socket implementation decrements the counter.
*
* For TX, there is no need to count, its merely a flag. SENDPLUS means you may send something.
* SENDPLUS occurs when enough data was delivered to peer so netconn_send() can be called again.
* A SENDMINUS event occurs when the next call to a netconn_send() would be blocking.
*/
enum netconn_evt {
NETCONN_EVT_RCVPLUS,
NETCONN_EVT_RCVMINUS,
NETCONN_EVT_SENDPLUS,
NETCONN_EVT_SENDMINUS,
NETCONN_EVT_ERROR
};
#if LWIP_IGMP || (LWIP_IPV6 && LWIP_IPV6_MLD)
/** Used for netconn_join_leave_group() */
enum netconn_igmp {
NETCONN_JOIN,
NETCONN_LEAVE
};
#endif /* LWIP_IGMP || (LWIP_IPV6 && LWIP_IPV6_MLD) */
#if LWIP_DNS
/* Used for netconn_gethostbyname_addrtype(), these should match the DNS_ADDRTYPE defines in dns.h */
#define NETCONN_DNS_DEFAULT NETCONN_DNS_IPV4_IPV6
#define NETCONN_DNS_IPV4 0
#define NETCONN_DNS_IPV6 1
#define NETCONN_DNS_IPV4_IPV6 2 /* try to resolve IPv4 first, try IPv6 if IPv4 fails only */
#define NETCONN_DNS_IPV6_IPV4 3 /* try to resolve IPv6 first, try IPv4 if IPv6 fails only */
#endif /* LWIP_DNS */
/* forward-declare some structs to avoid to include their headers */
struct ip_pcb;
struct tcp_pcb;
struct udp_pcb;
struct raw_pcb;
struct netconn;
struct api_msg;
/** A callback prototype to inform about events for a netconn */
typedef void (* netconn_callback)(struct netconn *, enum netconn_evt, u16_t len);
/** A netconn descriptor */
struct netconn {
/** type of the netconn (TCP, UDP or RAW) */
enum netconn_type type;
/** current state of the netconn */
enum netconn_state state;
/** the lwIP internal protocol control block */
union {
struct ip_pcb *ip;
struct tcp_pcb *tcp;
struct udp_pcb *udp;
struct raw_pcb *raw;
} pcb;
/** the last asynchronous unreported error this netconn had */
err_t pending_err;
#if !LWIP_NETCONN_SEM_PER_THREAD
/** sem that is used to synchronously execute functions in the core context */
sys_sem_t op_completed;
#endif
/** mbox where received packets are stored until they are fetched
by the netconn application thread (can grow quite big) */
sys_mbox_t recvmbox;
#if LWIP_TCP
/** mbox where new connections are stored until processed
by the application thread */
sys_mbox_t acceptmbox;
#endif /* LWIP_TCP */
#if LWIP_NETCONN_FULLDUPLEX
/** number of threads waiting on an mbox. This is required to unblock
all threads when closing while threads are waiting. */
int mbox_threads_waiting;
#endif
/** only used for socket layer */
#if LWIP_SOCKET
int socket;
#endif /* LWIP_SOCKET */
#if LWIP_SO_SNDTIMEO
/** timeout to wait for sending data (which means enqueueing data for sending
in internal buffers) in milliseconds */
s32_t send_timeout;
#endif /* LWIP_SO_RCVTIMEO */
#if LWIP_SO_RCVTIMEO
/** timeout in milliseconds to wait for new data to be received
(or connections to arrive for listening netconns) */
u32_t recv_timeout;
#endif /* LWIP_SO_RCVTIMEO */
#if LWIP_SO_RCVBUF
/** maximum amount of bytes queued in recvmbox
not used for TCP: adjust TCP_WND instead! */
int recv_bufsize;
/** number of bytes currently in recvmbox to be received,
tested against recv_bufsize to limit bytes on recvmbox
for UDP and RAW, used for FIONREAD */
int recv_avail;
#endif /* LWIP_SO_RCVBUF */
#if LWIP_SO_LINGER
/** values <0 mean linger is disabled, values > 0 are seconds to linger */
s16_t linger;
#endif /* LWIP_SO_LINGER */
/** flags holding more netconn-internal state, see NETCONN_FLAG_* defines */
u8_t flags;
#if LWIP_TCP
/** TCP: when data passed to netconn_write doesn't fit into the send buffer,
this temporarily stores the message.
Also used during connect and close. */
struct api_msg *current_msg;
#endif /* LWIP_TCP */
/** A callback function that is informed about events for this netconn */
netconn_callback callback;
};
/** This vector type is passed to @ref netconn_write_vectors_partly to send
* multiple buffers at once.
* ATTENTION: This type has to directly map struct iovec since one is casted
* into the other!
*/
struct netvector {
/** pointer to the application buffer that contains the data to send */
const void *ptr;
/** size of the application data to send */
size_t len;
};
/** Register an Network connection event */
#define API_EVENT(c,e,l) if (c->callback) { \
(*c->callback)(c, e, l); \
}
/* Network connection functions: */
/** @ingroup netconn_common
* Create new netconn connection
* @param t @ref netconn_type */
#define netconn_new(t) netconn_new_with_proto_and_callback(t, 0, NULL)
#define netconn_new_with_callback(t, c) netconn_new_with_proto_and_callback(t, 0, c)
struct netconn *netconn_new_with_proto_and_callback(enum netconn_type t, u8_t proto,
netconn_callback callback);
err_t netconn_prepare_delete(struct netconn *conn);
err_t netconn_delete(struct netconn *conn);
/** Get the type of a netconn (as enum netconn_type). */
#define netconn_type(conn) (conn->type)
err_t netconn_getaddr(struct netconn *conn, ip_addr_t *addr,
u16_t *port, u8_t local);
/** @ingroup netconn_common */
#define netconn_peer(c,i,p) netconn_getaddr(c,i,p,0)
/** @ingroup netconn_common */
#define netconn_addr(c,i,p) netconn_getaddr(c,i,p,1)
err_t netconn_bind(struct netconn *conn, const ip_addr_t *addr, u16_t port);
err_t netconn_bind_if(struct netconn *conn, u8_t if_idx);
err_t netconn_connect(struct netconn *conn, const ip_addr_t *addr, u16_t port);
err_t netconn_disconnect (struct netconn *conn);
err_t netconn_listen_with_backlog(struct netconn *conn, u8_t backlog);
/** @ingroup netconn_tcp */
#define netconn_listen(conn) netconn_listen_with_backlog(conn, TCP_DEFAULT_LISTEN_BACKLOG)
err_t netconn_accept(struct netconn *conn, struct netconn **new_conn);
err_t netconn_recv(struct netconn *conn, struct netbuf **new_buf);
err_t netconn_recv_udp_raw_netbuf(struct netconn *conn, struct netbuf **new_buf);
err_t netconn_recv_udp_raw_netbuf_flags(struct netconn *conn, struct netbuf **new_buf, u8_t apiflags);
err_t netconn_recv_tcp_pbuf(struct netconn *conn, struct pbuf **new_buf);
err_t netconn_recv_tcp_pbuf_flags(struct netconn *conn, struct pbuf **new_buf, u8_t apiflags);
err_t netconn_tcp_recvd(struct netconn *conn, size_t len);
err_t netconn_sendto(struct netconn *conn, struct netbuf *buf,
const ip_addr_t *addr, u16_t port);
err_t netconn_send(struct netconn *conn, struct netbuf *buf);
err_t netconn_write_partly(struct netconn *conn, const void *dataptr, size_t size,
u8_t apiflags, size_t *bytes_written);
err_t netconn_write_vectors_partly(struct netconn *conn, struct netvector *vectors, u16_t vectorcnt,
u8_t apiflags, size_t *bytes_written);
/** @ingroup netconn_tcp */
#define netconn_write(conn, dataptr, size, apiflags) \
netconn_write_partly(conn, dataptr, size, apiflags, NULL)
err_t netconn_close(struct netconn *conn);
err_t netconn_shutdown(struct netconn *conn, u8_t shut_rx, u8_t shut_tx);
#if LWIP_IGMP || (LWIP_IPV6 && LWIP_IPV6_MLD)
err_t netconn_join_leave_group(struct netconn *conn, const ip_addr_t *multiaddr,
const ip_addr_t *netif_addr, enum netconn_igmp join_or_leave);
err_t netconn_join_leave_group_netif(struct netconn *conn, const ip_addr_t *multiaddr,
u8_t if_idx, enum netconn_igmp join_or_leave);
#endif /* LWIP_IGMP || (LWIP_IPV6 && LWIP_IPV6_MLD) */
#if LWIP_DNS
#if LWIP_IPV4 && LWIP_IPV6
err_t netconn_gethostbyname_addrtype(const char *name, ip_addr_t *addr, u8_t dns_addrtype);
#define netconn_gethostbyname(name, addr) netconn_gethostbyname_addrtype(name, addr, NETCONN_DNS_DEFAULT)
#else /* LWIP_IPV4 && LWIP_IPV6 */
err_t netconn_gethostbyname(const char *name, ip_addr_t *addr);
#define netconn_gethostbyname_addrtype(name, addr, dns_addrtype) netconn_gethostbyname(name, addr)
#endif /* LWIP_IPV4 && LWIP_IPV6 */
#endif /* LWIP_DNS */
err_t netconn_err(struct netconn *conn);
#define netconn_recv_bufsize(conn) ((conn)->recv_bufsize)
#define netconn_set_flags(conn, set_flags) do { (conn)->flags = (u8_t)((conn)->flags | (set_flags)); } while(0)
#define netconn_clear_flags(conn, clr_flags) do { (conn)->flags = (u8_t)((conn)->flags & (u8_t)(~(clr_flags) & 0xff)); } while(0)
#define netconn_is_flag_set(conn, flag) (((conn)->flags & (flag)) != 0)
/** Set the blocking status of netconn calls (@todo: write/send is missing) */
#define netconn_set_nonblocking(conn, val) do { if(val) { \
netconn_set_flags(conn, NETCONN_FLAG_NON_BLOCKING); \
} else { \
netconn_clear_flags(conn, NETCONN_FLAG_NON_BLOCKING); }} while(0)
/** Get the blocking status of netconn calls (@todo: write/send is missing) */
#define netconn_is_nonblocking(conn) (((conn)->flags & NETCONN_FLAG_NON_BLOCKING) != 0)
#if LWIP_IPV6
/** @ingroup netconn_common
* TCP: Set the IPv6 ONLY status of netconn calls (see NETCONN_FLAG_IPV6_V6ONLY)
*/
#define netconn_set_ipv6only(conn, val) do { if(val) { \
netconn_set_flags(conn, NETCONN_FLAG_IPV6_V6ONLY); \
} else { \
netconn_clear_flags(conn, NETCONN_FLAG_IPV6_V6ONLY); }} while(0)
/** @ingroup netconn_common
* TCP: Get the IPv6 ONLY status of netconn calls (see NETCONN_FLAG_IPV6_V6ONLY)
*/
#define netconn_get_ipv6only(conn) (((conn)->flags & NETCONN_FLAG_IPV6_V6ONLY) != 0)
#endif /* LWIP_IPV6 */
#if LWIP_SO_SNDTIMEO
/** Set the send timeout in milliseconds */
#define netconn_set_sendtimeout(conn, timeout) ((conn)->send_timeout = (timeout))
/** Get the send timeout in milliseconds */
#define netconn_get_sendtimeout(conn) ((conn)->send_timeout)
#endif /* LWIP_SO_SNDTIMEO */
#if LWIP_SO_RCVTIMEO
/** Set the receive timeout in milliseconds */
#define netconn_set_recvtimeout(conn, timeout) ((conn)->recv_timeout = (timeout))
/** Get the receive timeout in milliseconds */
#define netconn_get_recvtimeout(conn) ((conn)->recv_timeout)
#endif /* LWIP_SO_RCVTIMEO */
#if LWIP_SO_RCVBUF
/** Set the receive buffer in bytes */
#define netconn_set_recvbufsize(conn, recvbufsize) ((conn)->recv_bufsize = (recvbufsize))
/** Get the receive buffer in bytes */
#define netconn_get_recvbufsize(conn) ((conn)->recv_bufsize)
#endif /* LWIP_SO_RCVBUF*/
#if LWIP_NETCONN_SEM_PER_THREAD
void netconn_thread_init(void);
void netconn_thread_cleanup(void);
#else /* LWIP_NETCONN_SEM_PER_THREAD */
#define netconn_thread_init()
#define netconn_thread_cleanup()
#endif /* LWIP_NETCONN_SEM_PER_THREAD */
#ifdef __cplusplus
}
#endif
#endif /* LWIP_NETCONN || LWIP_SOCKET */
#endif /* LWIP_HDR_API_H */
@@ -1,2 +0,0 @@
This directory contains application headers.
Every application shall provide one api file APP.h and optionally one options file APP_opts.h
@@ -1,79 +0,0 @@
/**
* @file
* Application layered TCP connection API that executes a proxy-connect.
*
* This file provides a starting layer that executes a proxy-connect e.g. to
* set up TLS connections through a http proxy.
*/
/*
* Copyright (c) 2018 Simon Goldschmidt
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Simon Goldschmidt <goldsimon@gmx.de>
*
*/
#ifndef LWIP_HDR_APPS_ALTCP_PROXYCONNECT_H
#define LWIP_HDR_APPS_ALTCP_PROXYCONNECT_H
#include "lwip/opt.h"
#if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
#include "lwip/ip_addr.h"
#ifdef __cplusplus
extern "C" {
#endif
struct altcp_proxyconnect_config {
ip_addr_t proxy_addr;
u16_t proxy_port;
};
struct altcp_pcb *altcp_proxyconnect_new(struct altcp_proxyconnect_config *config, struct altcp_pcb *inner_pcb);
struct altcp_pcb *altcp_proxyconnect_new_tcp(struct altcp_proxyconnect_config *config, u8_t ip_type);
struct altcp_pcb *altcp_proxyconnect_alloc(void *arg, u8_t ip_type);
#if LWIP_ALTCP_TLS
struct altcp_proxyconnect_tls_config {
struct altcp_proxyconnect_config proxy;
struct altcp_tls_config *tls_config;
};
struct altcp_pcb *altcp_proxyconnect_tls_alloc(void *arg, u8_t ip_type);
#endif /* LWIP_ALTCP_TLS */
#ifdef __cplusplus
}
#endif
#endif /* LWIP_ALTCP */
#endif /* LWIP_HDR_APPS_ALTCP_PROXYCONNECT_H */
@@ -1,105 +0,0 @@
/**
* @file
* Application layered TCP/TLS connection API (to be used from TCPIP thread)
*
* This file contains options for an mbedtls port of the TLS layer.
*/
/*
* Copyright (c) 2017 Simon Goldschmidt
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Simon Goldschmidt <goldsimon@gmx.de>
*
*/
#ifndef LWIP_HDR_ALTCP_TLS_OPTS_H
#define LWIP_HDR_ALTCP_TLS_OPTS_H
#include "lwip/opt.h"
#if LWIP_ALTCP /* don't build if not configured for use in lwipopts.h */
/** LWIP_ALTCP_TLS_MBEDTLS==1: use mbedTLS for TLS support for altcp API
* mbedtls include directory must be reachable via include search path
*/
#ifndef LWIP_ALTCP_TLS_MBEDTLS
#define LWIP_ALTCP_TLS_MBEDTLS 0
#endif
/** Configure debug level of this file */
#ifndef ALTCP_MBEDTLS_DEBUG
#define ALTCP_MBEDTLS_DEBUG LWIP_DBG_OFF
#endif
/** Configure lwIP debug level of the mbedTLS library */
#ifndef ALTCP_MBEDTLS_LIB_DEBUG
#define ALTCP_MBEDTLS_LIB_DEBUG LWIP_DBG_OFF
#endif
/** Configure minimum internal debug level of the mbedTLS library */
#ifndef ALTCP_MBEDTLS_LIB_DEBUG_LEVEL_MIN
#define ALTCP_MBEDTLS_LIB_DEBUG_LEVEL_MIN 0
#endif
/** Enable the basic session cache
* ATTENTION: Using a session cache can lower security by reusing keys!
*/
#ifndef ALTCP_MBEDTLS_USE_SESSION_CACHE
#define ALTCP_MBEDTLS_USE_SESSION_CACHE 0
#endif
/** Maximum cache size of the basic session cache */
#ifndef ALTCP_MBEDTLS_SESSION_CACHE_SIZE
#define ALTCP_MBEDTLS_SESSION_CACHE_SIZE 30
#endif
/** Set a session timeout in seconds for the basic session cache */
#ifndef ALTCP_MBEDTLS_SESSION_CACHE_TIMEOUT_SECONDS
#define ALTCP_MBEDTLS_SESSION_CACHE_TIMEOUT_SECONDS (60 * 60)
#endif
/** Use session tickets to speed up connection setup (needs
* MBEDTLS_SSL_SESSION_TICKETS enabled in mbedTLS config).
* ATTENTION: Using session tickets can lower security by reusing keys!
*/
#ifndef ALTCP_MBEDTLS_USE_SESSION_TICKETS
#define ALTCP_MBEDTLS_USE_SESSION_TICKETS 0
#endif
/** Session ticket cipher */
#ifndef ALTCP_MBEDTLS_SESSION_TICKET_CIPHER
#define ALTCP_MBEDTLS_SESSION_TICKET_CIPHER MBEDTLS_CIPHER_AES_256_GCM
#endif
/** Maximum timeout for session tickets */
#ifndef ALTCP_MBEDTLS_SESSION_TICKET_TIMEOUT_SECONDS
#define ALTCP_MBEDTLS_SESSION_TICKET_TIMEOUT_SECONDS (60 * 60 * 24)
#endif
#endif /* LWIP_ALTCP */
#endif /* LWIP_HDR_ALTCP_TLS_OPTS_H */
@@ -1,126 +0,0 @@
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
*/
#ifndef LWIP_HDR_APPS_FS_H
#define LWIP_HDR_APPS_FS_H
#include "httpd_opts.h"
#include "lwip/err.h"
#ifdef __cplusplus
extern "C" {
#endif
#define FS_READ_EOF -1
#define FS_READ_DELAYED -2
#if HTTPD_PRECALCULATED_CHECKSUM
struct fsdata_chksum {
u32_t offset;
u16_t chksum;
u16_t len;
};
#endif /* HTTPD_PRECALCULATED_CHECKSUM */
#define FS_FILE_FLAGS_HEADER_INCLUDED 0x01
#define FS_FILE_FLAGS_HEADER_PERSISTENT 0x02
#define FS_FILE_FLAGS_HEADER_HTTPVER_1_1 0x04
#define FS_FILE_FLAGS_SSI 0x08
/** Define FS_FILE_EXTENSION_T_DEFINED if you have typedef'ed to your private
* pointer type (defaults to 'void' so the default usage is 'void*')
*/
#ifndef FS_FILE_EXTENSION_T_DEFINED
typedef void fs_file_extension;
#endif
struct fs_file {
const char *data;
int len;
int index;
/* pextension is free for implementations to hold private (extensional)
arbitrary data, e.g. holding some file state or file system handle */
fs_file_extension *pextension;
#if HTTPD_PRECALCULATED_CHECKSUM
const struct fsdata_chksum *chksum;
u16_t chksum_count;
#endif /* HTTPD_PRECALCULATED_CHECKSUM */
u8_t flags;
#if LWIP_HTTPD_CUSTOM_FILES
u8_t is_custom_file;
#endif /* LWIP_HTTPD_CUSTOM_FILES */
#if LWIP_HTTPD_FILE_STATE
void *state;
#endif /* LWIP_HTTPD_FILE_STATE */
};
#if LWIP_HTTPD_FS_ASYNC_READ
typedef void (*fs_wait_cb)(void *arg);
#endif /* LWIP_HTTPD_FS_ASYNC_READ */
err_t fs_open(struct fs_file *file, const char *name);
void fs_close(struct fs_file *file);
#if LWIP_HTTPD_DYNAMIC_FILE_READ
#if LWIP_HTTPD_FS_ASYNC_READ
int fs_read_async(struct fs_file *file, char *buffer, int count, fs_wait_cb callback_fn, void *callback_arg);
#else /* LWIP_HTTPD_FS_ASYNC_READ */
int fs_read(struct fs_file *file, char *buffer, int count);
#endif /* LWIP_HTTPD_FS_ASYNC_READ */
#endif /* LWIP_HTTPD_DYNAMIC_FILE_READ */
#if LWIP_HTTPD_FS_ASYNC_READ
int fs_is_file_ready(struct fs_file *file, fs_wait_cb callback_fn, void *callback_arg);
#endif /* LWIP_HTTPD_FS_ASYNC_READ */
int fs_bytes_left(struct fs_file *file);
#if LWIP_HTTPD_FILE_STATE
/** This user-defined function is called when a file is opened. */
void *fs_state_init(struct fs_file *file, const char *name);
/** This user-defined function is called when a file is closed. */
void fs_state_free(struct fs_file *file, void *state);
#endif /* #if LWIP_HTTPD_FILE_STATE */
struct fsdata_file {
const struct fsdata_file *next;
const unsigned char *name;
const unsigned char *data;
int len;
u8_t flags;
#if HTTPD_PRECALCULATED_CHECKSUM
u16_t chksum_count;
const struct fsdata_chksum *chksum;
#endif /* HTTPD_PRECALCULATED_CHECKSUM */
};
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_FS_H */
@@ -1,160 +0,0 @@
/**
* @file
* HTTP client
*/
/*
* Copyright (c) 2018 Simon Goldschmidt <goldsimon@gmx.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Simon Goldschmidt <goldsimon@gmx.de>
*
*/
#ifndef LWIP_HDR_APPS_HTTP_CLIENT_H
#define LWIP_HDR_APPS_HTTP_CLIENT_H
#include "lwip/opt.h"
#include "lwip/ip_addr.h"
#include "lwip/err.h"
#include "lwip/altcp.h"
#include "lwip/prot/iana.h"
#include "lwip/pbuf.h"
#if LWIP_TCP && LWIP_CALLBACK_API
#ifdef __cplusplus
extern "C" {
#endif
/**
* @ingroup httpc
* HTTPC_HAVE_FILE_IO: define this to 1 to have functions dowloading directly
* to disk via fopen/fwrite.
* These functions are example implementations of the interface only.
*/
#ifndef LWIP_HTTPC_HAVE_FILE_IO
#define LWIP_HTTPC_HAVE_FILE_IO 0
#endif
/**
* @ingroup httpc
* The default TCP port used for HTTP
*/
#define HTTP_DEFAULT_PORT LWIP_IANA_PORT_HTTP
/**
* @ingroup httpc
* HTTP client result codes
*/
typedef enum ehttpc_result {
/** File successfully received */
HTTPC_RESULT_OK = 0,
/** Unknown error */
HTTPC_RESULT_ERR_UNKNOWN = 1,
/** Connection to server failed */
HTTPC_RESULT_ERR_CONNECT = 2,
/** Failed to resolve server hostname */
HTTPC_RESULT_ERR_HOSTNAME = 3,
/** Connection unexpectedly closed by remote server */
HTTPC_RESULT_ERR_CLOSED = 4,
/** Connection timed out (server didn't respond in time) */
HTTPC_RESULT_ERR_TIMEOUT = 5,
/** Server responded with an error code */
HTTPC_RESULT_ERR_SVR_RESP = 6,
/** Local memory error */
HTTPC_RESULT_ERR_MEM = 7,
/** Local abort */
HTTPC_RESULT_LOCAL_ABORT = 8,
/** Content length mismatch */
HTTPC_RESULT_ERR_CONTENT_LEN = 9
} httpc_result_t;
typedef struct _httpc_state httpc_state_t;
/**
* @ingroup httpc
* Prototype of a http client callback function
*
* @param arg argument specified when initiating the request
* @param httpc_result result of the http transfer (see enum httpc_result_t)
* @param rx_content_len number of bytes received (without headers)
* @param srv_res this contains the http status code received (if any)
* @param err an error returned by internal lwip functions, can help to specify
* the source of the error but must not necessarily be != ERR_OK
*/
typedef void (*httpc_result_fn)(void *arg, httpc_result_t httpc_result, u32_t rx_content_len, u32_t srv_res, err_t err);
/**
* @ingroup httpc
* Prototype of http client callback: called when the headers are received
*
* @param connection http client connection
* @param arg argument specified when initiating the request
* @param hdr header pbuf(s) (may contain data also)
* @param hdr_len length of the heders in 'hdr'
* @param content_len content length as received in the headers (-1 if not received)
* @return if != ERR_OK is returned, the connection is aborted
*/
typedef err_t (*httpc_headers_done_fn)(httpc_state_t *connection, void *arg, struct pbuf *hdr, u16_t hdr_len, u32_t content_len);
typedef struct _httpc_connection {
ip_addr_t proxy_addr;
u16_t proxy_port;
u8_t use_proxy;
/* @todo: add username:pass? */
#if LWIP_ALTCP
altcp_allocator_t *altcp_allocator;
#endif
/* this callback is called when the transfer is finished (or aborted) */
httpc_result_fn result_fn;
/* this callback is called after receiving the http headers
It can abort the connection by returning != ERR_OK */
httpc_headers_done_fn headers_done_fn;
} httpc_connection_t;
err_t httpc_get_file(const ip_addr_t* server_addr, u16_t port, const char* uri, const httpc_connection_t *settings,
altcp_recv_fn recv_fn, void* callback_arg, httpc_state_t **connection);
err_t httpc_get_file_dns(const char* server_name, u16_t port, const char* uri, const httpc_connection_t *settings,
altcp_recv_fn recv_fn, void* callback_arg, httpc_state_t **connection);
#if LWIP_HTTPC_HAVE_FILE_IO
err_t httpc_get_file_to_disk(const ip_addr_t* server_addr, u16_t port, const char* uri, const httpc_connection_t *settings,
void* callback_arg, const char* local_file_name, httpc_state_t **connection);
err_t httpc_get_file_dns_to_disk(const char* server_name, u16_t port, const char* uri, const httpc_connection_t *settings,
void* callback_arg, const char* local_file_name, httpc_state_t **connection);
#endif /* LWIP_HTTPC_HAVE_FILE_IO */
#ifdef __cplusplus
}
#endif
#endif /* LWIP_TCP && LWIP_CALLBACK_API */
#endif /* LWIP_HDR_APPS_HTTP_CLIENT_H */
@@ -1,255 +0,0 @@
/**
* @file
* HTTP server
*/
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
* This version of the file has been modified by Texas Instruments to offer
* simple server-side-include (SSI) and Common Gateway Interface (CGI)
* capability.
*/
#ifndef LWIP_HDR_APPS_HTTPD_H
#define LWIP_HDR_APPS_HTTPD_H
#include "httpd_opts.h"
#include "lwip/err.h"
#include "lwip/pbuf.h"
#ifdef __cplusplus
extern "C" {
#endif
#if LWIP_HTTPD_CGI
/**
* @ingroup httpd
* Function pointer for a CGI script handler.
*
* This function is called each time the HTTPD server is asked for a file
* whose name was previously registered as a CGI function using a call to
* http_set_cgi_handlers. The iIndex parameter provides the index of the
* CGI within the cgis array passed to http_set_cgi_handlers. Parameters
* pcParam and pcValue provide access to the parameters provided along with
* the URI. iNumParams provides a count of the entries in the pcParam and
* pcValue arrays. Each entry in the pcParam array contains the name of a
* parameter with the corresponding entry in the pcValue array containing the
* value for that parameter. Note that pcParam may contain multiple elements
* with the same name if, for example, a multi-selection list control is used
* in the form generating the data.
*
* The function should return a pointer to a character string which is the
* path and filename of the response that is to be sent to the connected
* browser, for example "/thanks.htm" or "/response/error.ssi".
*
* The maximum number of parameters that will be passed to this function via
* iNumParams is defined by LWIP_HTTPD_MAX_CGI_PARAMETERS. Any parameters in
* the incoming HTTP request above this number will be discarded.
*
* Requests intended for use by this CGI mechanism must be sent using the GET
* method (which encodes all parameters within the URI rather than in a block
* later in the request). Attempts to use the POST method will result in the
* request being ignored.
*
*/
typedef const char *(*tCGIHandler)(int iIndex, int iNumParams, char *pcParam[],
char *pcValue[]);
/**
* @ingroup httpd
* Structure defining the base filename (URL) of a CGI and the associated
* function which is to be called when that URL is requested.
*/
typedef struct
{
const char *pcCGIName;
tCGIHandler pfnCGIHandler;
} tCGI;
void http_set_cgi_handlers(const tCGI *pCGIs, int iNumHandlers);
#endif /* LWIP_HTTPD_CGI */
#if LWIP_HTTPD_CGI || LWIP_HTTPD_CGI_SSI
#if LWIP_HTTPD_CGI_SSI
/* we have to prototype this struct here to make it available for the handler */
struct fs_file;
/** Define this generic CGI handler in your application.
* It is called once for every URI with parameters.
* The parameters can be stored to the object passed as connection_state, which
* is allocated to file->state via fs_state_init() from fs_open() or fs_open_custom().
* Content creation via SSI or complete dynamic files can retrieve the CGI params from there.
*/
extern void httpd_cgi_handler(struct fs_file *file, const char* uri, int iNumParams,
char **pcParam, char **pcValue
#if defined(LWIP_HTTPD_FILE_STATE) && LWIP_HTTPD_FILE_STATE
, void *connection_state
#endif /* LWIP_HTTPD_FILE_STATE */
);
#endif /* LWIP_HTTPD_CGI_SSI */
#endif /* LWIP_HTTPD_CGI || LWIP_HTTPD_CGI_SSI */
#if LWIP_HTTPD_SSI
/**
* @ingroup httpd
* Function pointer for the SSI tag handler callback.
*
* This function will be called each time the HTTPD server detects a tag of the
* form <!--#name--> in files with extensions mentioned in the g_pcSSIExtensions
* array (currently .shtml, .shtm, .ssi, .xml, .json) where "name" appears as
* one of the tags supplied to http_set_ssi_handler in the tags array. The
* returned insert string, which will be appended after the the string
* "<!--#name-->" in file sent back to the client, should be written to pointer
* pcInsert. iInsertLen contains the size of the buffer pointed to by
* pcInsert. The iIndex parameter provides the zero-based index of the tag as
* found in the tags array and identifies the tag that is to be processed.
*
* The handler returns the number of characters written to pcInsert excluding
* any terminating NULL or HTTPD_SSI_TAG_UNKNOWN when tag is not recognized.
*
* Note that the behavior of this SSI mechanism is somewhat different from the
* "normal" SSI processing as found in, for example, the Apache web server. In
* this case, the inserted text is appended following the SSI tag rather than
* replacing the tag entirely. This allows for an implementation that does not
* require significant additional buffering of output data yet which will still
* offer usable SSI functionality. One downside to this approach is when
* attempting to use SSI within JavaScript. The SSI tag is structured to
* resemble an HTML comment but this syntax does not constitute a comment
* within JavaScript and, hence, leaving the tag in place will result in
* problems in these cases. In order to avoid these problems, define
* LWIP_HTTPD_SSI_INCLUDE_TAG as zero in your lwip options file, or use JavaScript
* style block comments in the form / * # name * / (without the spaces).
*/
typedef u16_t (*tSSIHandler)(
#if LWIP_HTTPD_SSI_RAW
const char* ssi_tag_name,
#else /* LWIP_HTTPD_SSI_RAW */
int iIndex,
#endif /* LWIP_HTTPD_SSI_RAW */
char *pcInsert, int iInsertLen
#if LWIP_HTTPD_SSI_MULTIPART
, u16_t current_tag_part, u16_t *next_tag_part
#endif /* LWIP_HTTPD_SSI_MULTIPART */
#if defined(LWIP_HTTPD_FILE_STATE) && LWIP_HTTPD_FILE_STATE
, void *connection_state
#endif /* LWIP_HTTPD_FILE_STATE */
);
/** Set the SSI handler function
* (if LWIP_HTTPD_SSI_RAW==1, only the first argument is used)
*/
void http_set_ssi_handler(tSSIHandler pfnSSIHandler,
const char **ppcTags, int iNumTags);
/** For LWIP_HTTPD_SSI_RAW==1, return this to indicate the tag is unknown.
* In this case, the webserver writes a warning into the page.
* You can also just return 0 to write nothing for unknown tags.
*/
#define HTTPD_SSI_TAG_UNKNOWN 0xFFFF
#endif /* LWIP_HTTPD_SSI */
#if LWIP_HTTPD_SUPPORT_POST
/* These functions must be implemented by the application */
/**
* @ingroup httpd
* Called when a POST request has been received. The application can decide
* whether to accept it or not.
*
* @param connection Unique connection identifier, valid until httpd_post_end
* is called.
* @param uri The HTTP header URI receiving the POST request.
* @param http_request The raw HTTP request (the first packet, normally).
* @param http_request_len Size of 'http_request'.
* @param content_len Content-Length from HTTP header.
* @param response_uri Filename of response file, to be filled when denying the
* request
* @param response_uri_len Size of the 'response_uri' buffer.
* @param post_auto_wnd Set this to 0 to let the callback code handle window
* updates by calling 'httpd_post_data_recved' (to throttle rx speed)
* default is 1 (httpd handles window updates automatically)
* @return ERR_OK: Accept the POST request, data may be passed in
* another err_t: Deny the POST request, send back 'bad request'.
*/
err_t httpd_post_begin(void *connection, const char *uri, const char *http_request,
u16_t http_request_len, int content_len, char *response_uri,
u16_t response_uri_len, u8_t *post_auto_wnd);
/**
* @ingroup httpd
* Called for each pbuf of data that has been received for a POST.
* ATTENTION: The application is responsible for freeing the pbufs passed in!
*
* @param connection Unique connection identifier.
* @param p Received data.
* @return ERR_OK: Data accepted.
* another err_t: Data denied, http_post_get_response_uri will be called.
*/
err_t httpd_post_receive_data(void *connection, struct pbuf *p);
/**
* @ingroup httpd
* Called when all data is received or when the connection is closed.
* The application must return the filename/URI of a file to send in response
* to this POST request. If the response_uri buffer is untouched, a 404
* response is returned.
*
* @param connection Unique connection identifier.
* @param response_uri Filename of response file, to be filled when denying the request
* @param response_uri_len Size of the 'response_uri' buffer.
*/
void httpd_post_finished(void *connection, char *response_uri, u16_t response_uri_len);
#if LWIP_HTTPD_POST_MANUAL_WND
void httpd_post_data_recved(void *connection, u16_t recved_len);
#endif /* LWIP_HTTPD_POST_MANUAL_WND */
#endif /* LWIP_HTTPD_SUPPORT_POST */
void httpd_init(void);
#if HTTPD_ENABLE_HTTPS
struct altcp_tls_config;
void httpd_inits(struct altcp_tls_config *conf);
#endif
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_HTTPD_H */
@@ -1,396 +0,0 @@
/**
* @file
* HTTP server options list
*/
/*
* Copyright (c) 2001-2003 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Adam Dunkels <adam@sics.se>
*
* This version of the file has been modified by Texas Instruments to offer
* simple server-side-include (SSI) and Common Gateway Interface (CGI)
* capability.
*/
#ifndef LWIP_HDR_APPS_HTTPD_OPTS_H
#define LWIP_HDR_APPS_HTTPD_OPTS_H
#include "lwip/opt.h"
#include "lwip/prot/iana.h"
/**
* @defgroup httpd_opts Options
* @ingroup httpd
* @{
*/
/** Set this to 1 to support CGI (old style).
*
* This old style CGI support works by registering an array of URLs and
* associated CGI handler functions (@ref http_set_cgi_handlers).
* This list is scanned just before fs_open is called from request handling.
* The handler can return a new URL that is used internally by the httpd to
* load the returned page (passed to fs_open).
*
* Use this CGI type e.g. to execute specific actions and return a page that
* does not depend on the CGI parameters.
*/
#if !defined LWIP_HTTPD_CGI || defined __DOXYGEN__
#define LWIP_HTTPD_CGI 0
#endif
/** Set this to 1 to support CGI (new style).
*
* This new style CGI support works by calling a global function
* (@ref tCGIHandler) for all URLs that are found. fs_open is called first
* and the URL can not be written by the CGI handler. Instead, this handler gets
* passed the http file state, an object where it can store information derived
* from the CGI URL or parameters. This file state is later passed to SSI, so
* the SSI code can return data depending on CGI input.
*
* Use this CGI handler if you want CGI information passed on to SSI.
*/
#if !defined LWIP_HTTPD_CGI_SSI || defined __DOXYGEN__
#define LWIP_HTTPD_CGI_SSI 0
#endif
/** Set this to 1 to support SSI (Server-Side-Includes)
*
* In contrast to other http servers, this only calls a preregistered callback
* function (@see http_set_ssi_handler) for each tag (in the format of
* <!--#tag-->) encountered in SSI-enabled pages.
* SSI-enabled pages must have one of the predefined SSI-enabled file extensions.
* All files with one of these extensions are parsed when sent.
*
* A downside of the current SSI implementation is that persistent connections
* don't work, as the file length is not known in advance (and httpd currently
* relies on the Content-Length header for persistent connections).
*
* To save memory, the maximum tag length is limited (@see LWIP_HTTPD_MAX_TAG_NAME_LEN).
* To save memory, the maximum insertion string length is limited (@see
* LWIP_HTTPD_MAX_TAG_INSERT_LEN). If this is not enough, @ref LWIP_HTTPD_SSI_MULTIPART
* can be used.
*/
#if !defined LWIP_HTTPD_SSI || defined __DOXYGEN__
#define LWIP_HTTPD_SSI 0
#endif
/** Set this to 1 to implement an SSI tag handler callback that gets a const char*
* to the tag (instead of an index into a pre-registered array of known tags)
* If this is 0, the SSI handler callback function is only called pre-registered tags.
*/
#if !defined LWIP_HTTPD_SSI_RAW || defined __DOXYGEN__
#define LWIP_HTTPD_SSI_RAW 0
#endif
/** Set this to 0 to prevent parsing the file extension at runtime to decide
* if a file should be scanned for SSI tags or not.
* Default is 1 (file extensions are checked using the g_pcSSIExtensions array)
* Set to 2 to override this runtime test function.
*
* This is enabled by default, but if you only use a newer version of makefsdata
* supporting the "-ssi" option, this info is already present in
*/
#if !defined LWIP_HTTPD_SSI_BY_FILE_EXTENSION || defined __DOXYGEN__
#define LWIP_HTTPD_SSI_BY_FILE_EXTENSION 1
#endif
/** Set this to 1 to support HTTP POST */
#if !defined LWIP_HTTPD_SUPPORT_POST || defined __DOXYGEN__
#define LWIP_HTTPD_SUPPORT_POST 0
#endif
/* The maximum number of parameters that the CGI handler can be sent. */
#if !defined LWIP_HTTPD_MAX_CGI_PARAMETERS || defined __DOXYGEN__
#define LWIP_HTTPD_MAX_CGI_PARAMETERS 16
#endif
/** LWIP_HTTPD_SSI_MULTIPART==1: SSI handler function is called with 2 more
* arguments indicating a counter for insert string that are too long to be
* inserted at once: the SSI handler function must then set 'next_tag_part'
* which will be passed back to it in the next call. */
#if !defined LWIP_HTTPD_SSI_MULTIPART || defined __DOXYGEN__
#define LWIP_HTTPD_SSI_MULTIPART 0
#endif
/* The maximum length of the string comprising the SSI tag name
* ATTENTION: tags longer than this are ignored, not truncated!
*/
#if !defined LWIP_HTTPD_MAX_TAG_NAME_LEN || defined __DOXYGEN__
#define LWIP_HTTPD_MAX_TAG_NAME_LEN 8
#endif
/* The maximum length of string that can be returned to replace any given tag
* If this buffer is not long enough, use LWIP_HTTPD_SSI_MULTIPART.
*/
#if !defined LWIP_HTTPD_MAX_TAG_INSERT_LEN || defined __DOXYGEN__
#define LWIP_HTTPD_MAX_TAG_INSERT_LEN 192
#endif
#if !defined LWIP_HTTPD_POST_MANUAL_WND || defined __DOXYGEN__
#define LWIP_HTTPD_POST_MANUAL_WND 0
#endif
/** This string is passed in the HTTP header as "Server: " */
#if !defined HTTPD_SERVER_AGENT || defined __DOXYGEN__
#define HTTPD_SERVER_AGENT "lwIP/" LWIP_VERSION_STRING " (http://savannah.nongnu.org/projects/lwip)"
#endif
/** Set this to 1 if you want to include code that creates HTTP headers
* at runtime. Default is off: HTTP headers are then created statically
* by the makefsdata tool. Static headers mean smaller code size, but
* the (readonly) fsdata will grow a bit as every file includes the HTTP
* header. */
#if !defined LWIP_HTTPD_DYNAMIC_HEADERS || defined __DOXYGEN__
#define LWIP_HTTPD_DYNAMIC_HEADERS 0
#endif
#if !defined HTTPD_DEBUG || defined __DOXYGEN__
#define HTTPD_DEBUG LWIP_DBG_OFF
#endif
/** Set this to 1 to use a memp pool for allocating
* struct http_state instead of the heap.
* If enabled, you'll need to define MEMP_NUM_PARALLEL_HTTPD_CONNS
* (and MEMP_NUM_PARALLEL_HTTPD_SSI_CONNS for SSI) to set the size of
* the pool(s).
*/
#if !defined HTTPD_USE_MEM_POOL || defined __DOXYGEN__
#define HTTPD_USE_MEM_POOL 0
#endif
/** The server port for HTTPD to use */
#if !defined HTTPD_SERVER_PORT || defined __DOXYGEN__
#define HTTPD_SERVER_PORT LWIP_IANA_PORT_HTTP
#endif
/** The https server port for HTTPD to use */
#if !defined HTTPD_SERVER_PORT_HTTPS || defined __DOXYGEN__
#define HTTPD_SERVER_PORT_HTTPS LWIP_IANA_PORT_HTTPS
#endif
/** Enable https support? */
#if !defined HTTPD_ENABLE_HTTPS || defined __DOXYGEN__
#define HTTPD_ENABLE_HTTPS 0
#endif
/** Maximum retries before the connection is aborted/closed.
* - number of times pcb->poll is called -> default is 4*500ms = 2s;
* - reset when pcb->sent is called
*/
#if !defined HTTPD_MAX_RETRIES || defined __DOXYGEN__
#define HTTPD_MAX_RETRIES 4
#endif
/** The poll delay is X*500ms */
#if !defined HTTPD_POLL_INTERVAL || defined __DOXYGEN__
#define HTTPD_POLL_INTERVAL 4
#endif
/** Priority for tcp pcbs created by HTTPD (very low by default).
* Lower priorities get killed first when running out of memory.
*/
#if !defined HTTPD_TCP_PRIO || defined __DOXYGEN__
#define HTTPD_TCP_PRIO TCP_PRIO_MIN
#endif
/** Set this to 1 to enable timing each file sent */
#if !defined LWIP_HTTPD_TIMING || defined __DOXYGEN__
#define LWIP_HTTPD_TIMING 0
#endif
/** Set this to 1 to enable timing each file sent */
#if !defined HTTPD_DEBUG_TIMING || defined __DOXYGEN__
#define HTTPD_DEBUG_TIMING LWIP_DBG_OFF
#endif
/** Set this to one to show error pages when parsing a request fails instead
of simply closing the connection. */
#if !defined LWIP_HTTPD_SUPPORT_EXTSTATUS || defined __DOXYGEN__
#define LWIP_HTTPD_SUPPORT_EXTSTATUS 0
#endif
/** Set this to 0 to drop support for HTTP/0.9 clients (to save some bytes) */
#if !defined LWIP_HTTPD_SUPPORT_V09 || defined __DOXYGEN__
#define LWIP_HTTPD_SUPPORT_V09 1
#endif
/** Set this to 1 to enable HTTP/1.1 persistent connections.
* ATTENTION: If the generated file system includes HTTP headers, these must
* include the "Connection: keep-alive" header (pass argument "-11" to makefsdata).
*/
#if !defined LWIP_HTTPD_SUPPORT_11_KEEPALIVE || defined __DOXYGEN__
#define LWIP_HTTPD_SUPPORT_11_KEEPALIVE 0
#endif
/** Set this to 1 to support HTTP request coming in in multiple packets/pbufs */
#if !defined LWIP_HTTPD_SUPPORT_REQUESTLIST || defined __DOXYGEN__
#define LWIP_HTTPD_SUPPORT_REQUESTLIST 1
#endif
#if LWIP_HTTPD_SUPPORT_REQUESTLIST
/** Number of rx pbufs to enqueue to parse an incoming request (up to the first
newline) */
#if !defined LWIP_HTTPD_REQ_QUEUELEN || defined __DOXYGEN__
#define LWIP_HTTPD_REQ_QUEUELEN 5
#endif
/** Number of (TCP payload-) bytes (in pbufs) to enqueue to parse and incoming
request (up to the first double-newline) */
#if !defined LWIP_HTTPD_REQ_BUFSIZE || defined __DOXYGEN__
#define LWIP_HTTPD_REQ_BUFSIZE LWIP_HTTPD_MAX_REQ_LENGTH
#endif
/** Defines the maximum length of a HTTP request line (up to the first CRLF,
copied from pbuf into this a global buffer when pbuf- or packet-queues
are received - otherwise the input pbuf is used directly) */
#if !defined LWIP_HTTPD_MAX_REQ_LENGTH || defined __DOXYGEN__
#define LWIP_HTTPD_MAX_REQ_LENGTH LWIP_MIN(1023, (LWIP_HTTPD_REQ_QUEUELEN * PBUF_POOL_BUFSIZE))
#endif
#endif /* LWIP_HTTPD_SUPPORT_REQUESTLIST */
/** This is the size of a static buffer used when URIs end with '/'.
* In this buffer, the directory requested is concatenated with all the
* configured default file names.
* Set to 0 to disable checking default filenames on non-root directories.
*/
#if !defined LWIP_HTTPD_MAX_REQUEST_URI_LEN || defined __DOXYGEN__
#define LWIP_HTTPD_MAX_REQUEST_URI_LEN 63
#endif
/** Maximum length of the filename to send as response to a POST request,
* filled in by the application when a POST is finished.
*/
#if !defined LWIP_HTTPD_POST_MAX_RESPONSE_URI_LEN || defined __DOXYGEN__
#define LWIP_HTTPD_POST_MAX_RESPONSE_URI_LEN 63
#endif
/** Set this to 0 to not send the SSI tag (default is on, so the tag will
* be sent in the HTML page */
#if !defined LWIP_HTTPD_SSI_INCLUDE_TAG || defined __DOXYGEN__
#define LWIP_HTTPD_SSI_INCLUDE_TAG 1
#endif
/** Set this to 1 to call tcp_abort when tcp_close fails with memory error.
* This can be used to prevent consuming all memory in situations where the
* HTTP server has low priority compared to other communication. */
#if !defined LWIP_HTTPD_ABORT_ON_CLOSE_MEM_ERROR || defined __DOXYGEN__
#define LWIP_HTTPD_ABORT_ON_CLOSE_MEM_ERROR 0
#endif
/** Set this to 1 to kill the oldest connection when running out of
* memory for 'struct http_state' or 'struct http_ssi_state'.
* ATTENTION: This puts all connections on a linked list, so may be kind of slow.
*/
#if !defined LWIP_HTTPD_KILL_OLD_ON_CONNECTIONS_EXCEEDED || defined __DOXYGEN__
#define LWIP_HTTPD_KILL_OLD_ON_CONNECTIONS_EXCEEDED 0
#endif
/** Set this to 1 to send URIs without extension without headers
* (who uses this at all??) */
#if !defined LWIP_HTTPD_OMIT_HEADER_FOR_EXTENSIONLESS_URI || defined __DOXYGEN__
#define LWIP_HTTPD_OMIT_HEADER_FOR_EXTENSIONLESS_URI 0
#endif
/** Default: Tags are sent from struct http_state and are therefore volatile */
#if !defined HTTP_IS_TAG_VOLATILE || defined __DOXYGEN__
#define HTTP_IS_TAG_VOLATILE(ptr) TCP_WRITE_FLAG_COPY
#endif
/* By default, the httpd is limited to send 2*pcb->mss to keep resource usage low
when http is not an important protocol in the device. */
#if !defined HTTPD_LIMIT_SENDING_TO_2MSS || defined __DOXYGEN__
#define HTTPD_LIMIT_SENDING_TO_2MSS 1
#endif
/* Define this to a function that returns the maximum amount of data to enqueue.
The function have this signature: u16_t fn(struct altcp_pcb* pcb);
The best place to define this is the hooks file (@see LWIP_HOOK_FILENAME) */
#if !defined HTTPD_MAX_WRITE_LEN || defined __DOXYGEN__
#if HTTPD_LIMIT_SENDING_TO_2MSS
#define HTTPD_MAX_WRITE_LEN(pcb) ((u16_t)(2 * altcp_mss(pcb)))
#endif
#endif
/*------------------- FS OPTIONS -------------------*/
/** Set this to 1 and provide the functions:
* - "int fs_open_custom(struct fs_file *file, const char *name)"
* Called first for every opened file to allow opening files
* that are not included in fsdata(_custom).c
* - "void fs_close_custom(struct fs_file *file)"
* Called to free resources allocated by fs_open_custom().
*/
#if !defined LWIP_HTTPD_CUSTOM_FILES || defined __DOXYGEN__
#define LWIP_HTTPD_CUSTOM_FILES 0
#endif
/** Set this to 1 to support fs_read() to dynamically read file data.
* Without this (default=off), only one-block files are supported,
* and the contents must be ready after fs_open().
*/
#if !defined LWIP_HTTPD_DYNAMIC_FILE_READ || defined __DOXYGEN__
#define LWIP_HTTPD_DYNAMIC_FILE_READ 0
#endif
/** Set this to 1 to include an application state argument per file
* that is opened. This allows to keep a state per connection/file.
*/
#if !defined LWIP_HTTPD_FILE_STATE || defined __DOXYGEN__
#define LWIP_HTTPD_FILE_STATE 0
#endif
/** HTTPD_PRECALCULATED_CHECKSUM==1: include precompiled checksums for
* predefined (MSS-sized) chunks of the files to prevent having to calculate
* the checksums at runtime. */
#if !defined HTTPD_PRECALCULATED_CHECKSUM || defined __DOXYGEN__
#define HTTPD_PRECALCULATED_CHECKSUM 0
#endif
/** LWIP_HTTPD_FS_ASYNC_READ==1: support asynchronous read operations
* (fs_read_async returns FS_READ_DELAYED and calls a callback when finished).
*/
#if !defined LWIP_HTTPD_FS_ASYNC_READ || defined __DOXYGEN__
#define LWIP_HTTPD_FS_ASYNC_READ 0
#endif
/** Filename (including path) to use as FS data file */
#if !defined HTTPD_FSDATA_FILE || defined __DOXYGEN__
/* HTTPD_USE_CUSTOM_FSDATA: Compatibility with deprecated lwIP option */
#if defined(HTTPD_USE_CUSTOM_FSDATA) && (HTTPD_USE_CUSTOM_FSDATA != 0)
#define HTTPD_FSDATA_FILE "fsdata_custom.c"
#else
#define HTTPD_FSDATA_FILE "fsdata.c"
#endif
#endif
/**
* @}
*/
#endif /* LWIP_HDR_APPS_HTTPD_OPTS_H */
@@ -1,100 +0,0 @@
/**
* @file
* lwIP iPerf server implementation
*/
/*
* Copyright (c) 2014 Simon Goldschmidt
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Simon Goldschmidt
*
*/
#ifndef LWIP_HDR_APPS_LWIPERF_H
#define LWIP_HDR_APPS_LWIPERF_H
#include "lwip/opt.h"
#include "lwip/ip_addr.h"
#ifdef __cplusplus
extern "C" {
#endif
#define LWIPERF_TCP_PORT_DEFAULT 5001
/** lwIPerf test results */
enum lwiperf_report_type
{
/** The server side test is done */
LWIPERF_TCP_DONE_SERVER,
/** The client side test is done */
LWIPERF_TCP_DONE_CLIENT,
/** Local error lead to test abort */
LWIPERF_TCP_ABORTED_LOCAL,
/** Data check error lead to test abort */
LWIPERF_TCP_ABORTED_LOCAL_DATAERROR,
/** Transmit error lead to test abort */
LWIPERF_TCP_ABORTED_LOCAL_TXERROR,
/** Remote side aborted the test */
LWIPERF_TCP_ABORTED_REMOTE
};
/** Control */
enum lwiperf_client_type
{
/** Unidirectional tx only test */
LWIPERF_CLIENT,
/** Do a bidirectional test simultaneously */
LWIPERF_DUAL,
/** Do a bidirectional test individually */
LWIPERF_TRADEOFF
};
/** Prototype of a report function that is called when a session is finished.
This report function can show the test results.
@param report_type contains the test result */
typedef void (*lwiperf_report_fn)(void *arg, enum lwiperf_report_type report_type,
const ip_addr_t* local_addr, u16_t local_port, const ip_addr_t* remote_addr, u16_t remote_port,
u32_t bytes_transferred, u32_t ms_duration, u32_t bandwidth_kbitpsec);
void* lwiperf_start_tcp_server(const ip_addr_t* local_addr, u16_t local_port,
lwiperf_report_fn report_fn, void* report_arg);
void* lwiperf_start_tcp_server_default(lwiperf_report_fn report_fn, void* report_arg);
void* lwiperf_start_tcp_client(const ip_addr_t* remote_addr, u16_t remote_port,
enum lwiperf_client_type type,
lwiperf_report_fn report_fn, void* report_arg);
void* lwiperf_start_tcp_client_default(const ip_addr_t* remote_addr,
lwiperf_report_fn report_fn, void* report_arg);
void lwiperf_abort(void* lwiperf_session);
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_LWIPERF_H */
@@ -1,105 +0,0 @@
/**
* @file
* MDNS responder
*/
/*
* Copyright (c) 2015 Verisure Innovation AB
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Erik Ekman <erik@kryo.se>
*
*/
#ifndef LWIP_HDR_APPS_MDNS_H
#define LWIP_HDR_APPS_MDNS_H
#include "lwip/apps/mdns_opts.h"
#include "lwip/netif.h"
#ifdef __cplusplus
extern "C" {
#endif
#if LWIP_MDNS_RESPONDER
enum mdns_sd_proto {
DNSSD_PROTO_UDP = 0,
DNSSD_PROTO_TCP = 1
};
#define MDNS_PROBING_CONFLICT 0
#define MDNS_PROBING_SUCCESSFUL 1
#define MDNS_LABEL_MAXLEN 63
struct mdns_host;
struct mdns_service;
/** Callback function to add text to a reply, called when generating the reply */
typedef void (*service_get_txt_fn_t)(struct mdns_service *service, void *txt_userdata);
/** Callback function to let application know the result of probing network for name
* uniqueness, called with result MDNS_PROBING_SUCCESSFUL if no other node claimed
* use for the name for the netif or a service and is safe to use, or MDNS_PROBING_CONFLICT
* if another node is already using it and mdns is disabled on this interface */
typedef void (*mdns_name_result_cb_t)(struct netif* netif, u8_t result);
void mdns_resp_init(void);
void mdns_resp_register_name_result_cb(mdns_name_result_cb_t cb);
err_t mdns_resp_add_netif(struct netif *netif, const char *hostname, u32_t dns_ttl);
err_t mdns_resp_remove_netif(struct netif *netif);
err_t mdns_resp_rename_netif(struct netif *netif, const char *hostname);
s8_t mdns_resp_add_service(struct netif *netif, const char *name, const char *service, enum mdns_sd_proto proto, u16_t port, u32_t dns_ttl, service_get_txt_fn_t txt_fn, void *txt_userdata);
err_t mdns_resp_del_service(struct netif *netif, s8_t slot);
err_t mdns_resp_rename_service(struct netif *netif, s8_t slot, const char *name);
err_t mdns_resp_add_service_txtitem(struct mdns_service *service, const char *txt, u8_t txt_len);
void mdns_resp_restart(struct netif *netif);
void mdns_resp_announce(struct netif *netif);
/**
* @ingroup mdns
* Announce IP settings have changed on netif.
* Call this in your callback registered by netif_set_status_callback().
* No need to call this function when LWIP_NETIF_EXT_STATUS_CALLBACK==1,
* this handled automatically for you.
* @param netif The network interface where settings have changed.
*/
#define mdns_resp_netif_settings_changed(netif) mdns_resp_announce(netif)
#endif /* LWIP_MDNS_RESPONDER */
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_MDNS_H */
@@ -1,80 +0,0 @@
/**
* @file
* MDNS responder
*/
/*
* Copyright (c) 2015 Verisure Innovation AB
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Erik Ekman <erik@kryo.se>
*
*/
#ifndef LWIP_HDR_APPS_MDNS_OPTS_H
#define LWIP_HDR_APPS_MDNS_OPTS_H
#include "lwip/opt.h"
/**
* @defgroup mdns_opts Options
* @ingroup mdns
* @{
*/
/**
* LWIP_MDNS_RESPONDER==1: Turn on multicast DNS module. UDP must be available for MDNS
* transport. IGMP is needed for IPv4 multicast.
*/
#ifndef LWIP_MDNS_RESPONDER
#define LWIP_MDNS_RESPONDER 0
#endif /* LWIP_MDNS_RESPONDER */
/** The maximum number of services per netif */
#ifndef MDNS_MAX_SERVICES
#define MDNS_MAX_SERVICES 1
#endif
/** MDNS_RESP_USENETIF_EXTCALLBACK==1: register an ext_callback on the netif
* to automatically restart probing/announcing on status or address change.
*/
#ifndef MDNS_RESP_USENETIF_EXTCALLBACK
#define MDNS_RESP_USENETIF_EXTCALLBACK LWIP_NETIF_EXT_STATUS_CALLBACK
#endif
/**
* MDNS_DEBUG: Enable debugging for multicast DNS.
*/
#ifndef MDNS_DEBUG
#define MDNS_DEBUG LWIP_DBG_OFF
#endif
/**
* @}
*/
#endif /* LWIP_HDR_APPS_MDNS_OPTS_H */
@@ -1,74 +0,0 @@
/**
* @file
* MDNS responder private definitions
*/
/*
* Copyright (c) 2015 Verisure Innovation AB
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Erik Ekman <erik@kryo.se>
*
*/
#ifndef LWIP_HDR_MDNS_PRIV_H
#define LWIP_HDR_MDNS_PRIV_H
#include "lwip/apps/mdns_opts.h"
#include "lwip/pbuf.h"
#ifdef __cplusplus
extern "C" {
#endif
#if LWIP_MDNS_RESPONDER
/* Domain struct and methods - visible for unit tests */
#define MDNS_DOMAIN_MAXLEN 256
#define MDNS_READNAME_ERROR 0xFFFF
struct mdns_domain {
/* Encoded domain name */
u8_t name[MDNS_DOMAIN_MAXLEN];
/* Total length of domain name, including zero */
u16_t length;
/* Set if compression of this domain is not allowed */
u8_t skip_compression;
};
err_t mdns_domain_add_label(struct mdns_domain *domain, const char *label, u8_t len);
u16_t mdns_readname(struct pbuf *p, u16_t offset, struct mdns_domain *domain);
int mdns_domain_eq(struct mdns_domain *a, struct mdns_domain *b);
u16_t mdns_compress_domain(struct pbuf *pbuf, u16_t *offset, struct mdns_domain *domain);
#endif /* LWIP_MDNS_RESPONDER */
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_MDNS_PRIV_H */
@@ -1,205 +0,0 @@
/**
* @file
* MQTT client
*/
/*
* Copyright (c) 2016 Erik Andersson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Erik Andersson
*
*/
#ifndef LWIP_HDR_APPS_MQTT_CLIENT_H
#define LWIP_HDR_APPS_MQTT_CLIENT_H
#include "lwip/apps/mqtt_opts.h"
#include "lwip/err.h"
#include "lwip/ip_addr.h"
#include "lwip/prot/iana.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct mqtt_client_s mqtt_client_t;
#if LWIP_ALTCP && LWIP_ALTCP_TLS
struct altcp_tls_config;
#endif
/** @ingroup mqtt
* Default MQTT port (non-TLS) */
#define MQTT_PORT LWIP_IANA_PORT_MQTT
/** @ingroup mqtt
* Default MQTT TLS port */
#define MQTT_TLS_PORT LWIP_IANA_PORT_SECURE_MQTT
/*---------------------------------------------------------------------------------------------- */
/* Connection with server */
/**
* @ingroup mqtt
* Client information and connection parameters */
struct mqtt_connect_client_info_t {
/** Client identifier, must be set by caller */
const char *client_id;
/** User name, set to NULL if not used */
const char* client_user;
/** Password, set to NULL if not used */
const char* client_pass;
/** keep alive time in seconds, 0 to disable keep alive functionality*/
u16_t keep_alive;
/** will topic, set to NULL if will is not to be used,
will_msg, will_qos and will retain are then ignored */
const char* will_topic;
/** will_msg, see will_topic */
const char* will_msg;
/** will_qos, see will_topic */
u8_t will_qos;
/** will_retain, see will_topic */
u8_t will_retain;
#if LWIP_ALTCP && LWIP_ALTCP_TLS
/** TLS configuration for secure connections */
struct altcp_tls_config *tls_config;
#endif
};
/**
* @ingroup mqtt
* Connection status codes */
typedef enum
{
/** Accepted */
MQTT_CONNECT_ACCEPTED = 0,
/** Refused protocol version */
MQTT_CONNECT_REFUSED_PROTOCOL_VERSION = 1,
/** Refused identifier */
MQTT_CONNECT_REFUSED_IDENTIFIER = 2,
/** Refused server */
MQTT_CONNECT_REFUSED_SERVER = 3,
/** Refused user credentials */
MQTT_CONNECT_REFUSED_USERNAME_PASS = 4,
/** Refused not authorized */
MQTT_CONNECT_REFUSED_NOT_AUTHORIZED_ = 5,
/** Disconnected */
MQTT_CONNECT_DISCONNECTED = 256,
/** Timeout */
MQTT_CONNECT_TIMEOUT = 257
} mqtt_connection_status_t;
/**
* @ingroup mqtt
* Function prototype for mqtt connection status callback. Called when
* client has connected to the server after initiating a mqtt connection attempt by
* calling mqtt_client_connect() or when connection is closed by server or an error
*
* @param client MQTT client itself
* @param arg Additional argument to pass to the callback function
* @param status Connect result code or disconnection notification @see mqtt_connection_status_t
*
*/
typedef void (*mqtt_connection_cb_t)(mqtt_client_t *client, void *arg, mqtt_connection_status_t status);
/**
* @ingroup mqtt
* Data callback flags */
enum {
/** Flag set when last fragment of data arrives in data callback */
MQTT_DATA_FLAG_LAST = 1
};
/**
* @ingroup mqtt
* Function prototype for MQTT incoming publish data callback function. Called when data
* arrives to a subscribed topic @see mqtt_subscribe
*
* @param arg Additional argument to pass to the callback function
* @param data User data, pointed object, data may not be referenced after callback return,
NULL is passed when all publish data are delivered
* @param len Length of publish data fragment
* @param flags MQTT_DATA_FLAG_LAST set when this call contains the last part of data from publish message
*
*/
typedef void (*mqtt_incoming_data_cb_t)(void *arg, const u8_t *data, u16_t len, u8_t flags);
/**
* @ingroup mqtt
* Function prototype for MQTT incoming publish function. Called when an incoming publish
* arrives to a subscribed topic @see mqtt_subscribe
*
* @param arg Additional argument to pass to the callback function
* @param topic Zero terminated Topic text string, topic may not be referenced after callback return
* @param tot_len Total length of publish data, if set to 0 (no publish payload) data callback will not be invoked
*/
typedef void (*mqtt_incoming_publish_cb_t)(void *arg, const char *topic, u32_t tot_len);
/**
* @ingroup mqtt
* Function prototype for mqtt request callback. Called when a subscribe, unsubscribe
* or publish request has completed
* @param arg Pointer to user data supplied when invoking request
* @param err ERR_OK on success
* ERR_TIMEOUT if no response was received within timeout,
* ERR_ABRT if (un)subscribe was denied
*/
typedef void (*mqtt_request_cb_t)(void *arg, err_t err);
err_t mqtt_client_connect(mqtt_client_t *client, const ip_addr_t *ipaddr, u16_t port, mqtt_connection_cb_t cb, void *arg,
const struct mqtt_connect_client_info_t *client_info);
void mqtt_disconnect(mqtt_client_t *client);
mqtt_client_t *mqtt_client_new(void);
void mqtt_client_free(mqtt_client_t* client);
u8_t mqtt_client_is_connected(mqtt_client_t *client);
void mqtt_set_inpub_callback(mqtt_client_t *client, mqtt_incoming_publish_cb_t,
mqtt_incoming_data_cb_t data_cb, void *arg);
err_t mqtt_sub_unsub(mqtt_client_t *client, const char *topic, u8_t qos, mqtt_request_cb_t cb, void *arg, u8_t sub);
/** @ingroup mqtt
*Subscribe to topic */
#define mqtt_subscribe(client, topic, qos, cb, arg) mqtt_sub_unsub(client, topic, qos, cb, arg, 1)
/** @ingroup mqtt
* Unsubscribe to topic */
#define mqtt_unsubscribe(client, topic, cb, arg) mqtt_sub_unsub(client, topic, 0, cb, arg, 0)
err_t mqtt_publish(mqtt_client_t *client, const char *topic, const void *payload, u16_t payload_length, u8_t qos, u8_t retain,
mqtt_request_cb_t cb, void *arg);
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_MQTT_CLIENT_H */
@@ -1,103 +0,0 @@
/**
* @file
* MQTT client options
*/
/*
* Copyright (c) 2016 Erik Andersson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Erik Andersson
*
*/
#ifndef LWIP_HDR_APPS_MQTT_OPTS_H
#define LWIP_HDR_APPS_MQTT_OPTS_H
#include "lwip/opt.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @defgroup mqtt_opts Options
* @ingroup mqtt
* @{
*/
/**
* Output ring-buffer size, must be able to fit largest outgoing publish message topic+payloads
*/
#ifndef MQTT_OUTPUT_RINGBUF_SIZE
#define MQTT_OUTPUT_RINGBUF_SIZE 256
#endif
/**
* Number of bytes in receive buffer, must be at least the size of the longest incoming topic + 8
* If one wants to avoid fragmented incoming publish, set length to max incoming topic length + max payload length + 8
*/
#ifndef MQTT_VAR_HEADER_BUFFER_LEN
#define MQTT_VAR_HEADER_BUFFER_LEN 128
#endif
/**
* Maximum number of pending subscribe, unsubscribe and publish requests to server .
*/
#ifndef MQTT_REQ_MAX_IN_FLIGHT
#define MQTT_REQ_MAX_IN_FLIGHT 4
#endif
/**
* Seconds between each cyclic timer call.
*/
#ifndef MQTT_CYCLIC_TIMER_INTERVAL
#define MQTT_CYCLIC_TIMER_INTERVAL 5
#endif
/**
* Publish, subscribe and unsubscribe request timeout in seconds.
*/
#ifndef MQTT_REQ_TIMEOUT
#define MQTT_REQ_TIMEOUT 30
#endif
/**
* Seconds for MQTT connect response timeout after sending connect request
*/
#ifndef MQTT_CONNECT_TIMOUT
#define MQTT_CONNECT_TIMOUT 100
#endif
/**
* @}
*/
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_MQTT_OPTS_H */
@@ -1,104 +0,0 @@
/**
* @file
* MQTT client (private interface)
*/
/*
* Copyright (c) 2016 Erik Andersson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Erik Andersson
*
*/
#ifndef LWIP_HDR_APPS_MQTT_PRIV_H
#define LWIP_HDR_APPS_MQTT_PRIV_H
#include "lwip/apps/mqtt.h"
#include "lwip/altcp.h"
#ifdef __cplusplus
extern "C" {
#endif
/** Pending request item, binds application callback to pending server requests */
struct mqtt_request_t
{
/** Next item in list, NULL means this is the last in chain,
next pointing at itself means request is unallocated */
struct mqtt_request_t *next;
/** Callback to upper layer */
mqtt_request_cb_t cb;
void *arg;
/** MQTT packet identifier */
u16_t pkt_id;
/** Expire time relative to element before this */
u16_t timeout_diff;
};
/** Ring buffer */
struct mqtt_ringbuf_t {
u16_t put;
u16_t get;
u8_t buf[MQTT_OUTPUT_RINGBUF_SIZE];
};
/** MQTT client */
struct mqtt_client_s
{
/** Timers and timeouts */
u16_t cyclic_tick;
u16_t keep_alive;
u16_t server_watchdog;
/** Packet identifier generator*/
u16_t pkt_id_seq;
/** Packet identifier of pending incoming publish */
u16_t inpub_pkt_id;
/** Connection state */
u8_t conn_state;
struct altcp_pcb *conn;
/** Connection callback */
void *connect_arg;
mqtt_connection_cb_t connect_cb;
/** Pending requests to server */
struct mqtt_request_t *pend_req_queue;
struct mqtt_request_t req_list[MQTT_REQ_MAX_IN_FLIGHT];
void *inpub_arg;
/** Incoming data callback */
mqtt_incoming_data_cb_t data_cb;
mqtt_incoming_publish_cb_t pub_cb;
/** Input */
u32_t msg_idx;
u8_t rx_buffer[MQTT_VAR_HEADER_BUFFER_LEN];
/** Output ring-buffer */
struct mqtt_ringbuf_t output;
};
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_MQTT_PRIV_H */
@@ -1,51 +0,0 @@
/**
* @file
* NETBIOS name service responder
*/
/*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
*/
#ifndef LWIP_HDR_APPS_NETBIOS_H
#define LWIP_HDR_APPS_NETBIOS_H
#include "lwip/apps/netbiosns_opts.h"
#ifdef __cplusplus
extern "C" {
#endif
void netbiosns_init(void);
#ifndef NETBIOS_LWIP_NAME
void netbiosns_set_name(const char* hostname);
#endif
void netbiosns_stop(void);
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_NETBIOS_H */
@@ -1,66 +0,0 @@
/**
* @file
* NETBIOS name service responder options
*/
/*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
*/
#ifndef LWIP_HDR_APPS_NETBIOS_OPTS_H
#define LWIP_HDR_APPS_NETBIOS_OPTS_H
#include "lwip/opt.h"
/**
* @defgroup netbiosns_opts Options
* @ingroup netbiosns
* @{
*/
/** NetBIOS name of lwip device
* This must be uppercase until NETBIOS_STRCMP() is defined to a string
* comparison function that is case insensitive.
* If you want to use the netif's hostname, use this (with LWIP_NETIF_HOSTNAME):
* (ip_current_netif() != NULL ? ip_current_netif()->hostname != NULL ? ip_current_netif()->hostname : "" : "")
*
* If this is not defined, netbiosns_set_name() can be called at runtime to change the name.
*/
#ifdef __DOXYGEN__
#define NETBIOS_LWIP_NAME "NETBIOSLWIPDEV"
#endif
/** Respond to NetBIOS name queries
* Default is disabled
*/
#if !defined LWIP_NETBIOS_RESPOND_NAME_QUERY || defined __DOXYGEN__
#define LWIP_NETBIOS_RESPOND_NAME_QUERY 0
#endif
/**
* @}
*/
#endif /* LWIP_HDR_APPS_NETBIOS_OPTS_H */
@@ -1,128 +0,0 @@
#ifndef LWIP_HDR_APPS_SMTP_H
#define LWIP_HDR_APPS_SMTP_H
#ifdef __cplusplus
extern "C" {
#endif
#include "lwip/apps/smtp_opts.h"
#include "lwip/err.h"
#include "lwip/prot/iana.h"
/** The default TCP port used for SMTP */
#define SMTP_DEFAULT_PORT LWIP_IANA_PORT_SMTP
/** The default TCP port used for SMTPS */
#define SMTPS_DEFAULT_PORT LWIP_IANA_PORT_SMTPS
/** Email successfully sent */
#define SMTP_RESULT_OK 0
/** Unknown error */
#define SMTP_RESULT_ERR_UNKNOWN 1
/** Connection to server failed */
#define SMTP_RESULT_ERR_CONNECT 2
/** Failed to resolve server hostname */
#define SMTP_RESULT_ERR_HOSTNAME 3
/** Connection unexpectedly closed by remote server */
#define SMTP_RESULT_ERR_CLOSED 4
/** Connection timed out (server didn't respond in time) */
#define SMTP_RESULT_ERR_TIMEOUT 5
/** Server responded with an unknown response code */
#define SMTP_RESULT_ERR_SVR_RESP 6
/** Out of resources locally */
#define SMTP_RESULT_ERR_MEM 7
/** Prototype of an smtp callback function
*
* @param arg argument specified when initiating the email
* @param smtp_result result of the mail transfer (see defines SMTP_RESULT_*)
* @param srv_err if aborted by the server, this contains the error code received
* @param err an error returned by internal lwip functions, can help to specify
* the source of the error but must not necessarily be != ERR_OK
*/
typedef void (*smtp_result_fn)(void *arg, u8_t smtp_result, u16_t srv_err, err_t err);
/** This structure is used as argument for smtp_send_mail_int(),
* which in turn can be used with tcpip_callback() to send mail
* from interrupt context, e.g. like this:
* struct smtp_send_request *req; (to be filled)
* tcpip_try_callback(smtp_send_mail_int, (void*)req);
*
* For member description, see parameter description of smtp_send_mail().
* When using with tcpip_callback, this structure has to stay allocated
* (e.g. using mem_malloc/mem_free) until its 'callback_fn' is called.
*/
struct smtp_send_request {
const char *from;
const char* to;
const char* subject;
const char* body;
smtp_result_fn callback_fn;
void* callback_arg;
/** If this is != 0, data is *not* copied into an extra buffer
* but used from the pointers supplied in this struct.
* This means less memory usage, but data must stay untouched until
* the callback function is called. */
u8_t static_data;
};
#if SMTP_BODYDH
#ifndef SMTP_BODYDH_BUFFER_SIZE
#define SMTP_BODYDH_BUFFER_SIZE 256
#endif /* SMTP_BODYDH_BUFFER_SIZE */
struct smtp_bodydh {
u16_t state;
u16_t length; /* Length of content in buffer */
char buffer[SMTP_BODYDH_BUFFER_SIZE]; /* buffer for generated content */
#ifdef SMTP_BODYDH_USER_SIZE
u8_t user[SMTP_BODYDH_USER_SIZE];
#endif /* SMTP_BODYDH_USER_SIZE */
};
enum bdh_retvals_e {
BDH_DONE = 0,
BDH_WORKING
};
/** Prototype of an smtp body callback function
* It receives a struct smtp_bodydh, and a buffer to write data,
* must return BDH_WORKING to be called again and BDH_DONE when
* it has finished processing. This one tries to fill one TCP buffer with
* data, your function will be repeatedly called until that happens; so if you
* know you'll be taking too long to serve your request, pause once in a while
* by writing length=0 to avoid hogging system resources
*
* @param arg argument specified when initiating the email
* @param smtp_bodydh state handling + buffer structure
*/
typedef int (*smtp_bodycback_fn)(void *arg, struct smtp_bodydh *bodydh);
err_t smtp_send_mail_bodycback(const char *from, const char* to, const char* subject,
smtp_bodycback_fn bodycback_fn, smtp_result_fn callback_fn, void* callback_arg);
#endif /* SMTP_BODYDH */
err_t smtp_set_server_addr(const char* server);
void smtp_set_server_port(u16_t port);
#if LWIP_ALTCP && LWIP_ALTCP_TLS
struct altcp_tls_config;
void smtp_set_tls_config(struct altcp_tls_config *tls_config);
#endif
err_t smtp_set_auth(const char* username, const char* pass);
err_t smtp_send_mail(const char *from, const char* to, const char* subject, const char* body,
smtp_result_fn callback_fn, void* callback_arg);
err_t smtp_send_mail_static(const char *from, const char* to, const char* subject, const char* body,
smtp_result_fn callback_fn, void* callback_arg);
void smtp_send_mail_int(void *arg);
#ifdef LWIP_DEBUG
const char* smtp_result_str(u8_t smtp_result);
#endif
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_SMTP_H */
@@ -1,80 +0,0 @@
#ifndef LWIP_HDR_APPS_SMTP_OPTS_H
#define LWIP_HDR_APPS_SMTP_OPTS_H
#include "lwip/opt.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @defgroup smtp_opts Options
* @ingroup smtp
*
* @{
*/
/** Set this to 1 to enable data handler callback on BODY */
#ifndef SMTP_BODYDH
#define SMTP_BODYDH 0
#endif
/** SMTP_DEBUG: Enable debugging for SNTP. */
#ifndef SMTP_DEBUG
#define SMTP_DEBUG LWIP_DBG_OFF
#endif
/** Maximum length reserved for server name including terminating 0 byte */
#ifndef SMTP_MAX_SERVERNAME_LEN
#define SMTP_MAX_SERVERNAME_LEN 256
#endif
/** Maximum length reserved for username */
#ifndef SMTP_MAX_USERNAME_LEN
#define SMTP_MAX_USERNAME_LEN 32
#endif
/** Maximum length reserved for password */
#ifndef SMTP_MAX_PASS_LEN
#define SMTP_MAX_PASS_LEN 32
#endif
/** Set this to 0 if you know the authentication data will not change
* during the smtp session, which saves some heap space. */
#ifndef SMTP_COPY_AUTHDATA
#define SMTP_COPY_AUTHDATA 1
#endif
/** Set this to 0 to save some code space if you know for sure that all data
* passed to this module conforms to the requirements in the SMTP RFC.
* WARNING: use this with care!
*/
#ifndef SMTP_CHECK_DATA
#define SMTP_CHECK_DATA 1
#endif
/** Set this to 1 to enable AUTH PLAIN support */
#ifndef SMTP_SUPPORT_AUTH_PLAIN
#define SMTP_SUPPORT_AUTH_PLAIN 1
#endif
/** Set this to 1 to enable AUTH LOGIN support */
#ifndef SMTP_SUPPORT_AUTH_LOGIN
#define SMTP_SUPPORT_AUTH_LOGIN 1
#endif
/* Memory allocation/deallocation can be overridden... */
#ifndef SMTP_STATE_MALLOC
#define SMTP_STATE_MALLOC(size) mem_malloc(size)
#define SMTP_STATE_FREE(ptr) mem_free(ptr)
#endif
/**
* @}
*/
#ifdef __cplusplus
}
#endif
#endif /* SMTP_OPTS_H */
@@ -1,135 +0,0 @@
/**
* @file
* SNMP server main API - start and basic configuration
*/
/*
* Copyright (c) 2001, 2002 Leon Woestenberg <leon.woestenberg@axon.tv>
* Copyright (c) 2001, 2002 Axon Digital Design B.V., The Netherlands.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Leon Woestenberg <leon.woestenberg@axon.tv>
* Martin Hentschel <info@cl-soft.de>
*
*/
#ifndef LWIP_HDR_APPS_SNMP_H
#define LWIP_HDR_APPS_SNMP_H
#include "lwip/apps/snmp_opts.h"
#ifdef __cplusplus
extern "C" {
#endif
#if LWIP_SNMP /* don't build if not configured for use in lwipopts.h */
#include "lwip/err.h"
#include "lwip/apps/snmp_core.h"
/** SNMP variable binding descriptor (publicly needed for traps) */
struct snmp_varbind
{
/** pointer to next varbind, NULL for last in list */
struct snmp_varbind *next;
/** pointer to previous varbind, NULL for first in list */
struct snmp_varbind *prev;
/** object identifier */
struct snmp_obj_id oid;
/** value ASN1 type */
u8_t type;
/** object value length */
u16_t value_len;
/** object value */
void *value;
};
/**
* @ingroup snmp_core
* Agent setup, start listening to port 161.
*/
void snmp_init(void);
void snmp_set_mibs(const struct snmp_mib **mibs, u8_t num_mibs);
void snmp_set_device_enterprise_oid(const struct snmp_obj_id* device_enterprise_oid);
const struct snmp_obj_id* snmp_get_device_enterprise_oid(void);
void snmp_trap_dst_enable(u8_t dst_idx, u8_t enable);
void snmp_trap_dst_ip_set(u8_t dst_idx, const ip_addr_t *dst);
/** Generic trap: cold start */
#define SNMP_GENTRAP_COLDSTART 0
/** Generic trap: warm start */
#define SNMP_GENTRAP_WARMSTART 1
/** Generic trap: link down */
#define SNMP_GENTRAP_LINKDOWN 2
/** Generic trap: link up */
#define SNMP_GENTRAP_LINKUP 3
/** Generic trap: authentication failure */
#define SNMP_GENTRAP_AUTH_FAILURE 4
/** Generic trap: EGP neighbor lost */
#define SNMP_GENTRAP_EGP_NEIGHBOR_LOSS 5
/** Generic trap: enterprise specific */
#define SNMP_GENTRAP_ENTERPRISE_SPECIFIC 6
err_t snmp_send_trap_generic(s32_t generic_trap);
err_t snmp_send_trap_specific(s32_t specific_trap, struct snmp_varbind *varbinds);
err_t snmp_send_trap(const struct snmp_obj_id* oid, s32_t generic_trap, s32_t specific_trap, struct snmp_varbind *varbinds);
#define SNMP_AUTH_TRAPS_DISABLED 0
#define SNMP_AUTH_TRAPS_ENABLED 1
void snmp_set_auth_traps_enabled(u8_t enable);
u8_t snmp_get_auth_traps_enabled(void);
u8_t snmp_v1_enabled(void);
u8_t snmp_v2c_enabled(void);
u8_t snmp_v3_enabled(void);
void snmp_v1_enable(u8_t enable);
void snmp_v2c_enable(u8_t enable);
void snmp_v3_enable(u8_t enable);
const char * snmp_get_community(void);
const char * snmp_get_community_write(void);
const char * snmp_get_community_trap(void);
void snmp_set_community(const char * const community);
void snmp_set_community_write(const char * const community);
void snmp_set_community_trap(const char * const community);
void snmp_coldstart_trap(void);
void snmp_authfail_trap(void);
typedef void (*snmp_write_callback_fct)(const u32_t* oid, u8_t oid_len, void* callback_arg);
void snmp_set_write_callback(snmp_write_callback_fct write_callback, void* callback_arg);
#endif /* LWIP_SNMP */
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_SNMP_H */
@@ -1,377 +0,0 @@
/**
* @file
* SNMP core API for implementing MIBs
*/
/*
* Copyright (c) 2006 Axon Digital Design B.V., The Netherlands.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* Author: Christiaan Simons <christiaan.simons@axon.tv>
* Martin Hentschel <info@cl-soft.de>
*/
#ifndef LWIP_HDR_APPS_SNMP_CORE_H
#define LWIP_HDR_APPS_SNMP_CORE_H
#include "lwip/apps/snmp_opts.h"
#if LWIP_SNMP /* don't build if not configured for use in lwipopts.h */
#include "lwip/ip_addr.h"
#include "lwip/err.h"
#ifdef __cplusplus
extern "C" {
#endif
/* basic ASN1 defines */
#define SNMP_ASN1_CLASS_UNIVERSAL 0x00
#define SNMP_ASN1_CLASS_APPLICATION 0x40
#define SNMP_ASN1_CLASS_CONTEXT 0x80
#define SNMP_ASN1_CLASS_PRIVATE 0xC0
#define SNMP_ASN1_CONTENTTYPE_PRIMITIVE 0x00
#define SNMP_ASN1_CONTENTTYPE_CONSTRUCTED 0x20
/* universal tags (from ASN.1 spec.) */
#define SNMP_ASN1_UNIVERSAL_END_OF_CONTENT 0
#define SNMP_ASN1_UNIVERSAL_INTEGER 2
#define SNMP_ASN1_UNIVERSAL_OCTET_STRING 4
#define SNMP_ASN1_UNIVERSAL_NULL 5
#define SNMP_ASN1_UNIVERSAL_OBJECT_ID 6
#define SNMP_ASN1_UNIVERSAL_SEQUENCE_OF 16
/* application specific (SNMP) tags (from SNMPv2-SMI) */
#define SNMP_ASN1_APPLICATION_IPADDR 0 /* [APPLICATION 0] IMPLICIT OCTET STRING (SIZE (4)) */
#define SNMP_ASN1_APPLICATION_COUNTER 1 /* [APPLICATION 1] IMPLICIT INTEGER (0..4294967295) => u32_t */
#define SNMP_ASN1_APPLICATION_GAUGE 2 /* [APPLICATION 2] IMPLICIT INTEGER (0..4294967295) => u32_t */
#define SNMP_ASN1_APPLICATION_TIMETICKS 3 /* [APPLICATION 3] IMPLICIT INTEGER (0..4294967295) => u32_t */
#define SNMP_ASN1_APPLICATION_OPAQUE 4 /* [APPLICATION 4] IMPLICIT OCTET STRING */
#define SNMP_ASN1_APPLICATION_COUNTER64 6 /* [APPLICATION 6] IMPLICIT INTEGER (0..18446744073709551615) */
/* context specific (SNMP) tags (from RFC 1905) */
#define SNMP_ASN1_CONTEXT_VARBIND_NO_SUCH_INSTANCE 1
/* full ASN1 type defines */
#define SNMP_ASN1_TYPE_END_OF_CONTENT (SNMP_ASN1_CLASS_UNIVERSAL | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_UNIVERSAL_END_OF_CONTENT)
#define SNMP_ASN1_TYPE_INTEGER (SNMP_ASN1_CLASS_UNIVERSAL | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_UNIVERSAL_INTEGER)
#define SNMP_ASN1_TYPE_OCTET_STRING (SNMP_ASN1_CLASS_UNIVERSAL | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_UNIVERSAL_OCTET_STRING)
#define SNMP_ASN1_TYPE_NULL (SNMP_ASN1_CLASS_UNIVERSAL | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_UNIVERSAL_NULL)
#define SNMP_ASN1_TYPE_OBJECT_ID (SNMP_ASN1_CLASS_UNIVERSAL | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_UNIVERSAL_OBJECT_ID)
#define SNMP_ASN1_TYPE_SEQUENCE (SNMP_ASN1_CLASS_UNIVERSAL | SNMP_ASN1_CONTENTTYPE_CONSTRUCTED | SNMP_ASN1_UNIVERSAL_SEQUENCE_OF)
#define SNMP_ASN1_TYPE_IPADDR (SNMP_ASN1_CLASS_APPLICATION | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_APPLICATION_IPADDR)
#define SNMP_ASN1_TYPE_IPADDRESS SNMP_ASN1_TYPE_IPADDR
#define SNMP_ASN1_TYPE_COUNTER (SNMP_ASN1_CLASS_APPLICATION | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_APPLICATION_COUNTER)
#define SNMP_ASN1_TYPE_COUNTER32 SNMP_ASN1_TYPE_COUNTER
#define SNMP_ASN1_TYPE_GAUGE (SNMP_ASN1_CLASS_APPLICATION | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_APPLICATION_GAUGE)
#define SNMP_ASN1_TYPE_GAUGE32 SNMP_ASN1_TYPE_GAUGE
#define SNMP_ASN1_TYPE_UNSIGNED32 SNMP_ASN1_TYPE_GAUGE
#define SNMP_ASN1_TYPE_TIMETICKS (SNMP_ASN1_CLASS_APPLICATION | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_APPLICATION_TIMETICKS)
#define SNMP_ASN1_TYPE_OPAQUE (SNMP_ASN1_CLASS_APPLICATION | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_APPLICATION_OPAQUE)
#if LWIP_HAVE_INT64
#define SNMP_ASN1_TYPE_COUNTER64 (SNMP_ASN1_CLASS_APPLICATION | SNMP_ASN1_CONTENTTYPE_PRIMITIVE | SNMP_ASN1_APPLICATION_COUNTER64)
#endif
#define SNMP_VARBIND_EXCEPTION_OFFSET 0xF0
#define SNMP_VARBIND_EXCEPTION_MASK 0x0F
/** error codes predefined by SNMP prot. */
typedef enum {
SNMP_ERR_NOERROR = 0,
/*
outdated v1 error codes. do not use anmore!
#define SNMP_ERR_NOSUCHNAME 2 use SNMP_ERR_NOSUCHINSTANCE instead
#define SNMP_ERR_BADVALUE 3 use SNMP_ERR_WRONGTYPE,SNMP_ERR_WRONGLENGTH,SNMP_ERR_WRONGENCODING or SNMP_ERR_WRONGVALUE instead
#define SNMP_ERR_READONLY 4 use SNMP_ERR_NOTWRITABLE instead
*/
SNMP_ERR_GENERROR = 5,
SNMP_ERR_NOACCESS = 6,
SNMP_ERR_WRONGTYPE = 7,
SNMP_ERR_WRONGLENGTH = 8,
SNMP_ERR_WRONGENCODING = 9,
SNMP_ERR_WRONGVALUE = 10,
SNMP_ERR_NOCREATION = 11,
SNMP_ERR_INCONSISTENTVALUE = 12,
SNMP_ERR_RESOURCEUNAVAILABLE = 13,
SNMP_ERR_COMMITFAILED = 14,
SNMP_ERR_UNDOFAILED = 15,
SNMP_ERR_NOTWRITABLE = 17,
SNMP_ERR_INCONSISTENTNAME = 18,
SNMP_ERR_NOSUCHINSTANCE = SNMP_VARBIND_EXCEPTION_OFFSET + SNMP_ASN1_CONTEXT_VARBIND_NO_SUCH_INSTANCE
} snmp_err_t;
/** internal object identifier representation */
struct snmp_obj_id
{
u8_t len;
u32_t id[SNMP_MAX_OBJ_ID_LEN];
};
struct snmp_obj_id_const_ref
{
u8_t len;
const u32_t* id;
};
extern const struct snmp_obj_id_const_ref snmp_zero_dot_zero; /* administrative identifier from SNMPv2-SMI */
/** SNMP variant value, used as reference in struct snmp_node_instance and table implementation */
union snmp_variant_value
{
void* ptr;
const void* const_ptr;
u32_t u32;
s32_t s32;
#if LWIP_HAVE_INT64
u64_t u64;
#endif
};
/**
SNMP MIB node types
tree node is the only node the stack can process in order to walk the tree,
all other nodes are assumed to be leaf nodes.
This cannot be an enum because users may want to define their own node types.
*/
#define SNMP_NODE_TREE 0x00
/* predefined leaf node types */
#define SNMP_NODE_SCALAR 0x01
#define SNMP_NODE_SCALAR_ARRAY 0x02
#define SNMP_NODE_TABLE 0x03
#define SNMP_NODE_THREADSYNC 0x04
/** node "base class" layout, the mandatory fields for a node */
struct snmp_node
{
/** one out of SNMP_NODE_TREE or any leaf node type (like SNMP_NODE_SCALAR) */
u8_t node_type;
/** the number assigned to this node which used as part of the full OID */
u32_t oid;
};
/** SNMP node instance access types */
typedef enum {
SNMP_NODE_INSTANCE_ACCESS_READ = 1,
SNMP_NODE_INSTANCE_ACCESS_WRITE = 2,
SNMP_NODE_INSTANCE_READ_ONLY = SNMP_NODE_INSTANCE_ACCESS_READ,
SNMP_NODE_INSTANCE_READ_WRITE = (SNMP_NODE_INSTANCE_ACCESS_READ | SNMP_NODE_INSTANCE_ACCESS_WRITE),
SNMP_NODE_INSTANCE_WRITE_ONLY = SNMP_NODE_INSTANCE_ACCESS_WRITE,
SNMP_NODE_INSTANCE_NOT_ACCESSIBLE = 0
} snmp_access_t;
struct snmp_node_instance;
typedef s16_t (*node_instance_get_value_method)(struct snmp_node_instance*, void*);
typedef snmp_err_t (*node_instance_set_test_method)(struct snmp_node_instance*, u16_t, void*);
typedef snmp_err_t (*node_instance_set_value_method)(struct snmp_node_instance*, u16_t, void*);
typedef void (*node_instance_release_method)(struct snmp_node_instance*);
#define SNMP_GET_VALUE_RAW_DATA 0x4000 /* do not use 0x8000 because return value of node_instance_get_value_method is signed16 and 0x8000 would be the signed bit */
/** SNMP node instance */
struct snmp_node_instance
{
/** prefilled with the node, get_instance() is called on; may be changed by user to any value to pass an arbitrary node between calls to get_instance() and get_value/test_value/set_value */
const struct snmp_node* node;
/** prefilled with the instance id requested; for get_instance() this is the exact oid requested; for get_next_instance() this is the relative starting point, stack expects relative oid of next node here */
struct snmp_obj_id instance_oid;
/** ASN type for this object (see snmp_asn1.h for definitions) */
u8_t asn1_type;
/** one out of instance access types defined above (SNMP_NODE_INSTANCE_READ_ONLY,...) */
snmp_access_t access;
/** returns object value for the given object identifier. Return values <0 to indicate an error */
node_instance_get_value_method get_value;
/** tests length and/or range BEFORE setting */
node_instance_set_test_method set_test;
/** sets object value, only called when set_test() was successful */
node_instance_set_value_method set_value;
/** called in any case when the instance is not required anymore by stack (useful for freeing memory allocated in get_instance/get_next_instance methods) */
node_instance_release_method release_instance;
/** reference to pass arbitrary value between calls to get_instance() and get_value/test_value/set_value */
union snmp_variant_value reference;
/** see reference (if reference is a pointer, the length of underlying data may be stored here or anything else) */
u32_t reference_len;
};
/** SNMP tree node */
struct snmp_tree_node
{
/** inherited "base class" members */
struct snmp_node node;
u16_t subnode_count;
const struct snmp_node* const *subnodes;
};
#define SNMP_CREATE_TREE_NODE(oid, subnodes) \
{{ SNMP_NODE_TREE, (oid) }, \
(u16_t)LWIP_ARRAYSIZE(subnodes), (subnodes) }
#define SNMP_CREATE_EMPTY_TREE_NODE(oid) \
{{ SNMP_NODE_TREE, (oid) }, \
0, NULL }
/** SNMP leaf node */
struct snmp_leaf_node
{
/** inherited "base class" members */
struct snmp_node node;
snmp_err_t (*get_instance)(const u32_t *root_oid, u8_t root_oid_len, struct snmp_node_instance* instance);
snmp_err_t (*get_next_instance)(const u32_t *root_oid, u8_t root_oid_len, struct snmp_node_instance* instance);
};
/** represents a single mib with its base oid and root node */
struct snmp_mib
{
const u32_t *base_oid;
u8_t base_oid_len;
const struct snmp_node *root_node;
};
#define SNMP_MIB_CREATE(oid_list, root_node) { (oid_list), (u8_t)LWIP_ARRAYSIZE(oid_list), root_node }
/** OID range structure */
struct snmp_oid_range
{
u32_t min;
u32_t max;
};
/** checks if incoming OID length and values are in allowed ranges */
u8_t snmp_oid_in_range(const u32_t *oid_in, u8_t oid_len, const struct snmp_oid_range *oid_ranges, u8_t oid_ranges_len);
typedef enum {
SNMP_NEXT_OID_STATUS_SUCCESS,
SNMP_NEXT_OID_STATUS_NO_MATCH,
SNMP_NEXT_OID_STATUS_BUF_TO_SMALL
} snmp_next_oid_status_t;
/** state for next_oid_init / next_oid_check functions */
struct snmp_next_oid_state
{
const u32_t* start_oid;
u8_t start_oid_len;
u32_t* next_oid;
u8_t next_oid_len;
u8_t next_oid_max_len;
snmp_next_oid_status_t status;
void* reference;
};
void snmp_next_oid_init(struct snmp_next_oid_state *state,
const u32_t *start_oid, u8_t start_oid_len,
u32_t *next_oid_buf, u8_t next_oid_max_len);
u8_t snmp_next_oid_precheck(struct snmp_next_oid_state *state, const u32_t *oid, u8_t oid_len);
u8_t snmp_next_oid_check(struct snmp_next_oid_state *state, const u32_t *oid, u8_t oid_len, void* reference);
void snmp_oid_assign(struct snmp_obj_id* target, const u32_t *oid, u8_t oid_len);
void snmp_oid_combine(struct snmp_obj_id* target, const u32_t *oid1, u8_t oid1_len, const u32_t *oid2, u8_t oid2_len);
void snmp_oid_prefix(struct snmp_obj_id* target, const u32_t *oid, u8_t oid_len);
void snmp_oid_append(struct snmp_obj_id* target, const u32_t *oid, u8_t oid_len);
u8_t snmp_oid_equal(const u32_t *oid1, u8_t oid1_len, const u32_t *oid2, u8_t oid2_len);
s8_t snmp_oid_compare(const u32_t *oid1, u8_t oid1_len, const u32_t *oid2, u8_t oid2_len);
#if LWIP_IPV4
u8_t snmp_oid_to_ip4(const u32_t *oid, ip4_addr_t *ip);
void snmp_ip4_to_oid(const ip4_addr_t *ip, u32_t *oid);
#endif /* LWIP_IPV4 */
#if LWIP_IPV6
u8_t snmp_oid_to_ip6(const u32_t *oid, ip6_addr_t *ip);
void snmp_ip6_to_oid(const ip6_addr_t *ip, u32_t *oid);
#endif /* LWIP_IPV6 */
#if LWIP_IPV4 || LWIP_IPV6
u8_t snmp_ip_to_oid(const ip_addr_t *ip, u32_t *oid);
u8_t snmp_ip_port_to_oid(const ip_addr_t *ip, u16_t port, u32_t *oid);
u8_t snmp_oid_to_ip(const u32_t *oid, u8_t oid_len, ip_addr_t *ip);
u8_t snmp_oid_to_ip_port(const u32_t *oid, u8_t oid_len, ip_addr_t *ip, u16_t *port);
#endif /* LWIP_IPV4 || LWIP_IPV6 */
struct netif;
u8_t netif_to_num(const struct netif *netif);
snmp_err_t snmp_set_test_ok(struct snmp_node_instance* instance, u16_t value_len, void* value); /* generic function which can be used if test is always successful */
err_t snmp_decode_bits(const u8_t *buf, u32_t buf_len, u32_t *bit_value);
err_t snmp_decode_truthvalue(const s32_t *asn1_value, u8_t *bool_value);
u8_t snmp_encode_bits(u8_t *buf, u32_t buf_len, u32_t bit_value, u8_t bit_count);
u8_t snmp_encode_truthvalue(s32_t *asn1_value, u32_t bool_value);
struct snmp_statistics
{
u32_t inpkts;
u32_t outpkts;
u32_t inbadversions;
u32_t inbadcommunitynames;
u32_t inbadcommunityuses;
u32_t inasnparseerrs;
u32_t intoobigs;
u32_t innosuchnames;
u32_t inbadvalues;
u32_t inreadonlys;
u32_t ingenerrs;
u32_t intotalreqvars;
u32_t intotalsetvars;
u32_t ingetrequests;
u32_t ingetnexts;
u32_t insetrequests;
u32_t ingetresponses;
u32_t intraps;
u32_t outtoobigs;
u32_t outnosuchnames;
u32_t outbadvalues;
u32_t outgenerrs;
u32_t outgetrequests;
u32_t outgetnexts;
u32_t outsetrequests;
u32_t outgetresponses;
u32_t outtraps;
#if LWIP_SNMP_V3
u32_t unsupportedseclevels;
u32_t notintimewindows;
u32_t unknownusernames;
u32_t unknownengineids;
u32_t wrongdigests;
u32_t decryptionerrors;
#endif
};
extern struct snmp_statistics snmp_stats;
#ifdef __cplusplus
}
#endif
#endif /* LWIP_SNMP */
#endif /* LWIP_HDR_APPS_SNMP_CORE_H */
@@ -1,78 +0,0 @@
/**
* @file
* SNMP MIB2 API
*/
/*
* Copyright (c) 2001-2004 Swedish Institute of Computer Science.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
* OF SUCH DAMAGE.
*
* This file is part of the lwIP TCP/IP stack.
*
* Author: Dirk Ziegelmeier <dziegel@gmx.de>
*
*/
#ifndef LWIP_HDR_APPS_SNMP_MIB2_H
#define LWIP_HDR_APPS_SNMP_MIB2_H
#include "lwip/apps/snmp_opts.h"
#ifdef __cplusplus
extern "C" {
#endif
#if LWIP_SNMP /* don't build if not configured for use in lwipopts.h */
#if SNMP_LWIP_MIB2
#include "lwip/apps/snmp_core.h"
extern const struct snmp_mib mib2;
#if SNMP_USE_NETCONN
#include "lwip/apps/snmp_threadsync.h"
void snmp_mib2_lwip_synchronizer(snmp_threadsync_called_fn fn, void* arg);
extern struct snmp_threadsync_instance snmp_mib2_lwip_locks;
#endif
#ifndef SNMP_SYSSERVICES
#define SNMP_SYSSERVICES ((1 << 6) | (1 << 3) | ((IP_FORWARD) << 2))
#endif
void snmp_mib2_set_sysdescr(const u8_t* str, const u16_t* len); /* read-only be definition */
void snmp_mib2_set_syscontact(u8_t *ocstr, u16_t *ocstrlen, u16_t bufsize);
void snmp_mib2_set_syscontact_readonly(const u8_t *ocstr, const u16_t *ocstrlen);
void snmp_mib2_set_sysname(u8_t *ocstr, u16_t *ocstrlen, u16_t bufsize);
void snmp_mib2_set_sysname_readonly(const u8_t *ocstr, const u16_t *ocstrlen);
void snmp_mib2_set_syslocation(u8_t *ocstr, u16_t *ocstrlen, u16_t bufsize);
void snmp_mib2_set_syslocation_readonly(const u8_t *ocstr, const u16_t *ocstrlen);
#endif /* SNMP_LWIP_MIB2 */
#endif /* LWIP_SNMP */
#ifdef __cplusplus
}
#endif
#endif /* LWIP_HDR_APPS_SNMP_MIB2_H */

Some files were not shown because too many files have changed in this diff Show More