Lines Matching refs:tp

1 /* $Date: 2006/02/07 04:21:54 $ $RCSfile: tp.c,v $ $Revision: 1.73 $ */
4 #include "tp.h"
53 void t1_tp_destroy(struct petp *tp)
55 kfree(tp);
60 struct petp *tp = kzalloc(sizeof(*tp), GFP_KERNEL);
62 if (!tp)
65 tp->adapter = adapter;
67 return tp;
70 void t1_tp_intr_enable(struct petp *tp)
72 u32 tp_intr = readl(tp->adapter->regs + A_PL_ENABLE);
75 if (!t1_is_asic(tp->adapter)) {
78 tp->adapter->regs + FPGA_TP_ADDR_INTERRUPT_ENABLE);
80 tp->adapter->regs + A_PL_ENABLE);
85 writel(0, tp->adapter->regs + A_TP_INT_ENABLE);
87 tp->adapter->regs + A_PL_ENABLE);
91 void t1_tp_intr_disable(struct petp *tp)
93 u32 tp_intr = readl(tp->adapter->regs + A_PL_ENABLE);
96 if (!t1_is_asic(tp->adapter)) {
98 writel(0, tp->adapter->regs + FPGA_TP_ADDR_INTERRUPT_ENABLE);
100 tp->adapter->regs + A_PL_ENABLE);
104 writel(0, tp->adapter->regs + A_TP_INT_ENABLE);
106 tp->adapter->regs + A_PL_ENABLE);
110 void t1_tp_intr_clear(struct petp *tp)
113 if (!t1_is_asic(tp->adapter)) {
115 tp->adapter->regs + FPGA_TP_ADDR_INTERRUPT_CAUSE);
116 writel(FPGA_PCIX_INTERRUPT_TP, tp->adapter->regs + A_PL_CAUSE);
120 writel(0xffffffff, tp->adapter->regs + A_TP_INT_CAUSE);
121 writel(F_PL_INTR_TP, tp->adapter->regs + A_PL_CAUSE);
124 int t1_tp_intr_handler(struct petp *tp)
130 if (!t1_is_asic(tp->adapter))
134 cause = readl(tp->adapter->regs + A_TP_INT_CAUSE);
135 writel(cause, tp->adapter->regs + A_TP_INT_CAUSE);
139 static void set_csum_offload(struct petp *tp, u32 csum_bit, int enable)
141 u32 val = readl(tp->adapter->regs + A_TP_GLOBAL_CONFIG);
147 writel(val, tp->adapter->regs + A_TP_GLOBAL_CONFIG);
150 void t1_tp_set_ip_checksum_offload(struct petp *tp, int enable)
152 set_csum_offload(tp, F_IP_CSUM, enable);
155 void t1_tp_set_tcp_checksum_offload(struct petp *tp, int enable)
157 set_csum_offload(tp, F_TCP_CSUM, enable);
164 int t1_tp_reset(struct petp *tp, struct tp_params *p, unsigned int tp_clk)
166 adapter_t *adapter = tp->adapter;