drivers/net/ethernet/lsi: Fix Compiler Warnings

Fixes compilation warnings introduced by:
- LSI FEMAC Ethernet Driver
  commit 3a99fb32b9aee41fc6d30c2ebf68c3cf73a443ce
  author: David Mercado
-  arm/include: A clean up of the femac code.
  commit 4ab937c6b46316531bdf9f099553393fa9406769
  author: John Jacques

See below the warning messages:

drivers/net/ethernet/lsi/lsi_acp_net.h: In function 'femac_uncache':
drivers/net/ethernet/lsi/lsi_acp_net.h:521:2: warning: passing argument
2 of '__raw_writel' makes pointer from integer without a cast [enabled
by default]
  writel(0x0, GPREG_HPROT_FEMAC);

drivers/net/ethernet/lsi/lsi_acp_net.c: In function
'appnic_handle_link_change':
drivers/net/ethernet/lsi/lsi_acp_net.c:190:3: warning: passing argument
1 of '__raw_readl' makes pointer from integer without a cast [enabled by
default]
   if (rx_configuration != read_mac(APPNIC_RX_CONF))

arch/arm/include/asm/io.h:88:20:
note: expected 'volatile void *' but argument is of type 'long unsigned
int'
 static inline void __raw_writel(u32 val, volatile void __iomem *addr)

include/uapi/linux/byteorder/little_endian.h:32:51: note: in definition
of macro '__cpu_to_le32'
 #define __cpu_to_le32(x) ((__force __le32)(__u32)(x))

Signed-off-by: John Jacques <john.jacques@lsi.com>
arch/arm/mach-axxia: Added a Device Tree for Simulation

This simulation device tree supports virtio and mmc.

Signed-off-by: John Jacques <john.jacques@lsi.com>
arch/arm/mach-axxia: Fixed affinity error on IRQ migration

This patch redesigned the gic_set_affinity function and added
a system work queue to process the affinity requests that are
needed to be processed via the IPI. The reason for the workqueue
is to insure that all interrupts get migrated. When code relies
on and interrupt to be updated and that interrupt is being migrated,
problems arose.

This patch also adds a choice to hotplug. There are two ways to
power down the cpu, either to a low power mode or completely off.
If the power off mode is selected then the a new option is available
to power off the L2 cache as well.

Signed-off-by: John Jacques <john.jacques@lsi.com>
drivers/misc/lsi-smmon.c: Updated smmon driver

Updated smmon driver such that uncorrectable errors causes
machine_restart instead of kernel panic. Also, setting
persistent register (0xdc) bit 3 to indicate
uncorrectable errors. Updated kconfig such that if EDAC
driver is enabled in Kernel config then smmon driver will
be disabled by default.

Signed-off-by: SangeethaRao <sangeetha.rao@lsi.com>
arch/arm/mach-axxia: machine_restart() related change to axxia_restart()

Signed-off-by: SangeethaRao <sangeetha.rao@lsi.com>
arch/arm/mach-axxia: Added support for doorbell interrupts

Added support for doorbell interrupts for both RootComplex
and EndPoint modes.

Signed-off-by: SangeethaRao <sangeetha.rao@lsi.com>
Updated USB driver to not apply USB SW workarounds for 3500

Signed-off-by: SangeethaRao <sangeetha.rao@lsi.com>
arch/arm/mach-axxia: fixed failure to power up cluster

Fixed the intermittent failure to power up the cluster by
setting the L2CTLR, L2ACTLR and ACTLR2 registers. Also updated
the power on GIC process to only power on the current cpu when
powering up a GIC cluster

Signed-off-by: John Jacques <john.jacques@lsi.com>
arch/arm/mach-axxia: fixed hang in preempt kernel

Fixed the hang in the affinity code. The selection of a cpu on a
clear affinity did not have the right mask, causing the affinity
to be moved to a cpu that was not powered up.

Signed-off-by: John Jacques <john.jacques@lsi.com>