Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) # SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) # (C) COPYRIGHT 2021-2022 ARM Limited. All rights reserved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) # This program is free software and is provided to you under the terms of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) # GNU General Public License version 2 as published by the Free Software
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) # Foundation, and any use by you of this program is subject to the terms
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) # of such GNU license.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) # This program is distributed in the hope that it will be useful,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) # but WITHOUT ANY WARRANTY; without even the implied warranty of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) # GNU General Public License for more details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) # You should have received a copy of the GNU General Public License
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) # along with this program; if not, you can access it online at
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) # http://www.gnu.org/licenses/gpl-2.0.html.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) # Paths
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) KERNEL_SRC ?= /lib/modules/$(shell uname -r)/build
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) KDIR ?= $(KERNEL_SRC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) ifeq ($(KDIR),)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28)     $(error Must specify KDIR to point to the kernel to target))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) vars :=
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) # Default configuration values
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) CONFIG_MALI_BASE_MODULES ?= n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) ifeq ($(CONFIG_MALI_BASE_MODULES),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38)     CONFIG_MALI_CSF_SUPPORT ?= n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40)     ifneq ($(CONFIG_DMA_SHARED_BUFFER),n)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41)         CONFIG_DMA_BUF_LOCK ?= y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42)         CONFIG_DMA_SHARED_BUFFER_TEST_EXPORTER ?= y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43)     else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44)         # Prevent misuse when CONFIG_DMA_SHARED_BUFFER=n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45)         CONFIG_DMA_BUF_LOCK = n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46)         CONFIG_DMA_SHARED_BUFFER_TEST_EXPORTER = n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47)     endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49)     CONFIG_MALI_MEMORY_GROUP_MANAGER ?= y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51)     ifneq ($(CONFIG_MALI_CSF_SUPPORT), n)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52)         CONFIG_MALI_PROTECTED_MEMORY_ALLOCATOR ?= y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53)     endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56)     # Prevent misuse when CONFIG_MALI_BASE_MODULES=n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57)     CONFIG_DMA_BUF_LOCK = n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58)     CONFIG_DMA_SHARED_BUFFER_TEST_EXPORTER = n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59)     CONFIG_MALI_MEMORY_GROUP_MANAGER = n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60)     CONFIG_MALI_PROTECTED_MEMORY_ALLOCATOR = n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) CONFIGS := \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65)     CONFIG_MALI_BASE_MODULES \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66)     CONFIG_MALI_CSF_SUPPORT \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67)     CONFIG_DMA_BUF_LOCK \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68)     CONFIG_DMA_SHARED_BUFFER_TEST_EXPORTER \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69)     CONFIG_MALI_MEMORY_GROUP_MANAGER \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70)     CONFIG_MALI_PROTECTED_MEMORY_ALLOCATOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) # MAKE_ARGS to pass the custom CONFIGs on out-of-tree build
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) # Generate the list of CONFIGs and values.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) # $(value config) is the name of the CONFIG option.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) # $(value $(value config)) is its value (y, m).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) # When the CONFIG is not set to y or m, it defaults to n.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) MAKE_ARGS := $(foreach config,$(CONFIGS), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81)                     $(if $(filter y m,$(value $(value config))), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82)                         $(value config)=$(value $(value config)), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83)                         $(value config)=n))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) # EXTRA_CFLAGS to define the custom CONFIGs on out-of-tree build
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) # Generate the list of CONFIGs defines with values from CONFIGS.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) # $(value config) is the name of the CONFIG option.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) # When set to y or m, the CONFIG gets defined to 1.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) EXTRA_CFLAGS := $(foreach config,$(CONFIGS), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92)                     $(if $(filter y m,$(value $(value config))), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93)                         -D$(value config)=1))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) # The following were added to align with W=1 in scripts/Makefile.extrawarn
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) # from the Linux source tree
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) KBUILD_CFLAGS += -Wall -Werror
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) KBUILD_CFLAGS += -Wextra -Wunused -Wno-unused-parameter
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) KBUILD_CFLAGS += -Wmissing-declarations
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) KBUILD_CFLAGS += -Wmissing-format-attribute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) KBUILD_CFLAGS += -Wmissing-prototypes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) KBUILD_CFLAGS += -Wold-style-definition
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) KBUILD_CFLAGS += -Wmissing-include-dirs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) KBUILD_CFLAGS += $(call cc-option, -Wunused-but-set-variable)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) KBUILD_CFLAGS += $(call cc-option, -Wunused-const-variable)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) KBUILD_CFLAGS += $(call cc-option, -Wpacked-not-aligned)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) KBUILD_CFLAGS += $(call cc-option, -Wstringop-truncation)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) # The following turn off the warnings enabled by -Wextra
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) KBUILD_CFLAGS += -Wno-missing-field-initializers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) KBUILD_CFLAGS += -Wno-sign-compare
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) KBUILD_CFLAGS += -Wno-type-limits
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) KBUILD_CPPFLAGS += -DKBUILD_EXTRA_WARN1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) all:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	$(MAKE) -C $(KDIR) M=$(CURDIR) $(MAKE_ARGS) EXTRA_CFLAGS="$(EXTRA_CFLAGS)" KBUILD_EXTRA_SYMBOLS="$(EXTRA_SYMBOLS)" modules
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) modules_install:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	$(MAKE) -C $(KDIR) M=$(CURDIR) $(MAKE_ARGS) modules_install
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) clean:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 	$(MAKE) -C $(KDIR) M=$(CURDIR) $(MAKE_ARGS) clean