mirror of
https://github.com/genodelabs/genode.git
synced 2025-02-20 09:46:20 +00:00
parent
bb06e8451a
commit
a67bc59686
@ -17,11 +17,14 @@ endif
|
||||
ifeq ($(filter-out $(SPECS),x86_64),)
|
||||
INC_DIR += $(VIRT_LINUX_INCLUDE_DIR)/spec/x86_64
|
||||
endif
|
||||
ifeq ($(filter-out $(SPECS),arm),)
|
||||
INC_DIR += $(VIRT_LINUX_INCLUDE_DIR)/spec/arm
|
||||
ifeq ($(filter-out $(SPECS),arm_v6),)
|
||||
INC_DIR += $(VIRT_LINUX_INCLUDE_DIR)/spec/arm_v6
|
||||
endif
|
||||
ifeq ($(filter-out $(SPECS),arm_64),)
|
||||
INC_DIR += $(VIRT_LINUX_INCLUDE_DIR)/spec/arm_64
|
||||
ifeq ($(filter-out $(SPECS),arm_v7),)
|
||||
INC_DIR += $(VIRT_LINUX_INCLUDE_DIR)/spec/arm_v7
|
||||
endif
|
||||
ifeq ($(filter-out $(SPECS),arm_v8),)
|
||||
INC_DIR += $(VIRT_LINUX_INCLUDE_DIR)/spec/arm_v8
|
||||
endif
|
||||
|
||||
-include $(call select_from_repositories,lib/import/import-lx_emul_common.inc)
|
||||
@ -41,9 +44,12 @@ ifeq ($(filter-out $(SPECS),x86),)
|
||||
#
|
||||
CC_DEF += -DARCH_DMA_MINALIGN=16 -DARCH_SLAB_MINALIGN=1
|
||||
endif
|
||||
ifeq ($(filter-out $(SPECS),arm_64),)
|
||||
SRC_C += lx_emul/virt/spec/arm_64/dummies_arch.c
|
||||
endif
|
||||
ifeq ($(filter-out $(SPECS),arm),)
|
||||
ifeq ($(filter-out $(SPECS),arm_v6),)
|
||||
SRC_C += lx_emul/virt/spec/arm/dummies_arch.c
|
||||
endif
|
||||
ifeq ($(filter-out $(SPECS),arm_v7),)
|
||||
SRC_C += lx_emul/virt/spec/arm/dummies_arch.c
|
||||
endif
|
||||
ifeq ($(filter-out $(SPECS),arm_v8),)
|
||||
SRC_C += lx_emul/virt/spec/arm_v8/dummies_arch.c
|
||||
endif
|
||||
|
@ -1,3 +1,6 @@
|
||||
LINUX_ARCH=arm
|
||||
|
||||
# arm_v7 specific kernel configuration
|
||||
include $(REP_DIR)/src/virt_linux/arm_v7/target.inc
|
||||
|
||||
include $(REP_DIR)/lib/mk/virt_linux_generated.inc
|
||||
|
@ -4,8 +4,9 @@
|
||||
|
||||
MIRRORED_FROM_REP_DIR := lib/import/import-lx_emul_common.inc \
|
||||
lib/import/import-virt_lx_emul.mk \
|
||||
lib/mk/spec/arm/virt_linux_generated.mk \
|
||||
lib/mk/spec/arm_64/virt_linux_generated.mk \
|
||||
lib/mk/spec/arm_v6/virt_linux_generated.mk \
|
||||
lib/mk/spec/arm_v7/virt_linux_generated.mk \
|
||||
lib/mk/spec/arm_v8/virt_linux_generated.mk \
|
||||
lib/mk/spec/x86_32/virt_linux_generated.mk \
|
||||
lib/mk/spec/x86_64/virt_linux_generated.mk \
|
||||
lib/mk/virt_linux_generated.inc \
|
||||
@ -20,6 +21,8 @@ MIRRORED_FROM_REP_DIR := lib/import/import-lx_emul_common.inc \
|
||||
src/lib/lx_emul \
|
||||
src/lib/lx_kit \
|
||||
src/virt_linux/target.inc \
|
||||
src/virt_linux/arm_v6/target.inc \
|
||||
src/virt_linux/arm_v7/target.inc \
|
||||
src/include/lx_user
|
||||
|
||||
content: $(MIRRORED_FROM_REP_DIR)
|
||||
|
@ -0,0 +1,175 @@
|
||||
/*
|
||||
* \brief Array defining order of Linux Kernel initcalls
|
||||
* \author Automatically generated file - do no edit
|
||||
* \date 2024-01-16
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
static const char * lx_emul_initcall_order[] = {
|
||||
"__initcall_allocate_overflow_stacksearly",
|
||||
"__initcall_start",
|
||||
"__initcall_init_static_idmapearly",
|
||||
"__initcall_spawn_ksoftirqdearly",
|
||||
"__initcall_migration_initearly",
|
||||
"__initcall_srcu_bootup_announceearly",
|
||||
"__initcall_rcu_sysrq_initearly",
|
||||
"__initcall_check_cpu_stall_initearly",
|
||||
"__initcall_rcu_spawn_gp_kthreadearly",
|
||||
"__initcall_cpu_stop_initearly",
|
||||
"__initcall_irq_work_init_threadsearly",
|
||||
"__initcall_init_zero_pfnearly",
|
||||
"__initcall_dummy_timer_registerearly",
|
||||
"__initcall_init_mmap_min_addr0",
|
||||
"__initcall_pci_realloc_setup_params0",
|
||||
"__initcall_inet_frag_wq_init0",
|
||||
"__initcall_ptrace_break_init1",
|
||||
"__initcall_v6_userpage_init1",
|
||||
"__initcall_ksysfs_init1",
|
||||
"__initcall_rcu_set_runtime_mode1",
|
||||
"__initcall_init_jiffies_clocksource1",
|
||||
"__initcall_init_elf_binfmt1",
|
||||
"__initcall_virtio_init1",
|
||||
"__initcall_free_raw_capacity1",
|
||||
"__initcall_sock_init1",
|
||||
"__initcall_net_defaults_init1",
|
||||
"__initcall_init_default_flow_dissectors1",
|
||||
"__initcall_netlink_proto_init1",
|
||||
"__initcall_genl_init1",
|
||||
"__initcall_atomic_pool_init2",
|
||||
"__initcall_bdi_class_init2",
|
||||
"__initcall_mm_sysfs_init2",
|
||||
"__initcall_init_per_zone_wmark_min2",
|
||||
"__initcall_pcibus_class_init2",
|
||||
"__initcall_pci_driver_init2",
|
||||
"__initcall_tty_class_init2",
|
||||
"__initcall_vtconsole_class_init2",
|
||||
"__initcall_devlink_class_init2",
|
||||
"__initcall_software_node_init2",
|
||||
"__initcall_kobject_uevent_init2",
|
||||
"__initcall_gate_vma_init3",
|
||||
"__initcall_customize_machine3",
|
||||
"__initcall_exceptions_init3",
|
||||
"__initcall_of_platform_default_populate_init3s",
|
||||
"__initcall_topology_init4",
|
||||
"__initcall_uid_cache_init4",
|
||||
"__initcall_user_namespace_sysctl_init4",
|
||||
"__initcall_oom_init4",
|
||||
"__initcall_default_bdi_init4",
|
||||
"__initcall_percpu_enable_async4",
|
||||
"__initcall_kcompactd_init4",
|
||||
"__initcall_init_reserve_notifier4",
|
||||
"__initcall_init_admin_reserve4",
|
||||
"__initcall_init_user_reserve4",
|
||||
"__initcall_aes_init4",
|
||||
"__initcall_prng_mod_init4",
|
||||
"__initcall_misc_init4",
|
||||
"__initcall_register_cpu_capacity_sysctl4",
|
||||
"__initcall_phy_init4",
|
||||
"__initcall_usb_common_init4",
|
||||
"__initcall_usb_init4",
|
||||
"__initcall_input_init4",
|
||||
"__initcall_leds_init4",
|
||||
"__initcall_net_dev_init4",
|
||||
"__initcall_neigh_init4",
|
||||
"__initcall_fib_notifier_init4",
|
||||
"__initcall_ethnl_init4",
|
||||
"__initcall_nexthop_init4",
|
||||
"__initcall_vsprintf_init_hashval4",
|
||||
"__initcall_alignment_init5",
|
||||
"__initcall_iomem_init_inode5",
|
||||
"__initcall_clocksource_done_booting5",
|
||||
"__initcall_init_pipe_fs5",
|
||||
"__initcall_anon_inode_init5",
|
||||
"__initcall_init_ramfs_fs5",
|
||||
"__initcall_chr_dev_init5",
|
||||
"__initcall_hwrng_modinit5",
|
||||
"__initcall_eth_offload_init5",
|
||||
"__initcall_inet_init5",
|
||||
"__initcall_ipv4_offload_init5",
|
||||
"__initcall_ipv6_offload_init5",
|
||||
"__initcall_pci_apply_final_quirks5s",
|
||||
"__initcall_populate_rootfsrootfs",
|
||||
"__initcall_chacha_simd_mod_init6",
|
||||
"__initcall_arm_poly1305_mod_init6",
|
||||
"__initcall_timekeeping_init_ops6",
|
||||
"__initcall_alarmtimer_init6",
|
||||
"__initcall_sched_clock_syscore_init6",
|
||||
"__initcall_kswapd_init6",
|
||||
"__initcall_mm_compute_batch_init6",
|
||||
"__initcall_workingset_init6",
|
||||
"__initcall_fcntl_init6",
|
||||
"__initcall_start_dirtytime_writeback6",
|
||||
"__initcall_init_devpts_fs6",
|
||||
"__initcall_jent_mod_init6",
|
||||
"__initcall_blake2s_mod_init6",
|
||||
"__initcall_chacha20poly1305_init6",
|
||||
"__initcall_curve25519_init6",
|
||||
"__initcall_percpu_counter_startup6",
|
||||
"__initcall_simple_pm_bus_driver_init6",
|
||||
"__initcall_of_fixed_factor_clk_driver_init6",
|
||||
"__initcall_of_fixed_clk_driver_init6",
|
||||
"__initcall_gpio_clk_driver_init6",
|
||||
"__initcall_virtio_pci_driver_init6",
|
||||
"__initcall_n_null_init6",
|
||||
"__initcall_pty_init6",
|
||||
"__initcall_virtio_console_init6",
|
||||
"__initcall_timeriomem_rng_driver_init6",
|
||||
"__initcall_topology_sysfs_init6",
|
||||
"__initcall_cacheinfo_sysfs_init6",
|
||||
"__initcall_wg_mod_init6",
|
||||
"__initcall_blackhole_netdev_init6",
|
||||
"__initcall_phylink_init6",
|
||||
"__initcall_phy_module_init6",
|
||||
"__initcall_fixed_mdio_bus_init6",
|
||||
"__initcall_phy_module_init6",
|
||||
"__initcall_virtio_net_driver_init6",
|
||||
"__initcall_asix_driver_init6",
|
||||
"__initcall_ax88179_178a_driver_init6",
|
||||
"__initcall_cdc_driver_init6",
|
||||
"__initcall_smsc95xx_driver_init6",
|
||||
"__initcall_usbnet_init6",
|
||||
"__initcall_cdc_ncm_driver_init6",
|
||||
"__initcall_cdc_mbim_driver_init6",
|
||||
"__initcall_r8153_ecm_driver_init6",
|
||||
"__initcall_net_failover_init6",
|
||||
"__initcall_wdm_driver_init6",
|
||||
"__initcall_input_leds_init6",
|
||||
"__initcall_evdev_init6",
|
||||
"__initcall_hid_init6",
|
||||
"__initcall_hid_generic_init6",
|
||||
"__initcall_apple_driver_init6",
|
||||
"__initcall_ch_driver_init6",
|
||||
"__initcall_holtek_kbd_driver_init6",
|
||||
"__initcall_holtek_mouse_driver_init6",
|
||||
"__initcall_holtek_driver_init6",
|
||||
"__initcall_ms_driver_init6",
|
||||
"__initcall_hid_init6",
|
||||
"__initcall_sock_diag_init6",
|
||||
"__initcall_failover_init6",
|
||||
"__initcall_gre_offload_init6",
|
||||
"__initcall_tunnel4_init6",
|
||||
"__initcall_inet_diag_init6",
|
||||
"__initcall_tcp_diag_init6",
|
||||
"__initcall_cubictcp_register6",
|
||||
"__initcall_inet6_init6",
|
||||
"__initcall_sit_init6",
|
||||
"__initcall_init_machine_late7",
|
||||
"__initcall_swp_emulation_init7",
|
||||
"__initcall_printk_late_init7",
|
||||
"__initcall_check_early_ioremap_leak7",
|
||||
"__initcall_crypto_algapi_init7",
|
||||
"__initcall_pci_resource_alignment_sysfs_init7",
|
||||
"__initcall_pci_sysfs_init7",
|
||||
"__initcall_sync_state_resume_initcall7",
|
||||
"__initcall_deferred_probe_initcall7",
|
||||
"__initcall_tcp_congestion_default7",
|
||||
"__initcall_udp_tunnel_nic_init_module7",
|
||||
"__initcall_ip_auto_config7",
|
||||
"__initcall_clk_disable_unused7s",
|
||||
"__initcall_of_platform_sync_state_init7s",
|
||||
"__initcall_con_initcon",
|
||||
"__initcall_end",
|
||||
"__initcall_hvc_console_initcon",
|
||||
"END_OF_INITCALL_ORDER_ARRAY_DUMMY_ENTRY"
|
||||
};
|
8
repos/dde_linux/src/virt_linux/arm_v6/target.inc
Normal file
8
repos/dde_linux/src/virt_linux/arm_v6/target.inc
Normal file
@ -0,0 +1,8 @@
|
||||
#
|
||||
# Linux architecture specific kernel configuration
|
||||
#
|
||||
|
||||
LX_ENABLE += ARCH_MULTI_V6
|
||||
|
||||
# do not generate thumb instructions
|
||||
LX_DISABLE += THUMB2_KERNEL DEBUG_PREEMPT
|
@ -1,5 +1,5 @@
|
||||
TARGET := arm_virt_linux
|
||||
REQUIRES := arm
|
||||
REQUIRES := arm_v6
|
||||
|
||||
CUSTOM_TARGET_DEPS := kernel_build.phony
|
||||
|
||||
@ -18,6 +18,7 @@ LX_MK_ARGS = ARCH=arm CROSS_COMPILE=$(CROSS_DEV_PREFIX) CC=$(CC) $(LX_MK_REPRODU
|
||||
#
|
||||
|
||||
# define 'LX_ENABLE' and 'LX_DISABLE'
|
||||
include $(REP_DIR)/src/virt_linux/arm_v6/target.inc
|
||||
include $(REP_DIR)/src/virt_linux/target.inc
|
||||
|
||||
# filter for make output of kernel build system
|
7
repos/dde_linux/src/virt_linux/arm_v7/target.inc
Normal file
7
repos/dde_linux/src/virt_linux/arm_v7/target.inc
Normal file
@ -0,0 +1,7 @@
|
||||
#
|
||||
# Linux architecture specific kernel configuration
|
||||
#
|
||||
|
||||
# do not generate thumb instructions on ARMv7 platforms
|
||||
LX_DISABLE += THUMB2_KERNEL ARM_VIRT_EXT DEBUG_PREEMPT
|
||||
|
41
repos/dde_linux/src/virt_linux/arm_v7/target.mk
Normal file
41
repos/dde_linux/src/virt_linux/arm_v7/target.mk
Normal file
@ -0,0 +1,41 @@
|
||||
TARGET := arm_virt_linux
|
||||
REQUIRES := arm_v7
|
||||
|
||||
CUSTOM_TARGET_DEPS := kernel_build.phony
|
||||
|
||||
LX_DIR := $(call select_from_ports,linux)/src/linux
|
||||
PWD := $(shell pwd)
|
||||
|
||||
# options for Linux kernel build to not depend on current time, user and host
|
||||
LX_MK_REPRODUCIBLE = KBUILD_BUILD_TIMESTAMP=no_timestamp KBUILD_BUILD_USER=genode KBUILD_BUILD_HOST=genode
|
||||
LX_MK_ARGS = ARCH=arm CROSS_COMPILE=$(CROSS_DEV_PREFIX) CC=$(CC) $(LX_MK_REPRODUCIBLE)
|
||||
|
||||
#
|
||||
# Linux kernel configuration
|
||||
#
|
||||
# Start with 'make tinyconfig', enable/disable options via 'scripts/config',
|
||||
# and resolve config dependencies via 'make olddefconfig'.
|
||||
#
|
||||
|
||||
# define 'LX_ENABLE' and 'LX_DISABLE'
|
||||
include $(REP_DIR)/src/virt_linux/arm_v7/target.inc
|
||||
include $(REP_DIR)/src/virt_linux/target.inc
|
||||
|
||||
# filter for make output of kernel build system
|
||||
BUILD_OUTPUT_FILTER = 2>&1 | sed "s/^/ [Linux] /"
|
||||
|
||||
kernel_config.tag:
|
||||
$(MSG_CONFIG)Linux
|
||||
$(VERBOSE)$(MAKE) -C $(LX_DIR) O=$(PWD) $(LX_MK_ARGS) tinyconfig $(BUILD_OUTPUT_FILTER)
|
||||
$(VERBOSE)$(LX_DIR)/scripts/config --file $(PWD)/.config $(addprefix --enable ,$(LX_ENABLE))
|
||||
$(VERBOSE)$(LX_DIR)/scripts/config --file $(PWD)/.config $(addprefix --disable ,$(LX_DISABLE))
|
||||
$(VERBOSE)$(MAKE) $(LX_MK_ARGS) olddefconfig $(BUILD_OUTPUT_FILTER)
|
||||
$(VERBOSE)$(MAKE) $(LX_MK_ARGS) prepare $(BUILD_OUTPUT_FILTER)
|
||||
$(VERBOSE)touch $@
|
||||
|
||||
# update Linux kernel config on makefile changes
|
||||
kernel_config.tag: $(MAKEFILE_LIST)
|
||||
|
||||
kernel_build.phony: kernel_config.tag
|
||||
$(MSG_BUILD)Linux
|
||||
$(VERBOSE)$(MAKE) $(LX_MK_ARGS) $(BUILD_OUTPUT_FILTER)
|
@ -1,5 +1,5 @@
|
||||
TARGET := arm_64_virt_linux
|
||||
REQUIRES := arm_64
|
||||
REQUIRES := arm_v8
|
||||
|
||||
CUSTOM_TARGET_DEPS := kernel_build.phony
|
||||
|
Loading…
x
Reference in New Issue
Block a user