| /linux/drivers/i2c/busses/ |
| H A D | i2c-qcom-cci.c | 108 struct cci; 116 struct cci *cci; member 126 struct cci { struct 138 struct cci *cci = dev; in cci_isr() argument 142 val = readl(cci->base + CCI_IRQ_STATUS_0); in cci_isr() 143 writel(val, cci->base + CCI_IRQ_CLEAR_0); in cci_isr() 144 writel(0x1, cci->base + CCI_IRQ_GLOBAL_CLEAR_CMD); in cci_isr() 147 complete(&cci->master[0].irq_complete); in cci_isr() 148 if (cci->master[1].master) in cci_isr() 149 complete(&cci->master[1].irq_complete); in cci_isr() [all …]
|
| /linux/lib/ |
| H A D | cache_maint.c | 30 struct cache_coherency_ops_inst *cci = in __cache_coherency_ops_instance_free() local 32 kfree(cci); in __cache_coherency_ops_instance_free() 35 void cache_coherency_ops_instance_put(struct cache_coherency_ops_inst *cci) in cache_coherency_ops_instance_put() argument 37 kref_put(&cci->kref, __cache_coherency_ops_instance_free); in cache_coherency_ops_instance_put() 41 static int cache_inval_one(struct cache_coherency_ops_inst *cci, void *data) in cache_inval_one() argument 43 if (!cci->ops) in cache_inval_one() 46 return cci->ops->wbinv(cci, data); in cache_inval_one() 49 static int cache_inval_done_one(struct cache_coherency_ops_inst *cci) in cache_inval_done_one() argument 51 if (!cci->ops) in cache_inval_done_one() 54 if (!cci->ops->done) in cache_inval_done_one() [all …]
|
| /linux/drivers/cache/ |
| H A D | hisi_soc_hha.c | 47 struct cache_coherency_ops_inst cci; member 63 static int hisi_soc_hha_wbinv(struct cache_coherency_ops_inst *cci, in hisi_soc_hha_wbinv() argument 67 container_of(cci, struct hisi_soc_hha, cci); in hisi_soc_hha_wbinv() 106 static int hisi_soc_hha_done(struct cache_coherency_ops_inst *cci) in hisi_soc_hha_done() argument 109 container_of(cci, struct hisi_soc_hha, cci); in hisi_soc_hha_done() 130 struct hisi_soc_hha, cci); in hisi_soc_hha_probe() 151 ret = cache_coherency_ops_instance_register(&soc_hha->cci); in hisi_soc_hha_probe() 160 cache_coherency_ops_instance_put(&soc_hha->cci); in hisi_soc_hha_probe() 168 cache_coherency_ops_instance_unregister(&soc_hha->cci); in hisi_soc_hha_remove() 170 cache_coherency_ops_instance_put(&soc_hha->cci); in hisi_soc_hha_remove()
|
| /linux/drivers/usb/typec/ucsi/ |
| H A D | cros_ec_ucsi.c | 79 static int cros_ucsi_read_cci(struct ucsi *ucsi, u32 *cci) in cros_ucsi_read_cci() argument 81 return cros_ucsi_read(ucsi, UCSI_CCI, cci, sizeof(*cci)); in cros_ucsi_read_cci() 108 static int cros_ucsi_sync_control(struct ucsi *ucsi, u64 cmd, u32 *cci) in cros_ucsi_sync_control() argument 113 ret = ucsi_sync_control_common(ucsi, cmd, cci); in cros_ucsi_sync_control() 148 u32 cci; in cros_ucsi_work() local 150 if (cros_ucsi_read_cci(udata->ucsi, &cci)) in cros_ucsi_work() 153 ucsi_notify_common(udata->ucsi, cci); in cros_ucsi_work() 160 u32 cci; in cros_ucsi_write_timeout() local 163 if (cros_ucsi_read(udata->ucsi, UCSI_CCI, &cci, sizeof(cci))) { in cros_ucsi_write_timeout() 169 if (cci & UCSI_CCI_BUSY) { in cros_ucsi_write_timeout() [all …]
|
| H A D | ucsi_acpi.c | 59 static int ucsi_acpi_read_cci(struct ucsi *ucsi, u32 *cci) in ucsi_acpi_read_cci() argument 63 memcpy(cci, ua->base + UCSI_CCI, sizeof(*cci)); in ucsi_acpi_read_cci() 68 static int ucsi_acpi_poll_cci(struct ucsi *ucsi, u32 *cci) in ucsi_acpi_poll_cci() argument 77 return ucsi_acpi_read_cci(ucsi, cci); in ucsi_acpi_poll_cci() 124 static int ucsi_gram_sync_control(struct ucsi *ucsi, u64 command, u32 *cci) in ucsi_gram_sync_control() argument 131 ret = ucsi_sync_control_common(ucsi, command, cci); in ucsi_gram_sync_control() 176 u32 cci; in ucsi_acpi_notify() local 179 ret = ua->ucsi->ops->read_cci(ua->ucsi, &cci); in ucsi_acpi_notify() 183 ucsi_notify_common(ua->ucsi, cci); in ucsi_acpi_notify()
|
| H A D | ucsi_yoga_c630.c | 50 static int yoga_c630_ucsi_read_cci(struct ucsi *ucsi, u32 *cci) in yoga_c630_ucsi_read_cci() argument 60 memcpy(cci, buf, sizeof(*cci)); in yoga_c630_ucsi_read_cci() 91 u32 *cci) in yoga_c630_ucsi_sync_control() argument 111 *cci = UCSI_CCI_COMMAND_COMPLETE | UCSI_SET_CCI_LENGTH(sizeof(alt)); in yoga_c630_ucsi_sync_control() 124 *cci = UCSI_CCI_COMMAND_COMPLETE; in yoga_c630_ucsi_sync_control() 128 ret = ucsi_sync_control_common(ucsi, command, cci); in yoga_c630_ucsi_sync_control() 213 u32 cci; in yoga_c630_ucsi_notify() local 224 ret = uec->ucsi->ops->read_cci(uec->ucsi, &cci); in yoga_c630_ucsi_notify() 228 ucsi_notify_common(uec->ucsi, cci); in yoga_c630_ucsi_notify()
|
| H A D | ucsi.c | 39 void ucsi_notify_common(struct ucsi *ucsi, u32 cci) in ucsi_notify_common() argument 42 if (cci & UCSI_CCI_BUSY) in ucsi_notify_common() 45 if (UCSI_CCI_CONNECTOR(cci)) in ucsi_notify_common() 46 ucsi_connector_change(ucsi, UCSI_CCI_CONNECTOR(cci)); in ucsi_notify_common() 48 if (cci & UCSI_CCI_ACK_COMPLETE && in ucsi_notify_common() 52 if (cci & UCSI_CCI_COMMAND_COMPLETE && in ucsi_notify_common() 58 int ucsi_sync_control_common(struct ucsi *ucsi, u64 command, u32 *cci) in ucsi_sync_control_common() argument 97 if (!ret && cci) in ucsi_sync_control_common() 98 ret = ucsi->ops->read_cci(ucsi, cci); in ucsi_sync_control_common() 101 (*cci & UCSI_CCI_COMMAND_COMPLETE)) in ucsi_sync_control_common() [all …]
|
| H A D | ucsi_huawei_gaokun.c | 117 static int gaokun_ucsi_read_cci(struct ucsi *ucsi, u32 *cci) in gaokun_ucsi_read_cci() argument 127 memcpy(cci, buf, sizeof(*cci)); in gaokun_ucsi_read_cci() 362 u32 cci; in gaokun_ucsi_notify() local 373 ret = gaokun_ucsi_read_cci(uec->ucsi, &cci); in gaokun_ucsi_notify() 377 ucsi_notify_common(uec->ucsi, cci); in gaokun_ucsi_notify() 378 if (UCSI_CCI_CONNECTOR(cci)) in gaokun_ucsi_notify() 379 gaokun_ucsi_handle_no_usb_event(uec, UCSI_CCI_CONNECTOR(cci) - 1); in gaokun_ucsi_notify()
|
| H A D | ucsi_glink.c | 127 static int pmic_glink_ucsi_read_cci(struct ucsi *ucsi, u32 *cci) in pmic_glink_ucsi_read_cci() argument 129 return pmic_glink_ucsi_read(ucsi, UCSI_CCI, cci, sizeof(*cci)); in pmic_glink_ucsi_read_cci() 301 u32 cci; in pmic_glink_ucsi_notify() local 304 ret = pmic_glink_ucsi_read(ucsi->ucsi, UCSI_CCI, &cci, sizeof(cci)); in pmic_glink_ucsi_notify() 310 ucsi_notify_common(ucsi->ucsi, cci); in pmic_glink_ucsi_notify()
|
| H A D | ucsi_ccg.c | 197 __le32 cci; member 318 static int ccg_op_region_update(struct ucsi_ccg *uc, u32 cci) in ccg_op_region_update() argument 328 if (UCSI_CCI_LENGTH(cci)) { in ccg_op_region_update() 338 data->cci = cpu_to_le32(cci); in ccg_op_region_update() 339 if (UCSI_CCI_LENGTH(cci)) in ccg_op_region_update() 571 static int ucsi_ccg_read_cci(struct ucsi *ucsi, u32 *cci) in ucsi_ccg_read_cci() argument 576 *cci = uc->op_data.cci; in ucsi_ccg_read_cci() 603 uc->op_data.cci = 0; in ucsi_ccg_async_control() 609 static int ucsi_ccg_sync_control(struct ucsi *ucsi, u64 command, u32 *cci) in ucsi_ccg_sync_control() argument 631 ret = ucsi_sync_control_common(ucsi, command, cci); in ucsi_ccg_sync_control() [all …]
|
| H A D | ucsi.h | 85 int (*read_cci)(struct ucsi *ucsi, u32 *cci); 86 int (*poll_cci)(struct ucsi *ucsi, u32 *cci); 89 int (*sync_control)(struct ucsi *ucsi, u64 command, u32 *cci); 575 void ucsi_notify_common(struct ucsi *ucsi, u32 cci); 576 int ucsi_sync_control_common(struct ucsi *ucsi, u64 command, u32 *cci);
|
| /linux/include/linux/ |
| H A D | cache_coherency.h | 22 int (*wbinv)(struct cache_coherency_ops_inst *cci, 24 int (*done)(struct cache_coherency_ops_inst *cci); 33 int cache_coherency_ops_instance_register(struct cache_coherency_ops_inst *cci); 34 void cache_coherency_ops_instance_unregister(struct cache_coherency_ops_inst *cci); 59 void cache_coherency_ops_instance_put(struct cache_coherency_ops_inst *cci);
|
| /linux/arch/arm/boot/dts/samsung/ |
| H A D | exynos5420-cpus.dtsi | 63 cci-control-port = <&cci_control1>; 75 cci-control-port = <&cci_control1>; 87 cci-control-port = <&cci_control1>; 99 cci-control-port = <&cci_control1>; 111 cci-control-port = <&cci_control0>; 123 cci-control-port = <&cci_control0>; 135 cci-control-port = <&cci_control0>; 147 cci-control-port = <&cci_control0>;
|
| H A D | exynos5422-cpus.dtsi | 62 cci-control-port = <&cci_control0>; 75 cci-control-port = <&cci_control0>; 88 cci-control-port = <&cci_control0>; 101 cci-control-port = <&cci_control0>; 114 cci-control-port = <&cci_control1>; 127 cci-control-port = <&cci_control1>; 140 cci-control-port = <&cci_control1>; 153 cci-control-port = <&cci_control1>;
|
| H A D | exynos5260.dtsi | 67 cci-control-port = <&cci_control1>; 74 cci-control-port = <&cci_control1>; 81 cci-control-port = <&cci_control0>; 88 cci-control-port = <&cci_control0>; 95 cci-control-port = <&cci_control0>; 102 cci-control-port = <&cci_control0>; 355 cci: cci@10f00000 { label 356 compatible = "arm,cci-400"; 363 compatible = "arm,cci-400-ctrl-if"; 369 compatible = "arm,cci-400-ctrl-if";
|
| /linux/arch/arm/boot/dts/arm/ |
| H A D | vexpress-v2p-ca15_a7.dts | 42 cci-control-port = <&cci_control1>; 52 cci-control-port = <&cci_control1>; 62 cci-control-port = <&cci_control2>; 72 cci-control-port = <&cci_control2>; 82 cci-control-port = <&cci_control2>; 161 cci@2c090000 { 162 compatible = "arm,cci-400"; 169 compatible = "arm,cci-400-ctrl-if"; 175 compatible = "arm,cci-400-ctrl-if"; 181 compatible = "arm,cci-400-pmu,r0";
|
| /linux/arch/arm/boot/dts/mediatek/ |
| H A D | mt7629.dtsi | 32 cci-control-port = <&cci_control2>; 40 cci-control-port = <&cci_control2>; 174 cci: cci@10390000 { label 175 compatible = "arm,cci-400"; 182 compatible = "arm,cci-400-ctrl-if"; 188 compatible = "arm,cci-400-ctrl-if"; 194 compatible = "arm,cci-400-ctrl-if"; 200 compatible = "arm,cci-400-pmu,r1";
|
| /linux/arch/arm64/boot/dts/mediatek/ |
| H A D | mt7988a.dtsi | 15 cci: cci { label 16 compatible = "mediatek,mt7988-cci", "mediatek,mt8183-cci"; 19 clock-names = "cci", "intermediate"; 23 cci_opp: opp-table-cci { 57 mediatek,cci = <&cci>; 69 mediatek,cci = <&cci>; 81 mediatek,cci = <&cci>; 93 mediatek,cci = <&cci>;
|
| H A D | mt7622.dtsi | 82 cci-control-port = <&cci_control2>; 97 cci-control-port = <&cci_control2>; 350 cci: cci@10390000 { label 351 compatible = "arm,cci-400"; 358 compatible = "arm,cci-400-ctrl-if"; 364 compatible = "arm,cci-400-ctrl-if"; 370 compatible = "arm,cci-400-ctrl-if", "syscon"; 376 compatible = "arm,cci-400-pmu,r1"; 992 cci-control-port = <&cci_control2>;
|
| H A D | mt8183.dtsi | 214 cci_opp: opp-table-cci { 283 cci: cci { label 284 compatible = "mediatek,mt8183-cci"; 287 clock-names = "cci", "intermediate"; 347 mediatek,cci = <&cci>; 370 mediatek,cci = <&cci>; 393 mediatek,cci = <&cci>; 416 mediatek,cci = <&cci>; 439 mediatek,cci = <&cci>; 462 mediatek,cci = <&cci>; [all …]
|
| /linux/arch/arm/boot/dts/allwinner/ |
| H A D | sun9i-a80.dtsi | 70 cci-control-port = <&cci_control0>; 79 cci-control-port = <&cci_control0>; 88 cci-control-port = <&cci_control0>; 97 cci-control-port = <&cci_control0>; 106 cci-control-port = <&cci_control1>; 115 cci-control-port = <&cci_control1>; 124 cci-control-port = <&cci_control1>; 133 cci-control-port = <&cci_control1>; 551 cci: cci@1c90000 { label 552 compatible = "arm,cci-400"; [all …]
|
| H A D | sun8i-a83t.dtsi | 69 cci-control-port = <&cci_control0>; 80 cci-control-port = <&cci_control0>; 91 cci-control-port = <&cci_control0>; 102 cci-control-port = <&cci_control0>; 113 cci-control-port = <&cci_control1>; 124 cci-control-port = <&cci_control1>; 135 cci-control-port = <&cci_control1>; 146 cci-control-port = <&cci_control1>; 405 cci@1790000 { 406 compatible = "arm,cci-400"; [all …]
|
| /linux/Documentation/driver-api/media/ |
| H A D | v4l2-cci.rst | 5 .. kernel-doc:: include/media/v4l2-cci.h
|
| /linux/drivers/devfreq/ |
| H A D | Makefile | 15 obj-$(CONFIG_ARM_MEDIATEK_CCI_DEVFREQ) += mtk-cci-devfreq.o
|
| /linux/drivers/perf/ |
| H A D | Makefile | 2 obj-$(CONFIG_ARM_CCI_PMU) += arm-cci.o
|