Commit 8a5cc923 authored by Paul Martin's avatar Paul Martin Committed by Ralf Baechle

MIPS: Octeon: Set up ethernet hardware for little endian

Signed-off-by: default avatarPaul Martin <paul.martin@codethink.co.uk>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/9635/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent f1e770cf
...@@ -274,6 +274,9 @@ int cvm_oct_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -274,6 +274,9 @@ int cvm_oct_xmit(struct sk_buff *skb, struct net_device *dev)
/* Build the PKO command */ /* Build the PKO command */
pko_command.u64 = 0; pko_command.u64 = 0;
#ifdef __LITTLE_ENDIAN
pko_command.s.le = 1;
#endif
pko_command.s.n2 = 1; /* Don't pollute L2 with the outgoing packet */ pko_command.s.n2 = 1; /* Don't pollute L2 with the outgoing packet */
pko_command.s.segs = 1; pko_command.s.segs = 1;
pko_command.s.total_bytes = skb->len; pko_command.s.total_bytes = skb->len;
......
...@@ -170,6 +170,16 @@ static void cvm_oct_configure_common_hw(void) ...@@ -170,6 +170,16 @@ static void cvm_oct_configure_common_hw(void)
cvm_oct_mem_fill_fpa(CVMX_FPA_OUTPUT_BUFFER_POOL, cvm_oct_mem_fill_fpa(CVMX_FPA_OUTPUT_BUFFER_POOL,
CVMX_FPA_OUTPUT_BUFFER_POOL_SIZE, 128); CVMX_FPA_OUTPUT_BUFFER_POOL_SIZE, 128);
#ifdef __LITTLE_ENDIAN
{
union cvmx_ipd_ctl_status ipd_ctl_status;
ipd_ctl_status.u64 = cvmx_read_csr(CVMX_IPD_CTL_STATUS);
ipd_ctl_status.s.pkt_lend = 1;
ipd_ctl_status.s.wqe_lend = 1;
cvmx_write_csr(CVMX_IPD_CTL_STATUS, ipd_ctl_status.u64);
}
#endif
if (USE_RED) if (USE_RED)
cvmx_helper_setup_red(num_packet_buffers / 4, cvmx_helper_setup_red(num_packet_buffers / 4,
num_packet_buffers / 8); num_packet_buffers / 8);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment