All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] MIPS: OCTEON: Experimental patches to enable Little Endian
@ 2015-03-16 18:18 Paul Martin
  2015-03-16 18:18 ` [PATCH 1/7] MIPS: OCTEON: Ensure CPUs come up little endian Paul Martin
                   ` (7 more replies)
  0 siblings, 8 replies; 11+ messages in thread
From: Paul Martin @ 2015-03-16 18:18 UTC (permalink / raw)
  To: linux-mips; +Cc: Paul Martin

Octeon II CPUs can switch from Big Endian to Little Endian freely
even in kernel/supervisor mode.

These patches allow an EdgeRouterPro to boot in LE mode with no
hardware modifications.  They have not been subjected to extensive
testing yet and should be considered experimental.  (I have seen some
strange memory corruption in libstdc++ which I haven't yet been able
to trace.)

Parts of this patchset are based on the "GPL" sources released by
Ubiquiti.

v2:
* Remove unneeded assembler code in kernel-entry-init.h
* Add patch to octeon-md5 code
* Re-order patches
* Sign the patches

Paul Martin (7):
  MIPS: OCTEON: Ensure CPUs come up little endian
  MIPS: OCTEON: Turn hardware bitfields and structures inside out
  MIPS: OCTEON: Set appropriate endianness in L2C registers
  MIPS: OCTEON: Reverse the order of register accesses to the FAU
  MIPS: OCTEON: Set up ethernet hardware for little endian
  MIPS: OCTEON: Make octeon-md5 driver endian-agnostic
  MIPS: OCTEON: Tell the kernel build system we can do Little Endian

 arch/mips/Kconfig                                  |   1 +
 arch/mips/cavium-octeon/crypto/octeon-crypto.h     |   8 +-
 arch/mips/cavium-octeon/executive/cvmx-l2c.c       |  45 ++++
 arch/mips/cavium-octeon/octeon-platform.c          |  12 +
 .../asm/mach-cavium-octeon/kernel-entry-init.h     |  68 ++++++
 arch/mips/include/asm/octeon/cvmx-address.h        |  67 ++++++
 arch/mips/include/asm/octeon/cvmx-bootinfo.h       |  55 +++++
 arch/mips/include/asm/octeon/cvmx-bootmem.h        |  14 ++
 arch/mips/include/asm/octeon/cvmx-fau.h            |  22 ++
 arch/mips/include/asm/octeon/cvmx-fpa.h            |   7 +
 arch/mips/include/asm/octeon/cvmx-l2c.h            |   9 +
 arch/mips/include/asm/octeon/cvmx-packet.h         |   8 +
 arch/mips/include/asm/octeon/cvmx-pko.h            |  31 +++
 arch/mips/include/asm/octeon/cvmx-pow.h            | 247 +++++++++++++++++++++
 arch/mips/include/asm/octeon/cvmx-wqe.h            |  71 ++++++
 drivers/staging/octeon/ethernet-tx.c               |   3 +
 drivers/staging/octeon/ethernet.c                  |  10 +
 17 files changed, 674 insertions(+), 4 deletions(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2015-03-27 16:12 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-16 18:18 [PATCH 0/7] MIPS: OCTEON: Experimental patches to enable Little Endian Paul Martin
2015-03-16 18:18 ` [PATCH 1/7] MIPS: OCTEON: Ensure CPUs come up little endian Paul Martin
2015-03-16 19:34   ` David Daney
2015-03-27 16:12     ` Paul Martin
2015-03-16 18:18 ` [PATCH 2/7] MIPS: OCTEON: Turn hardware bitfields and structures inside out Paul Martin
2015-03-16 18:18 ` [PATCH 3/7] MIPS: OCTEON: Set appropriate endianness in L2C registers Paul Martin
2015-03-16 18:18 ` [PATCH 4/7] MIPS: OCTEON: Reverse the order of register accesses to the FAU Paul Martin
2015-03-16 18:18 ` [PATCH 5/7] MIPS: OCTEON: Set up ethernet hardware for little endian Paul Martin
2015-03-16 18:18 ` [PATCH 6/7] MIPS: OCTEON: Make octeon-md5 driver endian-agnostic Paul Martin
2015-03-16 18:18 ` [PATCH 7/7] MIPS: OCTEON: Tell the kernel build system we can do Little Endian Paul Martin
2015-03-16 19:19 ` [PATCH 0/7] MIPS: OCTEON: Experimental patches to enable " David Daney

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.