Home
last modified time | relevance | path

Searched +full:jz4760 +full:- +full:tcu (Results 1 – 7 of 7) sorted by relevance

/Linux-v6.1/Documentation/devicetree/bindings/timer/
Dingenic,tcu.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/timer/ingenic,tcu.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Ingenic SoCs Timer/Counter Unit (TCU) devicetree bindings
10 For a description of the TCU hardware and drivers, have a look at
11 Documentation/mips/ingenic-tcu.rst.
14 - Paul Cercueil <paul@crapouillou.net>
21 - ingenic,jz4740-tcu
22 - ingenic,jz4725b-tcu
[all …]
/Linux-v6.1/arch/mips/boot/dts/ingenic/
Djz4770.dtsi1 // SPDX-License-Identifier: GPL-2.0
2 #include <dt-bindings/clock/ingenic,jz4770-cgu.h>
3 #include <dt-bindings/clock/ingenic,tcu.h>
6 #address-cells = <1>;
7 #size-cells = <1>;
11 #address-cells = <1>;
12 #size-cells = <0>;
16 compatible = "ingenic,xburst-fpu1.0-mxu1.1";
20 clock-names = "cpu";
24 cpuintc: interrupt-controller {
[all …]
/Linux-v6.1/drivers/clk/ingenic/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
29 bool "Ingenic JZ4760 CGU driver"
33 Support the clocks provided by the CGU hardware on Ingenic JZ4760
36 If building for a JZ4760 SoC, you want to say Y here.
79 bool "Ingenic JZ47xx TCU clocks driver"
83 Support the clocks of the Timer/Counter Unit (TCU) of the Ingenic
Dtcu.c1 // SPDX-License-Identifier: GPL-2.0
3 * JZ47xx SoCs TCU clocks driver
8 #include <linux/clk-provider.h>
10 #include <linux/mfd/ingenic-tcu.h>
16 #include <dt-bindings/clock/ingenic,tcu.h>
22 #define pr_fmt(fmt) "ingenic-tcu-clk: " fmt
46 struct ingenic_tcu *tcu; member
68 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_enable()
69 struct ingenic_tcu *tcu = tcu_clk->tcu; in ingenic_tcu_enable() local
71 regmap_write(tcu->map, TCU_REG_TSCR, BIT(info->gate_bit)); in ingenic_tcu_enable()
[all …]
DMakefile1 # SPDX-License-Identifier: GPL-2.0-only
2 obj-$(CONFIG_INGENIC_CGU_COMMON) += cgu.o pm.o
3 obj-$(CONFIG_INGENIC_CGU_JZ4740) += jz4740-cgu.o
4 obj-$(CONFIG_INGENIC_CGU_JZ4725B) += jz4725b-cgu.o
5 obj-$(CONFIG_INGENIC_CGU_JZ4760) += jz4760-cgu.o
6 obj-$(CONFIG_INGENIC_CGU_JZ4770) += jz4770-cgu.o
7 obj-$(CONFIG_INGENIC_CGU_JZ4780) += jz4780-cgu.o
8 obj-$(CONFIG_INGENIC_CGU_X1000) += x1000-cgu.o
9 obj-$(CONFIG_INGENIC_CGU_X1830) += x1830-cgu.o
10 obj-$(CONFIG_INGENIC_TCU_CLK) += tcu.o
/Linux-v6.1/drivers/clocksource/
Dingenic-timer.c1 // SPDX-License-Identifier: GPL-2.0
3 * Ingenic SoCs TCU IRQ driver
13 #include <linux/mfd/ingenic-tcu.h>
24 #include <dt-bindings/clock/ingenic,tcu.h>
54 struct ingenic_tcu *tcu = ingenic_tcu; in ingenic_tcu_timer_read() local
57 regmap_read(tcu->map, TCU_REG_TCNTc(tcu->cs_channel), &count); in ingenic_tcu_timer_read()
70 return container_of(timer, struct ingenic_tcu, timers[timer->cpu]); in to_ingenic_tcu()
82 struct ingenic_tcu *tcu = to_ingenic_tcu(timer); in ingenic_tcu_cevt_set_state_shutdown() local
84 regmap_write(tcu->map, TCU_REG_TECR, BIT(timer->channel)); in ingenic_tcu_cevt_set_state_shutdown()
93 struct ingenic_tcu *tcu = to_ingenic_tcu(timer); in ingenic_tcu_cevt_set_next() local
[all …]
/Linux-v6.1/drivers/irqchip/
Dirq-ingenic-tcu.c1 // SPDX-License-Identifier: GPL-2.0
3 * JZ47xx SoCs TCU IRQ driver
11 #include <linux/mfd/ingenic-tcu.h>
26 struct irq_chip *irq_chip = irq_data_get_irq_chip(&desc->irq_data); in ingenic_tcu_intc_cascade()
29 struct regmap *map = gc->private; in ingenic_tcu_intc_cascade()
52 struct regmap *map = gc->private; in ingenic_tcu_gc_unmask_enable_reg()
53 u32 mask = d->mask; in ingenic_tcu_gc_unmask_enable_reg()
56 regmap_write(map, ct->regs.ack, mask); in ingenic_tcu_gc_unmask_enable_reg()
57 regmap_write(map, ct->regs.enable, mask); in ingenic_tcu_gc_unmask_enable_reg()
58 *ct->mask_cache |= mask; in ingenic_tcu_gc_unmask_enable_reg()
[all …]