# The Astar MID756 is a 7" tablet using the A33 SoC with a 800x480 LCD screen,
# 512M RAM, 8G ROM and integrated sdio wifi.
#
# Also see: http://linux-sunxi.org/Softwinner_astar-rda
CONFIG_SPL=y
CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=5"
CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-astar-mid756"
CONFIG_USB_MUSB_SUNXI=y
CONFIG_USB0_VBUS_PIN="AXP0-VBUS-ENABLE"
CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT"
CONFIG_AXP_GPIO=y
CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:87,ri:168,up:31,lo:13,hs:1,vs:1,sync:3,vmode:0"
CONFIG_VIDEO_LCD_DCLK_PHASE=0
CONFIG_VIDEO_LCD_POWER="PH7"
CONFIG_VIDEO_LCD_BL_EN="PH6"
CONFIG_VIDEO_LCD_BL_PWM="PH0"
CONFIG_ARM=y
CONFIG_ARCH_SUNXI=y
CONFIG_MACH_SUN8I_A33=y
CONFIG_DRAM_CLK=480
# zq = 0x3bbb
CONFIG_DRAM_ZQ=15291
# Wifi power
CONFIG_AXP221_DLDO1_VOLT=3300
# aldo1 is connected to VCC-IO, VCC-PD, VCC-USB and VCC-HP
CONFIG_AXP221_ALDO1_VOLT=3000
