1 /* 2 * Copyright (C) ST-Ericsson SA 2011 3 * Author: Lee Jones <lee.jones@linaro.org> for ST-Ericsson. 4 * License terms: GNU General Public License (GPL), version 2 5 */ 6 #ifndef __SOC_BUS_H 7 #define __SOC_BUS_H 8 9 #include <linux/device.h> 10 11 struct soc_device_attribute { 12 const char *machine; 13 const char *family; 14 const char *revision; 15 const char *soc_id; 16 }; 17 18 /** 19 * soc_device_register - register SoC as a device 20 * @soc_plat_dev_attr: Attributes passed from platform to be attributed to a SoC 21 */ 22 struct soc_device *soc_device_register( 23 struct soc_device_attribute *soc_plat_dev_attr); 24 25 /** 26 * soc_device_unregister - unregister SoC device 27 * @dev: SoC device to be unregistered 28 */ 29 void soc_device_unregister(struct soc_device *soc_dev); 30 31 /** 32 * soc_device_to_device - helper function to fetch struct device 33 * @soc: Previously registered SoC device container 34 */ 35 struct device *soc_device_to_device(struct soc_device *soc); 36 37 #endif /* __SOC_BUS_H */ 38