| /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ |
| /* |
| * |
| * (C) COPYRIGHT 2017-2021 ARM Limited. All rights reserved. |
| * |
| * This program is free software and is provided to you under the terms of the |
| * GNU General Public License version 2 as published by the Free Software |
| * Foundation, and any use by you of this program is subject to the terms |
| * of such GNU license. |
| * |
| * This program is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| * GNU General Public License for more details. |
| * |
| * You should have received a copy of the GNU General Public License |
| * along with this program; if not, you can access it online at |
| * http://www.gnu.org/licenses/gpl-2.0.html. |
| * |
| */ |
| |
| /* Kernel-side tests may include mali_kbase's headers. Therefore any config |
| * options which affect the sizes of any structs (e.g. adding extra members) |
| * must be included in these defaults, so that the structs are consistent in |
| * both mali_kbase and the test modules. */ |
| bob_defaults { |
| name: "mali_kbase_shared_config_defaults", |
| defaults: [ |
| "kernel_defaults", |
| ], |
| no_mali: { |
| kbuild_options: [ |
| "CONFIG_MALI_NO_MALI=y", |
| "CONFIG_MALI_NO_MALI_DEFAULT_GPU={{.gpu}}", |
| ], |
| }, |
| gpu_has_csf: { |
| kbuild_options: ["CONFIG_MALI_CSF_SUPPORT=y"], |
| }, |
| mali_devfreq: { |
| kbuild_options: ["CONFIG_MALI_DEVFREQ=y"], |
| }, |
| mali_midgard_dvfs: { |
| kbuild_options: ["CONFIG_MALI_MIDGARD_DVFS=y"], |
| }, |
| mali_gator_support: { |
| kbuild_options: ["CONFIG_MALI_GATOR_SUPPORT=y"], |
| }, |
| mali_midgard_enable_trace: { |
| kbuild_options: ["CONFIG_MALI_MIDGARD_ENABLE_TRACE=y"], |
| }, |
| mali_dma_fence: { |
| kbuild_options: ["CONFIG_MALI_DMA_FENCE=y"], |
| }, |
| mali_arbiter_support: { |
| kbuild_options: ["CONFIG_MALI_ARBITER_SUPPORT=y"], |
| }, |
| mali_dma_buf_map_on_demand: { |
| kbuild_options: ["CONFIG_MALI_DMA_BUF_MAP_ON_DEMAND=y"], |
| }, |
| mali_dma_buf_legacy_compat: { |
| kbuild_options: ["CONFIG_MALI_DMA_BUF_LEGACY_COMPAT=y"], |
| }, |
| mali_2mb_alloc: { |
| kbuild_options: ["CONFIG_MALI_2MB_ALLOC=y"], |
| }, |
| mali_memory_fully_backed: { |
| kbuild_options: ["CONFIG_MALI_MEMORY_FULLY_BACKED=y"], |
| }, |
| mali_corestack: { |
| kbuild_options: ["CONFIG_MALI_CORESTACK=y"], |
| }, |
| mali_real_hw: { |
| kbuild_options: ["CONFIG_MALI_REAL_HW=y"], |
| }, |
| mali_error_inject_none: { |
| kbuild_options: ["CONFIG_MALI_ERROR_INJECT_NONE=y"], |
| }, |
| mali_error_inject_track_list: { |
| kbuild_options: ["CONFIG_MALI_ERROR_INJECT_TRACK_LIST=y"], |
| }, |
| mali_error_inject_random: { |
| kbuild_options: ["CONFIG_MALI_ERROR_INJECT_RANDOM=y"], |
| }, |
| mali_error_inject: { |
| kbuild_options: ["CONFIG_MALI_ERROR_INJECT=y"], |
| }, |
| mali_gem5_build: { |
| kbuild_options: ["CONFIG_MALI_GEM5_BUILD=y"], |
| }, |
| mali_debug: { |
| kbuild_options: [ |
| "CONFIG_MALI_DEBUG=y", |
| "MALI_KERNEL_TEST_API={{.debug}}", |
| ], |
| }, |
| mali_fence_debug: { |
| kbuild_options: ["CONFIG_MALI_FENCE_DEBUG=y"], |
| }, |
| mali_system_trace: { |
| kbuild_options: ["CONFIG_MALI_SYSTEM_TRACE=y"], |
| }, |
| buslog: { |
| kbuild_options: ["CONFIG_MALI_BUSLOG=y"], |
| }, |
| cinstr_vector_dump: { |
| kbuild_options: ["CONFIG_MALI_VECTOR_DUMP=y"], |
| }, |
| cinstr_gwt: { |
| kbuild_options: ["CONFIG_MALI_CINSTR_GWT=y"], |
| }, |
| cinstr_primary_hwc: { |
| kbuild_options: ["CONFIG_MALI_PRFCNT_SET_PRIMARY=y"], |
| }, |
| cinstr_secondary_hwc: { |
| kbuild_options: ["CONFIG_MALI_PRFCNT_SET_SECONDARY=y"], |
| }, |
| cinstr_tertiary_hwc: { |
| kbuild_options: ["CONFIG_MALI_PRFCNT_SET_TERTIARY=y"], |
| }, |
| cinstr_hwc_set_select_via_debug_fs: { |
| kbuild_options: ["CONFIG_MALI_PRFCNT_SET_SELECT_VIA_DEBUG_FS=y"], |
| }, |
| mali_job_dump: { |
| kbuild_options: ["CONFIG_MALI_JOB_DUMP"], |
| }, |
| mali_pwrsoft_765: { |
| kbuild_options: ["CONFIG_MALI_PWRSOFT_765=y"], |
| }, |
| mali_hw_errata_1485982_not_affected: { |
| kbuild_options: ["CONFIG_MALI_HW_ERRATA_1485982_NOT_AFFECTED=y"], |
| }, |
| mali_hw_errata_1485982_use_clock_alternative: { |
| kbuild_options: ["CONFIG_MALI_HW_ERRATA_1485982_USE_CLOCK_ALTERNATIVE=y"], |
| }, |
| kbuild_options: [ |
| "CONFIG_MALI_PLATFORM_NAME={{.mali_platform_name}}", |
| "MALI_CUSTOMER_RELEASE={{.release}}", |
| "MALI_UNIT_TEST={{.unit_test_code}}", |
| "MALI_USE_CSF={{.gpu_has_csf}}", |
| "MALI_JIT_PRESSURE_LIMIT_BASE={{.jit_pressure_limit_base}}", |
| |
| // Start of CS experimental features definitions. |
| // If there is nothing below, definition should be added as follows: |
| // "MALI_EXPERIMENTAL_FEATURE={{.experimental_feature}}" |
| // experimental_feature above comes from Mconfig in |
| // <ddk_root>/product/base/ |
| // However, in Mconfig, experimental_feature should be looked up (for |
| // similar explanation to this one) as ALLCAPS, i.e. |
| // EXPERIMENTAL_FEATURE. |
| // |
| // IMPORTANT: MALI_CS_EXPERIMENTAL should NEVER be defined below as it |
| // is an umbrella feature that would be open for inappropriate use |
| // (catch-all for experimental CS code without separating it into |
| // different features). |
| "MALI_INCREMENTAL_RENDERING={{.incremental_rendering}}", |
| "GPU_TIMESTAMP_CORRECTION={{.gpu_timestamp_correction}}", |
| ], |
| } |
| |
| bob_kernel_module { |
| name: "mali_kbase", |
| defaults: [ |
| "mali_kbase_shared_config_defaults", |
| ], |
| srcs: [ |
| "*.c", |
| "*.h", |
| "Kbuild", |
| "backend/gpu/*.c", |
| "backend/gpu/*.h", |
| "backend/gpu/Kbuild", |
| "context/*.c", |
| "context/*.h", |
| "context/Kbuild", |
| "ipa/*.c", |
| "ipa/*.h", |
| "ipa/Kbuild", |
| "platform/*.h", |
| "platform/*/*.c", |
| "platform/*/*.h", |
| "platform/*/Kbuild", |
| "thirdparty/*.c", |
| "thirdparty/Kbuild", |
| "debug/*.c", |
| "debug/*.h", |
| "debug/Kbuild", |
| "device/*.c", |
| "device/*.h", |
| "device/Kbuild", |
| "gpu/*.c", |
| "gpu/*.h", |
| "gpu/Kbuild", |
| "tl/*.c", |
| "tl/*.h", |
| "tl/Kbuild", |
| "mmu/*.c", |
| "mmu/*.h", |
| "mmu/Kbuild", |
| ], |
| gpu_has_job_manager: { |
| srcs: [ |
| "context/backend/*_jm.c", |
| "debug/backend/*_jm.c", |
| "debug/backend/*_jm.h", |
| "device/backend/*_jm.c", |
| "gpu/backend/*_jm.c", |
| "gpu/backend/*_jm.h", |
| "jm/*.h", |
| "tl/backend/*_jm.c", |
| "mmu/backend/*_jm.c", |
| "ipa/backend/*_jm.c", |
| "ipa/backend/*_jm.h", |
| ], |
| }, |
| gpu_has_csf: { |
| srcs: [ |
| "context/backend/*_csf.c", |
| "csf/*.c", |
| "csf/*.h", |
| "csf/Kbuild", |
| "csf/ipa_control/*.c", |
| "csf/ipa_control/*.h", |
| "csf/ipa_control/Kbuild", |
| "debug/backend/*_csf.c", |
| "debug/backend/*_csf.h", |
| "device/backend/*_csf.c", |
| "gpu/backend/*_csf.c", |
| "gpu/backend/*_csf.h", |
| "tl/backend/*_csf.c", |
| "mmu/backend/*_csf.c", |
| "ipa/backend/*_csf.c", |
| "ipa/backend/*_csf.h", |
| ], |
| }, |
| mali_arbiter_support: { |
| srcs: [ |
| "arbiter/*.c", |
| "arbiter/*.h", |
| "arbiter/Kbuild", |
| ], |
| }, |
| kbuild_options: [ |
| "CONFIG_MALI_MIDGARD=m", |
| "CONFIG_MALI_KUTF=n", |
| ], |
| buslog: { |
| extra_symbols: [ |
| "bus_logger", |
| ], |
| }, |
| } |