Home
last modified time | relevance | path

Searched full:cpts (Results 1 – 25 of 28) sorted by relevance

12

/linux/drivers/net/ethernet/ti/
H A Dcpts.c21 #include "cpts.h"
50 static int cpts_fifo_pop(struct cpts *cpts, u32 *high, u32 *low) in cpts_fifo_pop() argument
52 u32 r = cpts_read32(cpts, intstat_raw); in cpts_fifo_pop()
55 *high = cpts_read32(cpts, event_high); in cpts_fifo_pop()
56 *low = cpts_read32(cpts, event_low); in cpts_fifo_pop()
57 cpts_write32(cpts, EVENT_POP, event_pop); in cpts_fifo_pop()
63 static int cpts_purge_events(struct cpts *cpts) in cpts_purge_events() argument
69 list_for_each_safe(this, next, &cpts->events) { in cpts_purge_events()
73 list_add(&event->list, &cpts->pool); in cpts_purge_events()
79 dev_dbg(cpts->dev, "cpts: event pool cleaned up %d\n", removed); in cpts_purge_events()
[all …]
H A Dam65-cpts.c23 #include "am65-cpts.h"
206 static void am65_cpts_settime(struct am65_cpts *cpts, u64 start_tstamp) in am65_cpts_settime() argument
211 am65_cpts_write32(cpts, val, ts_load_val_hi); in am65_cpts_settime()
213 am65_cpts_write32(cpts, val, ts_load_val_lo); in am65_cpts_settime()
215 am65_cpts_write32(cpts, AM65_CPTS_TS_LOAD_EN, ts_load_en); in am65_cpts_settime()
218 static void am65_cpts_set_add_val(struct am65_cpts *cpts) in am65_cpts_set_add_val() argument
221 cpts->ts_add_val = (NSEC_PER_SEC / cpts->refclk_freq - 1) & 0x7; in am65_cpts_set_add_val()
223 am65_cpts_write32(cpts, cpts->ts_add_val, ts_add_val); in am65_cpts_set_add_val()
226 static void am65_cpts_disable(struct am65_cpts *cpts) in am65_cpts_disable() argument
228 am65_cpts_write32(cpts, 0, control); in am65_cpts_disable()
[all …]
H A Dcpts.h100 struct cpts { struct
126 void cpts_rx_timestamp(struct cpts *cpts, struct sk_buff *skb); argument
127 void cpts_tx_timestamp(struct cpts *cpts, struct sk_buff *skb);
128 int cpts_register(struct cpts *cpts);
129 void cpts_unregister(struct cpts *cpts);
130 struct cpts *cpts_create(struct device *dev, void __iomem *regs,
132 void cpts_release(struct cpts *cpts);
133 void cpts_misc_interrupt(struct cpts *cpts);
135 static inline bool cpts_can_timestamp(struct cpts *cpts, struct sk_buff *skb) in cpts_can_timestamp() argument
145 static inline void cpts_set_irqpoll(struct cpts *cpts, bool en) in cpts_set_irqpoll() argument
[all …]
H A Dam65-cpts.h2 /* TI K3 AM65 CPTS driver interface
21 void am65_cpts_release(struct am65_cpts *cpts);
24 int am65_cpts_phc_index(struct am65_cpts *cpts);
25 void am65_cpts_rx_timestamp(struct am65_cpts *cpts, struct sk_buff *skb);
26 void am65_cpts_tx_timestamp(struct am65_cpts *cpts, struct sk_buff *skb);
27 void am65_cpts_prep_tx_timestamp(struct am65_cpts *cpts, struct sk_buff *skb);
28 u64 am65_cpts_ns_gettime(struct am65_cpts *cpts);
29 int am65_cpts_estf_enable(struct am65_cpts *cpts, int idx,
31 void am65_cpts_estf_disable(struct am65_cpts *cpts, int idx);
32 void am65_cpts_suspend(struct am65_cpts *cpts);
[all …]
H A Dam65-cpsw-qos.c19 #include "am65-cpts.h"
769 struct am65_cpts *cpts = common->cpts; in am65_cpsw_timer_set() local
775 return am65_cpts_estf_enable(cpts, port->port_id - 1, &cfg); in am65_cpsw_timer_set()
781 struct am65_cpts *cpts = port->common->cpts; in am65_cpsw_timer_stop() local
783 am65_cpts_estf_disable(cpts, port->port_id - 1); in am65_cpsw_timer_stop()
791 struct am65_cpts *cpts = port->common->cpts; in am65_cpsw_timer_act() local
817 cur_time = am65_cpts_ns_gettime(cpts); in am65_cpsw_timer_act()
862 struct am65_cpts *cpts = common->cpts; in am65_cpsw_taprio_replace() local
925 cur_time = am65_cpts_ns_gettime(cpts); in am65_cpsw_taprio_replace()
H A Dam65-cpsw-nuss.h180 struct am65_cpts *cpts; member
/linux/Documentation/devicetree/bindings/net/
H A Dkeystone-netcp.txt107 - cpts: sub-node time synchronization (CPTS) submodule configuration
108 -- clocks: CPTS reference clock. Should point on cpts-refclk-mux clock.
109 -- clock-names: should be "cpts"
110 -- cpts-refclk-mux: multiplexer clock definition sub-node for CPTS reference (RFTCLK) clock
112 --- clocks: list of CPTS reference (RFTCLK) clock's parents as defined in Data manual
114 --- assigned-clocks: should point on cpts-refclk-mux clock
120 Mult and shift will be calculated basing on CPTS
188 cpts {
190 clock-names = "cpts";
192 cpts_refclk_mux: cpts-refclk-mux {
[all …]
H A Dti,k3-am654-cpsw-nuss.yaml40 new version of Common Platform Time Sync (CPTS)
178 "^cpts@[0-9a-f]+":
180 $ref: ti,k3-am654-cpts.yaml#
182 CPSW Common Platform Time Sync (CPTS) module.
308 cpts@3d000 {
309 compatible = "ti,am65-cpts";
312 clock-names = "cpts";
314 interrupt-names = "cpts";
315 ti,cpts-ext-ts-inputs = <4>;
316 ti,cpts-periodic-outputs = <2>;
H A Dcpsw.txt41 Mult and shift will be calculated basing on CPTS
/linux/arch/arm/boot/dts/ti/keystone/
H A Dkeystone-k2g-netcp.dtsi101 clock-names = "ethss_clk", "cpts";
122 cpts-rftclk-sel = <0>;
123 cpts-ext-ts-inputs = <8>;
H A Dkeystone-k2l-netcp.dtsi158 cpts {
160 clock-names = "cpts";
162 cpts_refclk_mux: cpts-refclk-mux {
H A Dkeystone-k2e-netcp.dtsi159 cpts {
161 clock-names = "cpts";
163 cpts_refclk_mux: cpts-refclk-mux {
H A Dkeystone-k2hk-netcp.dtsi178 cpts {
180 clock-names = "cpts";
182 cpts_refclk_mux: cpts-refclk-mux {
H A Dkeystone-k2e-clocks.dtsi79 * (as cpts, for example) by configuring corresponding clock muxes.
H A Dkeystone-clocks.dtsi416 * (as cpts, for example) by configuring corresponding clock muxes.
/linux/arch/arm64/boot/dts/ti/
H A Dk3-am65-mcu.dtsi383 cpts@3d000 {
384 compatible = "ti,am65-cpts";
387 clock-names = "cpts";
389 interrupt-names = "cpts";
390 ti,cpts-ext-ts-inputs = <4>;
391 ti,cpts-periodic-outputs = <2>;
H A Dk3-j721e-mcu-wakeup.dtsi579 cpts@3d000 {
580 compatible = "ti,am65-cpts";
583 clock-names = "cpts";
585 interrupt-names = "cpts";
586 ti,cpts-ext-ts-inputs = <4>;
587 ti,cpts-periodic-outputs = <2>;
H A Dk3-j7200-mcu-wakeup.dtsi460 cpts@3d000 {
461 compatible = "ti,am65-cpts";
464 clock-names = "cpts";
466 interrupt-names = "cpts";
467 ti,cpts-ext-ts-inputs = <4>;
468 ti,cpts-periodic-outputs = <2>;
H A Dk3-j721s2-mcu-wakeup.dtsi580 cpts@3d000 {
581 compatible = "ti,am65-cpts";
584 clock-names = "cpts";
588 interrupt-names = "cpts";
589 ti,cpts-ext-ts-inputs = <4>;
590 ti,cpts-periodic-outputs = <2>;
H A Dk3-am62p-j722s-common-main.dtsi769 cpts@3d000 {
770 compatible = "ti,j721e-cpts";
773 clock-names = "cpts";
775 interrupt-names = "cpts";
776 ti,cpts-ext-ts-inputs = <4>;
777 ti,cpts-periodic-outputs = <2>;
H A Dk3-am62a-main.dtsi792 cpts@3d000 {
793 compatible = "ti,j721e-cpts";
796 clock-names = "cpts";
798 interrupt-names = "cpts";
799 ti,cpts-ext-ts-inputs = <4>;
800 ti,cpts-periodic-outputs = <2>;
H A Dk3-am62-main.dtsi776 cpts@3d000 {
777 compatible = "ti,j721e-cpts";
780 clock-names = "cpts";
782 interrupt-names = "cpts";
783 ti,cpts-ext-ts-inputs = <4>;
784 ti,cpts-periodic-outputs = <2>;
H A Dk3-am65-main.dtsi826 cpts@310d0000 {
827 compatible = "ti,am65-cpts";
829 reg-names = "cpts";
831 clock-names = "cpts";
833 interrupt-names = "cpts";
834 ti,cpts-periodic-outputs = <6>;
835 ti,cpts-ext-ts-inputs = <8>;
H A Dk3-am62d2-evm.dts627 cpts@3d000 {
/linux/arch/arm/boot/dts/ti/omap/
H A Dam33xx-l4.dtsi723 clock-names = "fck", "cpts";
814 cpts {
816 clock-names = "cpts";

12