package genconfig

configuration conf {
	include embox.arch.system(core_freq=48054841)
	include embox.arch.arm.armv5te.cpu_idle
	include embox.arch.arm.armlib.locore
	include embox.arch.arm.armlib.interrupt
	include embox.arch.arm.armlib.context
	include embox.arch.arm.armlib.mem_barriers
	include embox.arch.arm.stackframe
	include embox.arch.arm.libarch
	include embox.arch.arm.vfork
	include embox.arch.arm.cxxabi

//	@Runlevel(0) include embox.arch.arm.fpu.vfpv2(log_level="LOG_INFO")

	@Runlevel(0) include embox.arch.arm.mmu_small_page(
				domain_access=1,v5_format=1)
	@Runlevel(0) include embox.arch.arm.mmuinfo

	include embox.driver.serial.pl011
	include embox.driver.serial.pl011_diag(base_addr=0x16000000)
	include embox.driver.serial.pl011_ttyS0(base_addr=0x16000000, irq_num=1)
	include embox.driver.diag(impl="embox__driver__serial__pl011_diag")

	@Runlevel(1) include embox.driver.interrupt.integrator_pic
	@Runlevel(1) include embox.driver.clock.integrator_pit(base_addr=0x13000000)
	include embox.kernel.time.jiffies(cs_name="integratorcp")

	@Runlevel(1) include embox.driver.net.lan91c111(base_addr=0xC8000000)
	@Runlevel(2) include embox.driver.net.loopback

	@Runlevel(2) include embox.driver.mmc.pl181(
		base_addr=0x1C000000,
		irq0_num=23, irq1_num=24, log_level="LOG_NONE")
	@Runlevel(2) include embox.driver.mmc.mmc_core(log_level="LOG_NONE")
	@Runlevel(1) include embox.driver.video.pl110

	include embox.kernel.spinlock(spin_debug=false)

	@Runlevel(2) include embox.lib.debug.whereami
	@Runlevel(2) include embox.profiler.tracing
	
	@Runlevel(0) include embox.kernel.stack(stack_size=1048576)

	@Runlevel(2) include embox.fs.dvfs.core
	@Runlevel(2) include embox.fs.driver.initfs_dvfs
	@Runlevel(2) include embox.fs.rootfs_dvfs
	include embox.compat.posix.file_system_dvfs
	include embox.fs.driver.devfs_dvfs

	@Runlevel(1) include embox.kernel.timer.sys_timer
	@Runlevel(1) include embox.kernel.time.kernel_time
	include embox.kernel.thread.signal.sigstate
	include embox.kernel.thread.signal.siginfoq

	@Runlevel(2) include embox.kernel.task.multi
	@Runlevel(2) include embox.kernel.thread.core(
				thread_pool_size=16, thread_stack_size=1048576)
	@Runlevel(2) include embox.kernel.sched.strategy.priority_based
	@Runlevel(2) include embox.kernel.timer.sleep
	@Runlevel(2) include embox.kernel.timer.strategy.head_timer
	@Runlevel(2) include embox.kernel.irq
	@Runlevel(2) include embox.kernel.critical

	@Runlevel(2) include embox.mem.static_heap(heap_size=13007728)
	@Runlevel(2) include embox.mem.heap_bm(heap_size=6700864)
	@Runlevel(2) include embox.cmd.sh.tish(
				prompt="%u@%h:%w%$", rich_prompt_support=1,
				builtin_commands="exit logout cd export mount umount")
	include embox.init.system_start_service(log_level="LOG_INFO", tty_dev="ttyS0")

	include embox.cmd.fs.cat
	include embox.cmd.fs.cd
	include embox.cmd.fs.pwd
	include embox.cmd.fs.ls
	include embox.cmd.fs.echo
	include embox.cmd.fs.cp
	include embox.cmd.fs.mv

	include embox.cmd.help
	include embox.cmd.man

	include embox.cmd.sys.uname
	include embox.cmd.sys.export
	include embox.cmd.sys.version
	include embox.cmd.sys.shutdown

	include embox.cmd.test

	include embox.compat.atomic.pseudo_atomic

	include embox.compat.libc.math_openlibm

	include embox.compat.posix.pthread_key
	include embox.compat.posix.time.time

	@Runlevel (2) include embox.lib.cxx.ConstructionSingleApp
	include embox.lib.cxx.DestructionStatic(table_size=2048)

	include third_party.gcc.libstdcxx
	include third_party.gcc.libsupcxx

	include third_party.lib.ffmpeg.all

	include platform.ffmpeg.cmds.ffmpeg_version
	include platform.ffmpeg.cmds.ffmpeg_test
	include platform.ffmpeg.data_samples.sample_avi
	include platform.ffmpeg.data_samples.test_mp4
}
