- coresight-child-list List of phandles pointing to the children of this
component.
- coresight-child-ports List of input port numbers of the children.
-
+- coresight-atid The unique ATID value of the coresight device
Example of A330 GPU in MSM8916:
* @registers - Array of GPU specific registers to configure trace bus output
* @count - Number of registers in the array
* @groups - Pointer to an attribute list of control files
+ * @atid - The unique ATID value of the coresight device
*/
struct adreno_coresight {
struct adreno_coresight_register *registers;
unsigned int count;
const struct attribute_group **groups;
+ unsigned int atid;
};
kgsl_regwrite(device, coresight->registers[i].offset,
coresight->registers[i].value);
+ kgsl_property_read_u32(device, "coresight-atid",
+ (unsigned int *)&(coresight->atid));
+
return 0;
}
/**
_adreno_coresight_set(adreno_dev);
}
+static int adreno_coresight_trace_id(struct coresight_device *csdev)
+{
+ struct kgsl_device *device = dev_get_drvdata(csdev->dev.parent);
+ struct adreno_gpudev *gpudev = ADRENO_GPU_DEVICE(ADRENO_DEVICE(device));
+
+ return gpudev->coresight->atid;
+}
+
static const struct coresight_ops_source adreno_coresight_source_ops = {
+ .trace_id = adreno_coresight_trace_id,
.enable = adreno_coresight_enable,
.disable = adreno_coresight_disable,
};