package genconfig

configuration conf {
	include embox.arch.system(core_freq=0x18000000)
	include embox.arch.arm.armv7a.head
	include embox.arch.arm.armv7a.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.armlib.static_excpt_table
	include embox.arch.arm.vfork
	include embox.arch.arm.libarch
	
	@Runlevel(0) include embox.arch.arm.mmu_small_page
	@Runlevel(0) include embox.arch.arm.fpu.vfpv3
	
	include embox.kernel.cpu.bkl
	include embox.kernel.cpu.cpudata
	include embox.kernel.irq

	@Runlevel(0) include embox.driver.cache.pl310(base_addr=0x1e00a000)

	include embox.mem.bitmask(page_size=0x1000)
	@Runlevel(2) include embox.mem.static_heap(heap_size=0x1000000)

	@Runlevel(0) include embox.mem.mmap
	//@Runlevel(0) include embox.mem.vmem
	@Runlevel(0) include embox.kernel.critical

	include embox.driver.interrupt.gicv1(gicd_base=0xfffed000, gicc_base=0xfffec100)
	@Runlevel(0) include embox.driver.clock.cortexa9(periph_base_addr=0xFFFEC000,irq_num=29)
	include embox.kernel.time.jiffies(cs_name="cortexa9_timer")

	include embox.driver.serial.ns16550
	include embox.driver.serial.ns16550_diag(base_addr=0xffc02000)
	include embox.driver.serial.ns16550_ttyS0(base_addr=0xffc02000, irq_num=0)
	include embox.driver.diag(impl="embox__driver__serial__ns16550_diag")

	@Runlevel(2) include embox.driver.net.dwc_gmac(log_level="LOG_ERR", base_addr=0xFF700000, irq_num=147)
	@Runlevel(2) include embox.driver.net.phy(log_level="LOG_DEBUG")

	include embox.compat.libc.stdio.print(support_floating=1)

	include embox.test.kernel.timer_test
	include embox.kernel.task.resource.errno

	@Runlevel(1) include embox.kernel.sched.strategy.priority_based

	@Runlevel(2) include embox.kernel.task.multi
	@Runlevel(2) include embox.kernel.stack(stack_size=0x20000)

	@Runlevel(1) include embox.kernel.thread.core(thread_pool_size=64, thread_stack_size=0x20000)

	@Runlevel(2) include embox.compat.libc.test.fpu_context_consistency_test

	@Runlevel(2) include embox.fs.driver.initfs
	@Runlevel(2) include embox.fs.rootfs_oldfs
	@Runlevel(2) include embox.fs.driver.devfs
	@Runlevel(2) include embox.fs.node(fnode_quantity=512)
	include embox.compat.posix.file_system_oldfs

	@Runlevel(2) include embox.cmd.sh.tish(prompt="embox#")
	@Runlevel(3) include embox.init.start_script(shell_name="tish", tty_dev="ttyS0", shell_start=1, stop_on_error=true)

	include embox.cmd.help
	include embox.cmd.sys.version

	include embox.cmd.testing.ticker

	include embox.cmd.fs.ls

	include embox.cmd.service
	include embox.cmd.net.arp
	include embox.cmd.net.arping
	include embox.cmd.net.ping
	include embox.cmd.net.ifconfig
	include embox.cmd.net.route
	include embox.cmd.net.telnetd
	include embox.cmd.net.httpd
	include embox.demo.website

	include embox.net.dev
	include embox.net.skbuff(amount_skb=4000)
	include embox.net.skbuff_data(amount_skb_data=4000,data_size=1514,data_align=64,data_padto=64,ip_align=true)
	include embox.net.core
	include embox.net.net_entry
	include embox.net.l2.ethernet
	include embox.net.arp
	include embox.net.af_inet
	include embox.net.ipv4
	include embox.net.icmpv4
	include embox.net.udp
	include embox.net.tcp
	include embox.net.udp_sock
	include embox.net.tcp_sock
	include embox.net.raw_sock
	include embox.net.lib.dns_fixed(nameserver="192.168.0.1")
	include embox.test.net.socket_test(family=2,type=1,proto=0) /* AF_INET, SOCK_STREAM, default */
	include embox.test.net.inet_socket_test(type=1,proto=0) /* SOCK_STREAM, default */
	include embox.test.net.inet_dgram_socket_test(proto=0) /* default */
	include embox.test.net.inet_stream_socket_test(proto=0) /* default */

	include embox.net.tcp(log_level="LOG_ERR")
}
