| /linux/drivers/net/ethernet/ti/ |
| H A D | cpts.c | 21 #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 D | cpts.h | 100 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 D | Kconfig | 83 tristate "TI Common Platform Time Sync (CPTS) Support" 126 tristate "TI K3 AM65x CPTS" 130 Say y here to support the TI K3 AM65x CPTS with 1588 features such as 131 PTP hardware clock for each CPTS device and network packets 133 Depending on integration CPTS blocks enable compliance with 146 The EST scheduler runs on CPTS and the TAS/EST schedule is
|
| H A D | am65-cpsw-qos.c | 19 #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 D | am65-cpsw-nuss.c | 43 #include "am65-cpts.h" 1355 am65_cpts_rx_timestamp(common->cpts, port_id, skb); in am65_cpsw_nuss_rx_packets() 1498 am65_cpts_tx_timestamp(tx_chn->common->cpts, skb); in am65_cpsw_nuss_tx_compl_packets() 1610 am65_cpts_prep_tx_timestamp(common->cpts, port->port_id, skb); in am65_cpsw_nuss_ndo_slave_xmit() 2560 struct am65_cpts *cpts; in am65_cpsw_init_cpts() local 2566 node = of_get_child_by_name(dev->of_node, "cpts"); in am65_cpsw_init_cpts() 2568 dev_err(dev, "%s cpts not found\n", __func__); in am65_cpsw_init_cpts() 2573 cpts = am65_cpts_create(dev, reg_base, node); in am65_cpsw_init_cpts() 2574 if (IS_ERR(cpts)) { in am65_cpsw_init_cpts() 2575 int ret = PTR_ERR(cpts); in am65_cpsw_init_cpts() [all …]
|
| H A D | am65-cpsw-nuss.h | 180 struct am65_cpts *cpts; member
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A D | keystone-netcp.txt | 107 - 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 D | cpsw.txt | 41 Mult and shift will be calculated basing on CPTS
|
| /linux/arch/arm/boot/dts/ti/keystone/ |
| H A D | keystone-k2g-netcp.dtsi | 101 clock-names = "ethss_clk", "cpts"; 122 cpts-rftclk-sel = <0>; 123 cpts-ext-ts-inputs = <8>;
|
| H A D | keystone-k2l-netcp.dtsi | 158 cpts { 160 clock-names = "cpts"; 162 cpts_refclk_mux: cpts-refclk-mux {
|
| H A D | keystone-k2e-netcp.dtsi | 159 cpts { 161 clock-names = "cpts"; 163 cpts_refclk_mux: cpts-refclk-mux {
|
| H A D | keystone-k2hk-netcp.dtsi | 178 cpts { 180 clock-names = "cpts"; 182 cpts_refclk_mux: cpts-refclk-mux {
|
| H A D | keystone-k2e-clocks.dtsi | 79 * (as cpts, for example) by configuring corresponding clock muxes.
|
| H A D | keystone-clocks.dtsi | 416 * (as cpts, for example) by configuring corresponding clock muxes.
|
| /linux/arch/arm64/boot/dts/ti/ |
| H A D | k3-am65-mcu.dtsi | 383 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 D | k3-j721e-mcu-wakeup.dtsi | 579 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 D | k3-am62a-main.dtsi | 792 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 D | k3-am62-main.dtsi | 776 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>;
|
| /linux/arch/arm/boot/dts/ti/omap/ |
| H A D | am33xx-l4.dtsi | 723 clock-names = "fck", "cpts"; 814 cpts { 816 clock-names = "cpts";
|
| H A D | am33xx-clocks.dtsi | 532 cpsw_cpts_rft_clk: clock-cpsw-cpts-rft@520 {
|
| H A D | am43xx-clocks.dtsi | 564 cpsw_cpts_rft_clk: clock-cpsw-cpts-rft@4238 {
|
| H A D | am437x-l4.dtsi | 586 cpts { 588 clock-names = "cpts";
|