initial committ

based on 3.18.rc2 kernel release. it is not working as it should be.