MIPS: BCM63XX: move flash registration out of board_bcm963xx.c

board_bcm963xx.c is already large enough.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: BCM63XX: add flash type detection

On BCM6358 and BCM6368 the attached flash type is exposed through a
bootstrapping register. Use it for auto detecting the flash type on
those and default to parallel flash for earlier SoCs.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: BCM63XX: use the Chip ID register for identifying the SoC

Newer BCM63XX SoCs use virtually the same CPU ID, differing only in the
revision bits. But since they all have the Chip ID register at the same
location, we can use that to identify the SoC we are running on.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: BCM63XX: add basic BCM6328 CPU support

Add basic BCM6328 support. This includes CPU speed, memory size
detection and working uart, but no support for attached flashes,
lacking the appropriate drivers.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: BCM63XX: Move the PCI initialization into its own function

Also make the cpu check a bit more explicit.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: BCM63XX: Add PCIe Support for BCM6328

Add support for the PCIe port found on BCM6328.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: expose PCIe drivers for MIPS

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: BCM63XX: add 96328avng reference board

This allows booting to command line. Ethernet is not supported yet,
but PCIe connected wireless should work.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MIPS: BCM63XX: add external irq support for non 6348 CPUs. (diff to previous)

On Wed, 2011-11-16 at 11:33 +0000, Ralf Baechle wrote:

> I've queued this one for 3.3 as is but could you take care of Jonas'
> complaints?  You can either send me a replacement for this patch or
> an incremental patch, whatever is easier for you.

updated patch attached, please also update upcoming patch 11/11

Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
MIPS: BCM63XX: add support for bcm6368 CPU (diff).

On Wed, 2011-11-16 at 11:33 +0000, Ralf Baechle wrote:

> Queued for 3.3.  Thanks,

updated patch v3

Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
NET: bcm63xx_enet: move phy_(dis)connect into probe/remove

Only connect/disconnect the phy during probe and remove, not during open
and close. The phy seldom changes during the runtime, and disconnecting
the phy during close will prevent the phy driver from keeping any
configuration over a down/up cycle.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Revert "MIPS: BCM63XX: Call board_register_device from device_initcall()"

This commit causes a race between PCI scan and SSB fallback SPROM handler
registration, causing the wifi to not work on slower systems. The only
subsystem touched from board_register_device is platform device
registration, which should be safe as an arch init call.

This reverts commit d64ed7ada2f689d2c62af1892ca55e47d3653e36.
MTD: bcm63xxpart: remove unused variable

namelen is never used, so drop it.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MTD: bcm63xxpart: merge sparelen calculation

The length of the spare part is calculated the same way in both branches
so move to a common place.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MTD: bcm63xxpart: make fixed part length calculation more generic

The CFE does not use 4K sectors even if the flash supports it, so
for the fixed partitions like CFE itself or NVRAM the erase block
size is always 64k or bigger.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MTD: bcm63xxpart: move the last curpart++ to its correct place

The line belongs above the comment, not below it.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
MTD: bcm63xxpart: use correct printk format for partitions

Use ll to be able to remove the casts.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
ohci: add driver for bcm63xx integrated controller.
MIPS: BCM63XX: register ohci device.
ehci: add driver for bcm63xx integrated controller.