nuttx/net/can/Make.defs
zhanghongyu 3e025b5a03 net/can: can protocol uses a separate buffer to cache can data
To avoid memory waste, can add support for using an independent iob buffer
The IP protocol often configures CONFIG_IOB_BUFSIZE to be relatively large,
such as 512, for higher throughput. However, the buffer required by CAN is
fixed at a length of 16 or 64. If the system's IOB is directly used,
a lot of memory will be wasted.

Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2025-12-25 08:56:12 -03:00

61 lines
1.7 KiB
Text

############################################################################
# net/can/Make.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.
#
############################################################################
# Logic specific to SocketCAN socket support
ifeq ($(CONFIG_NET_CAN),y)
# Socket layer
SOCK_CSRCS += can_sockif.c
ifeq ($(CONFIG_NET_CAN_WRITE_BUFFERS),y)
SOCK_CSRCS += can_sendmsg_buffered.c
else
SOCK_CSRCS += can_sendmsg.c
endif
SOCK_CSRCS += can_recvmsg.c
ifeq ($(CONFIG_NET_CAN_NOTIFIER),y)
SOCK_CSRCS += can_notifier.c
endif
ifeq ($(CONFIG_NET_CANPROTO_OPTIONS),y)
SOCK_CSRCS += can_setsockopt.c can_getsockopt.c
endif
ifdef CONFIG_NET_CAN_NBUFFERS
ifneq (${CONFIG_NET_CAN_NBUFFERS},0)
SOCK_CSRCS += can_bufpool.c
endif
endif
NET_CSRCS += can_conn.c
NET_CSRCS += can_input.c
NET_CSRCS += can_callback.c
NET_CSRCS += can_poll.c
# Include can build support
DEPPATH += --dep-path can
VPATH += :can
endif # CONFIG_NET_CAN