|
@@ -63,17 +63,20 @@ enum coresight_dev_subtype_source {
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
- * struct coresight_dev_subtype - further characterisation of a type
|
|
|
+ * union coresight_dev_subtype - further characterisation of a type
|
|
|
* @sink_subtype: type of sink this component is, as defined
|
|
|
- by @coresight_dev_subtype_sink.
|
|
|
+ * by @coresight_dev_subtype_sink.
|
|
|
* @link_subtype: type of link this component is, as defined
|
|
|
- by @coresight_dev_subtype_link.
|
|
|
+ * by @coresight_dev_subtype_link.
|
|
|
* @source_subtype: type of source this component is, as defined
|
|
|
- by @coresight_dev_subtype_source.
|
|
|
+ * by @coresight_dev_subtype_source.
|
|
|
*/
|
|
|
-struct coresight_dev_subtype {
|
|
|
- enum coresight_dev_subtype_sink sink_subtype;
|
|
|
- enum coresight_dev_subtype_link link_subtype;
|
|
|
+union coresight_dev_subtype {
|
|
|
+ /* We have some devices which acts as LINK and SINK */
|
|
|
+ struct {
|
|
|
+ enum coresight_dev_subtype_sink sink_subtype;
|
|
|
+ enum coresight_dev_subtype_link link_subtype;
|
|
|
+ };
|
|
|
enum coresight_dev_subtype_source source_subtype;
|
|
|
};
|
|
|
|
|
@@ -111,7 +114,7 @@ struct coresight_platform_data {
|
|
|
*/
|
|
|
struct coresight_desc {
|
|
|
enum coresight_dev_type type;
|
|
|
- struct coresight_dev_subtype subtype;
|
|
|
+ union coresight_dev_subtype subtype;
|
|
|
const struct coresight_ops *ops;
|
|
|
struct coresight_platform_data *pdata;
|
|
|
struct device *dev;
|
|
@@ -155,7 +158,7 @@ struct coresight_device {
|
|
|
int nr_inport;
|
|
|
int nr_outport;
|
|
|
enum coresight_dev_type type;
|
|
|
- struct coresight_dev_subtype subtype;
|
|
|
+ union coresight_dev_subtype subtype;
|
|
|
const struct coresight_ops *ops;
|
|
|
struct device dev;
|
|
|
atomic_t *refcnt;
|