add workqueue for delaying work. add init cdev dynamiclyy

Signed-off-by: ligang <ligang@ligang-System-Product-Name.(none)>
add irq

Signed-off-by: ligang <ligang@ligang-System-Product-Name.(none)>
add .h file

Signed-off-by: ligang <ligang@ligang-System-Product-Name.(none)>
test

Signed-off-by: ligang <ligang@ligang-System-Product-Name.(none)>