*参照元 [#b7a673ef]
#backlinks

*説明 [#z021f31d]
-パス: [[linux-2.6.33/include/linux/device.h]]

-FIXME: これは何?
--説明


**参考 [#v8171312]


*実装 [#b59a4e42]
 struct device {
 	struct device		*parent;
 
-
--[[linux-2.6.33/device]]

 	struct device_private	*p;
 
-
--[[linux-2.6.33/device_private]]

 	struct kobject kobj;
-
--[[linux-2.6.33/kobject]]

 	const char		*init_name; /* initial name of the device */
 	struct device_type	*type;
 
-
--[[linux-2.6.33/device_type]]

 	struct semaphore	sem;	/* semaphore to synchronize calls to
 					 * its driver.
 					 */
 
-
--[[linux-2.6.33/semaphore]]

 	struct bus_type	*bus;		/* type of bus device is on */
-
--[[linux-2.6.33/bus_type]]

 	struct device_driver *driver;	/* which driver has allocated this
 					   device */
-
--[[linux-2.6.33/driver]]

 	void		*platform_data;	/* Platform specific data, device
 					   core doesn't touch it */
 	struct dev_pm_info	power;
 
-
--[[linux-2.6.33/dev_pm_info]]

 #ifdef CONFIG_NUMA
 	int		numa_node;	/* NUMA node this device is close to */
 #endif
 	u64		*dma_mask;	/* dma mask (if dma'able device) */
 	u64		coherent_dma_mask;/* Like dma_mask, but for
 					     alloc_coherent mappings as
 					     not all hardware supports
 					     64 bit addresses for consistent
 					     allocations such descriptors. */
 
 	struct device_dma_parameters *dma_parms;
 
-
--[[linux-2.6.33/device_dma_parameters]]

 	struct list_head	dma_pools;	/* dma pools (if dma'ble) */
 
-
--[[linux-2.6.33/list_head]]

 	struct dma_coherent_mem	*dma_mem; /* internal for coherent mem
 					     override */
-
--[[linux-2.6.33/dma_coherent_mem]]

 	/* arch specific additions */
 	struct dev_archdata	archdata;
 
-
--[[linux-2.6.33/dev_archdata]]

 	dev_t			devt;	/* dev_t, creates the sysfs "dev" */
 
-
--[[linux-2.6.33/dev_t]]

 	spinlock_t		devres_lock;
-
--[[linux-2.6.33/spinlock_t]]

 	struct list_head	devres_head;
 
 	struct klist_node	knode_class;
-
--[[linux-2.6.33/klist_node]]

 	struct class		*class;
-
--[[linux-2.6.33/class]]

 	const struct attribute_group **groups;	/* optional groups */
 
-
--[[linux-2.6.33/attribute_group]]

 	void	(*release)(struct device *dev);
 };


*コメント [#ed3d1d28]


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS