| ############################################################################ |
| # openamp/open-amp.defs |
| # |
| # SPDX-License-Identifier: Apache-2.0 |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. The |
| # ASF licenses this file to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance with the |
| # License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| # License for the specific language governing permissions and limitations |
| # under the License. |
| # |
| ############################################################################ |
| |
| ifeq ($(CONFIG_OPENAMP),y) |
| |
| ifeq ($(CONFIG_OPENAMP_CACHE),y) |
| CFLAGS += -DVIRTIO_CACHED_BUFFERS -DVIRTIO_CACHED_VRINGS |
| endif |
| |
| ifeq ($(CONFIG_OPENAMP_DEBUG),y) |
| CFLAGS += -DRPMSG_DEBUG -DVQUEUE_DEBUG |
| endif |
| |
| CFLAGS += -Delf_load=remoteproc_elf_load |
| |
| ifeq ($(CONFIG_OPENAMP_VIRTIO_DEVICE_SUPPORT),y) |
| CFLAGS += -DVIRTIO_DEVICE_SUPPORT=1 |
| else |
| CFLAGS += -DVIRTIO_DEVICE_SUPPORT=0 |
| endif |
| |
| ifeq ($(CONFIG_OPENAMP_VIRTIO_DRIVER_SUPPORT),y) |
| CFLAGS += -DVIRTIO_DRIVER_SUPPORT=1 |
| else |
| CFLAGS += -DVIRTIO_DRIVER_SUPPORT=0 |
| endif |
| |
| CSRCS += open-amp/lib/remoteproc/elf_loader.c |
| CSRCS += open-amp/lib/remoteproc/remoteproc.c |
| CSRCS += open-amp/lib/remoteproc/remoteproc_virtio.c |
| CSRCS += open-amp/lib/remoteproc/rsc_table_parser.c |
| CSRCS += open-amp/lib/rpmsg/rpmsg.c |
| CSRCS += open-amp/lib/rpmsg/rpmsg_virtio.c |
| CSRCS += open-amp/lib/virtio/virtio.c |
| CSRCS += open-amp/lib/virtio/virtqueue.c |
| |
| # Download and unpack tarball if no git repo found |
| ifeq ($(wildcard open-amp/.git),) |
| open-amp.zip: |
| $(call DOWNLOAD,https://github.com/OpenAMP/open-amp/archive,$(OPENAMP_COMMIT).zip,open-amp.zip) |
| $(Q) unzip -o open-amp.zip |
| mv open-amp-$(OPENAMP_COMMIT) open-amp |
| $(Q) patch -p0 < 0001-ns-acknowledge-the-received-creation-message.patch |
| $(Q) patch -p0 < 0002-Negotiate-individual-buffer-size-dynamically.patch |
| $(Q) patch -p0 < 0003-rpmsg-notify-the-user-when-the-remote-address-is-rec.patch |
| $(Q) patch -p0 < 0004-openamp-virtio.h-negotiate_features-also-can-be-call.patch |
| $(Q) patch -p0 < 0005-remoteproc-rpmsg_virtio-change-sched_yeild-to-usleep.patch |
| $(Q) patch -p0 < 0006-rpmsg-wait-ept-ready-in-rpmsg_send.patch |
| $(Q) patch -p0 < 0007-openamp-add-VIRTIO_RING_F_MUST_NOTIFY-event.patch |
| $(Q) patch -p0 < 0008-rpmsg_virtio-don-t-need-check-status-when-get_tx_pay.patch |
| $(Q) patch -p0 < 0009-openamp-swap-get_rx_buffer-return_rx_buffer-to-resol.patch |
| $(Q) patch -p0 < 0010-rpmsg_virtio.c-virtqueue_kick-after-all-rx-buffer-re.patch |
| $(Q) patch -p0 < 0011-virtio-change-feature-to-64-bit-in-all-virtio_dispat.patch |
| $(Q) patch -p0 < 0012-rpmsg_virtio.c-fix-get_tx_payload_buffer-error.patch |
| $(Q) patch -p0 < 0013-openamp-add-assert-when-get-tx-buffer-failed.patch |
| $(Q) patch -p0 < 0014-virtio.h-add-memory-operation-for-virtio-device.patch |
| |
| .openamp_headers: open-amp.zip |
| else |
| .openamp_headers: |
| endif |
| $(eval headers := $(wildcard open-amp/lib/include/openamp/*.h)) |
| $(shell mkdir -p $(TOPDIR)$(DELIM)include$(DELIM)openamp$(DELIM)) |
| $(foreach header,$(headers),$(shell cp -rf $(header) $(TOPDIR)$(DELIM)include$(DELIM)openamp$(DELIM))) |
| touch $@ |
| |
| context:: .openamp_headers |
| |
| distclean:: |
| $(call DELDIR, $(TOPDIR)$(DELIM)include$(DELIM)openamp$(DELIM)) |
| ifeq ($(wildcard open-amp/.git),) |
| $(call DELDIR, open-amp) |
| $(call DELFILE, open-amp.zip) |
| endif |
| $(call DELFILE, .openamp_headers) |
| |
| endif |