Commit Graph

16 Commits

Author SHA1 Message Date
Arnd Bergmann 5d6f52671e ARM: rework endianess selection
Choosing big-endian vs little-endian kernels in Kconfig has not worked
correctly since the introduction of CONFIG_ARCH_MULTIPLATFORM a long
time ago.

The problems is that CONFIG_BIG_ENDIAN depends on
ARCH_SUPPORTS_BIG_ENDIAN, which can set by any one platform
in the config, but would actually have to be supported by all
of them.

This was mostly ok for ARMv6/ARMv7 builds, since these are BE8 and
tend to just work aside from problems in nonportable device drivers.
For ARMv4/v5 machines, CONFIG_BIG_ENDIAN and CONFIG_ARCH_MULTIPLATFORM
were never set together, so this was disabled on all those machines
except for IXP4xx.

As IXP4xx can now become part of ARCH_MULTIPLATFORM, it seems better to
formalize this logic: all ARMv4/v5 platforms get an explicit dependency
on being either big-endian (ixp4xx) or little-endian (the rest). We may
want to fix ixp4xx in the future to support both, but it does not work
in LE mode at the moment.

For the ARMv6/v7 platforms, there are two ways this could be handled

 a) allow both modes only for platforms selecting
    'ARCH_SUPPORTS_BIG_ENDIAN' today, but only LE mode for the
    others, given that these were added intentionally at some
    point.

 b) allow both modes everwhere, given that it was already possible
    to build that way by e.g. selecting ARCH_VIRT, and that the
    list is not an accurate reflection of which platforms may or
    may not work.

Out of these, I picked b) because it seemed slighly more logical
to me.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-04-08 17:20:54 +02:00
Thomas Gleixner ec8f24b7fa treewide: Add SPDX license identifier - Makefile/Kconfig
Add SPDX license identifiers to all Make/Kconfig files which:

 - Have no license information of any form

These files fall under the project license, GPL v2 only. The resulting SPDX
license identifier is:

  GPL-2.0-only

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-21 10:50:46 +02:00
Linus Walleij 2cdbd763f2 ARM: gemini: select pin controller
The Gemini needs its pin controller for the platform to work properly.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-08-05 23:48:29 +02:00
Linus Walleij 1b91d4d4da ARM: gemini: select ARM_AMBA
This selects the ARM_AMBA PrimeCell bus for the Gemini so we can
use the PL08x DMA engine derivative FTDMAC020 through the
combined PL08x driver.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-08-05 23:48:22 +02:00
Linus Walleij a022c73711 ARM: gemini: select the clock controller
We have added a common clock framework clock controller for the
Gemini SoC, let's put it to use.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-08-05 23:48:18 +02:00
Linus Walleij b4814d4ded ARM: gemini: tag the arch as having reset controller
This arch has a reset controller so make this selectable.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-08-05 23:48:12 +02:00
Arnd Bergmann 16c86ef7fc ARM: gemini: don't select SERIAL_OF_PLATFORM
We cannot select the option when SERIAL_8250 is not also set:

warning: (ARCH_GEMINI) selects SERIAL_OF_PLATFORM which has unmet direct dependencies (TTY && HAS_IOMEM && SERIAL_8250 && OF)

This removes the 'select' statement, requiring that users enable the
option manually. Alternatively, we could make it a conditional
'select SERIAL_OF_PLATFORM if SERIAL_8250' or also select a handful
of other symbols that it depends on.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-03-24 22:12:42 +01:00
Linus Walleij f0a18a00f0 ARM: gemini: select the right GPIO block
We want to select the GPIO_FTGPIO010 symbol for the generic
Faraday FTGPIO010 driver, not the old driver.

Cc: Jonas Jensen <jonas.jensen@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-03-22 12:14:37 +01:00
Linus Walleij 1953d4ad97 ARM: gemini: select gemini poweroff
It's especially annoying if the system cannot be properly
powered down so select the poweroff driver from the Kconfig.

Cc: Janos Laube <janos.dev@gmail.com>
Cc: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Cc: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-03-18 21:57:28 +01:00
Linus Walleij 6dbb708a8f ARM: gemini: convert to ARMv4 multiplatform
This converts the Gemini platform to ARMv4 multiplatform, deleting
the local <mach/*> include directory, moving an idiomatic local
idling function into the .machine_init() call and getting rid of
the Makefile.boot finally.

Cc: Janos Laube <janos.dev@gmail.com>
Cc: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Cc: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-03-12 12:27:27 +01:00
Linus Walleij ee149d66d7 ARM: gemini: delete all boardfiles
Delete the Gemini boardfiles: we have corresponding, fully-featured
device trees for all these boards. Delete the referenced include
files. Delete the local config symbols, especially one for
"swapped memory", as all supported boards have swapped memory, and
would a new board be supported this is likely not the right way
to achieve it anyways. Only the Kconfig options in the central
arch/arm/Kconfig remains.

Cc: Janos Laube <janos.dev@gmail.com>
Cc: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Cc: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-03-12 12:27:19 +01:00
Hans Ulli Kroll a21e0030d6 ARM: 6130/1: Gemini: add support for Raidsonic IB4220
depends on patch # 6128, 6129

Add support for Nasbox IB4220 from Raidsonic.
supported devices on SoC
- GPIO with led und keys
- UART
- PFLASH, set fixed partition table

Signed-off-by: Janos Laube <janos.dev@gmail.com>
Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-05-13 12:19:14 +01:00
Hans Ulli Kroll 6a5f0d3a78 ARM: 6129/1: Gemini: add support for Wiliboard WBD-222
Depends on patch # 6128

Add support for Wiliboard WBD-222.
supported devices on SoC
- GPIO with led und keys
- UART
- PFLASH, set fixed partition table

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-05-13 12:19:13 +01:00
Hans Ulli Kroll bd0f9a3ff4 ARM: 6128/1: Gemini: add support for Wiligear WBD-111
added base support for the Wiligear WBD-111
supported devices on SoC
- GPIO with led und keys
- UART
- PFLASH, set fixed partition table

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-05-13 12:19:13 +01:00
Paulius Zaleckas 839e642f3d Gemini: Add support for Teltonika RUT100
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
2009-03-26 10:06:27 +02:00
Paulius Zaleckas 59d3a193f1 ARM: Add Gemini architecture v3
Adds support for Cortina Systems Gemini family CPUs:
http://www.cortina-systems.com/products/category/18

v3:
- fixed __io(a) to be defined as __typesafe_io(a)

v2:
- #include <asm/io.h> -> <linux/io.h>
- remove asm/system.h include
- revorked mm.c to use named initializers
- removed "empty" dma.h
- updated copyrights

Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
2009-03-26 10:06:08 +02:00