merge from ingenic project