add new kernel and more interfaces