Merge "ARM: dts: msm: Add GPU coresight properties for msm8998"
This commit is contained in:
commit
cfd61208ea
5 changed files with 31 additions and 1 deletions
|
@ -187,7 +187,7 @@ Documentation/devicetree/bindings/coresight/coresight.txt
|
|||
- 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:
|
||||
|
||||
|
|
|
@ -277,6 +277,14 @@
|
|||
<&funnel_apss_merg_out_funnel_in1>;
|
||||
};
|
||||
};
|
||||
port@6 {
|
||||
reg = <7>;
|
||||
funnel_in1_in_gfx: endpoint {
|
||||
slave-mode;
|
||||
remote-endpoint =
|
||||
<&gfx_out_funnel_in1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -122,6 +122,14 @@
|
|||
vddcx-supply = <&gdsc_gpu_cx>;
|
||||
vdd-supply = <&gdsc_gpu_gx>;
|
||||
|
||||
/* Trace bus */
|
||||
coresight-name = "coresight-gfx";
|
||||
port {
|
||||
gfx_out_funnel_in1: endpoint {
|
||||
remote-endpoint = <&funnel_in1_in_gfx>;
|
||||
};
|
||||
};
|
||||
|
||||
/* GPU Mempools */
|
||||
qcom,gpu-mempools {
|
||||
#address-cells= <1>;
|
||||
|
|
|
@ -676,11 +676,13 @@ ssize_t adreno_coresight_store_register(struct device *dev,
|
|||
* @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;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -200,6 +200,9 @@ static int _adreno_coresight_set(struct adreno_device *adreno_dev)
|
|||
kgsl_regwrite(device, coresight->registers[i].offset,
|
||||
coresight->registers[i].value);
|
||||
|
||||
kgsl_property_read_u32(device, "coresight-atid",
|
||||
(unsigned int *)&(coresight->atid));
|
||||
|
||||
return 0;
|
||||
}
|
||||
/**
|
||||
|
@ -281,7 +284,16 @@ void adreno_coresight_start(struct adreno_device *adreno_dev)
|
|||
_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,
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue