各位前輩大家好:
我是初學device driver的新手
目前正在看LDD 3/e中的範例scull裡的main.c
有個小問題想請要各位前輩
就是scull_open()裡面剛開始宣告了一個
struct scull_dev *dev;
接這便用
dev = container_of(inode->i_cdev, struct scull_dev, cdev);
去拿到scull_dev
這裡的問題是,看他scull_init_module()中並沒有把scull_devices array(他的type是struct scull_device)註冊進去
僅在scull_setup_cdev中把其cdev member用cdev_init()與cdev_add()準備好而已, 那這樣回到container_of那裡來看, 他要如何拿到這個scull_dev type的struct?
不知道這樣解釋是否清楚