# yocto-bsp-filename {{=machine}}.conf
#@TYPE: Machine
#@NAME: {{=machine}}

#@DESCRIPTION: Machine configuration for {{=machine}} systems

{{ if kernel_choice == "custom": preferred_kernel = "linux-yocto-custom" }}
{{ if kernel_choice == "linux-yocto-dev": preferred_kernel = "linux-yocto-dev" }}
{{ if kernel_choice == "custom" or kernel_choice == "linux-yocto-dev" : }}
PREFERRED_PROVIDER_virtual/kernel ?= "{{=preferred_kernel}}"

{{ if kernel_choice != "custom" and kernel_choice != "linux-yocto-dev": preferred_kernel = kernel_choice.split('_')[0] }}
{{ if kernel_choice != "custom" and kernel_choice != "linux-yocto-dev": preferred_kernel_version = kernel_choice.split('_')[1] }}
{{ if kernel_choice != "custom" and kernel_choice != "linux-yocto-dev": }}
PREFERRED_PROVIDER_virtual/kernel ?= "{{=preferred_kernel}}"
PREFERRED_VERSION_{{=preferred_kernel}} ?= "{{=preferred_kernel_version}}%"

{{ input type:"choicelist" name:"tunefile" prio:"40" msg:"Which machine tuning would you like to use?" default:"tune_core2" }}
{{ input type:"choice" val:"tune_i586" msg:"i586 tuning optimizations" }}
{{ input type:"choice" val:"tune_atom" msg:"Atom tuning optimizations" }}
{{ input type:"choice" val:"tune_core2" msg:"Core2 tuning optimizations" }}
{{ if tunefile == "tune_i586": }}
require conf/machine/include/tune-i586.inc
{{ if tunefile == "tune_atom": }}
require conf/machine/include/tune-atom.inc
{{ if tunefile == "tune_core2": }}
DEFAULTTUNE="core2-32"
require conf/machine/include/tune-core2.inc

require conf/machine/include/x86-base.inc

MACHINE_FEATURES += "wifi efi pcbios"

{{ input type:"boolean" name:"xserver" prio:"50" msg:"Do you need support for X? (y/n)" default:"y" }}

{{ if xserver == "y" and (kernel_choice == "linux-yocto_3.19" or kernel_choice == "linux-yocto_3.14"): }}
{{ input type:"choicelist" name:"xserver_choice" prio:"50" msg:"Please select an xserver for this machine:" default:"xserver_vesa" }}
{{ input type:"choice" val:"xserver_vesa" msg:"VESA xserver support" }}
{{ input type:"choice" val:"xserver_i915" msg:"i915 xserver support" }}
{{ input type:"choice" val:"xserver_i965" msg:"i965 xserver support" }}
{{ input type:"choice" val:"xserver_fbdev" msg:"fbdev xserver support" }}
{{ input type:"choice" val:"xserver_modesetting" msg:"modesetting xserver support" }}

{{ if xserver == "y" and kernel_choice == "custom": }}
{{ input type:"choicelist" name:"xserver_choice" prio:"50" msg:"Please select an xserver for this machine:" default:"xserver_vesa" }}
{{ input type:"choice" val:"xserver_vesa" msg:"VESA xserver support" }}
{{ input type:"choice" val:"xserver_i915" msg:"i915 xserver support" }}
{{ input type:"choice" val:"xserver_i965" msg:"i965 xserver support" }}
{{ input type:"choice" val:"xserver_fbdev" msg:"fbdev xserver support" }}
{{ input type:"choice" val:"xserver_modesetting" msg:"modesetting xserver support" }}

{{ if xserver == "y" and kernel_choice != "linux-yocto_3.19" and kernel_choice != "linux-yocto_3.14" and kernel_choice != "custom": xserver_choice = "xserver_i915" }}

{{ if xserver == "y": }}
XSERVER ?= "${XSERVER_X86_BASE} \
           ${XSERVER_X86_EXT} \
{{ if xserver == "y" and xserver_choice == "xserver_vesa": }}
           ${XSERVER_X86_VESA} \
{{ if xserver == "y" and xserver_choice == "xserver_i915": }}
           ${XSERVER_X86_I915} \
{{ if xserver == "y" and xserver_choice == "xserver_i965": }}
           ${XSERVER_X86_I965} \
{{ if xserver == "y" and xserver_choice == "xserver_fbdev": }}
           ${XSERVER_X86_FBDEV} \
{{ if xserver == "y" and xserver_choice == "xserver_modesetting": }}
           ${XSERVER_X86_MODESETTING} \
{{ if xserver == "y": }}
           "

MACHINE_EXTRA_RRECOMMENDS += "linux-firmware v86d eee-acpi-scripts"

EXTRA_OECONF_append_pn-matchbox-panel-2 = " --with-battery=acpi"

GLIBC_ADDONS = "nptl"

{{ if xserver == "y" and xserver_choice == "xserver_vesa": }}
APPEND += "video=vesafb vga=0x318"
