#include #include #include #include #include #include #include #include #include #include #include #include #include #include static const struct of_device_id pinctrl_client_of_match[] = { { .compatible = "jzh,pinctrl-client", }, { }, }; static int pinctrl_client_probe(struct platform_device *pdev) { printk("%s %s %d\r\n", __FILE__, __FUNCTION__, __LINE__); return 0; } static int pinctrl_client_remove(struct platform_device *pdev) { printk("%s %s %d\r\n", __FILE__, __FUNCTION__, __LINE__); return 0; } static struct platform_driver pinctrl_client_driver = { .probe = pinctrl_client_probe, .remove = pinctrl_client_remove, .driver = { .name = "pinctrl-client", .of_match_table = of_match_ptr(pinctrl_client_of_match), }, }; static int __init pinctrl_client_init(void) { printk("%s %s %d\r\n", __FILE__, __FUNCTION__, __LINE__); return platform_driver_register(&pinctrl_client_driver); } static void __exit pinctrl_client_exit(void) { printk("%s %s %d\r\n", __FILE__, __FUNCTION__, __LINE__); platform_driver_unregister(&pinctrl_client_driver); } module_init(pinctrl_client_init); module_exit(pinctrl_client_exit); MODULE_DESCRIPTION("Virtual Pin Control Driver"); MODULE_AUTHOR("jzhgonha@163.com"); MODULE_LICENSE("GPL");