Skip to content

Commit 0cd4761

Browse files
committed
Merge branch 'omap1/multiplatform-prep' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc into arm/multiplatform
This is the full series for converting OMAP1 to multiplatform, rebased from my 2019 attempt to do the same thing. The soc tree contains simpler patches to do the same for iop32x, ixp4xx, ep93xx and s3c24xx, which means we are getting closer to completing this for all ARMv5 platforms (I have patches for PXA, which is the last one remaining). Janusz already tested the branch separately and did the missing work for the common-clk conversion after my previous approach was broken. Aaro found one regression during additional testing, this is fixed now. Acked-by: Tony Lindgren <tony@atomide.com> Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2 parents c0c237d + 917bf5a commit 0cd4761

114 files changed

Lines changed: 1186 additions & 1694 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14386,6 +14386,7 @@ F: arch/arm/boot/dts/am335x-nano.dts
1438614386

1438714387
OMAP1 SUPPORT
1438814388
M: Aaro Koskinen <aaro.koskinen@iki.fi>
14389+
M: Janusz Krzysztofik <jmkrzyszt@gmail.com>
1438914390
M: Tony Lindgren <tony@atomide.com>
1439014391
L: linux-omap@vger.kernel.org
1439114392
S: Maintained

arch/arm/Kconfig

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -418,14 +418,12 @@ config ARCH_SA1100
418418
config ARCH_OMAP1
419419
bool "TI OMAP1"
420420
depends on CPU_LITTLE_ENDIAN
421-
select ARCH_OMAP
422421
select CLKSRC_MMIO
422+
select FORCE_PCI if PCCARD
423423
select GENERIC_IRQ_CHIP
424424
select GPIOLIB
425425
select HAVE_LEGACY_CLK
426426
select IRQ_DOMAIN
427-
select NEED_MACH_IO_H if PCCARD
428-
select NEED_MACH_MEMORY_H
429427
select SPARSE_IRQ
430428
help
431429
Support for older TI OMAP1 (omap7xx, omap15xx or omap16xx)
@@ -586,8 +584,6 @@ source "arch/arm/mach-npcm/Kconfig"
586584

587585
source "arch/arm/mach-nspire/Kconfig"
588586

589-
source "arch/arm/plat-omap/Kconfig"
590-
591587
source "arch/arm/mach-omap1/Kconfig"
592588

593589
source "arch/arm/mach-omap2/Kconfig"

arch/arm/Kconfig.debug

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1837,9 +1837,9 @@ config DEBUG_UART_VIRT
18371837
default 0xfec00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
18381838
default 0xfec00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
18391839
default 0xfef36000 if DEBUG_HIGHBANK_UART
1840-
default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1841-
default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1842-
default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1840+
default 0xff0b0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1841+
default 0xff0b0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1842+
default 0xff0b9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
18431843
default 0xffd01000 if DEBUG_HIP01_UART
18441844
default DEBUG_UART_PHYS if !MMU
18451845
depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \

arch/arm/Makefile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,6 @@ machine-$(CONFIG_PLAT_SPEAR) += spear
224224

225225
# Platform directory name. This list is sorted alphanumerically
226226
# by CONFIG_* macro name.
227-
plat-$(CONFIG_ARCH_OMAP) += omap
228227
plat-$(CONFIG_PLAT_ORION) += orion
229228
plat-$(CONFIG_PLAT_PXA) += pxa
230229

arch/arm/mach-omap1/Kconfig

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,15 @@ config ARCH_OMAP16XX
2828
select CPU_ARM926T
2929
select OMAP_DM_TIMER
3030

31+
config ARCH_OMAP1_ANY
32+
select ARCH_OMAP
33+
def_bool ARCH_OMAP730 || ARCH_OMAP850 || ARCH_OMAP15XX || ARCH_OMAP16XX
34+
35+
config ARCH_OMAP
36+
bool
37+
38+
comment "OMAP Feature Selections"
39+
3140
config OMAP_MUX
3241
bool "OMAP multiplexing support"
3342
default y
@@ -53,6 +62,54 @@ config OMAP_MUX_WARNINGS
5362
to change the pin multiplexing setup. When there are no warnings
5463
printed, it's safe to deselect OMAP_MUX for your product.
5564

65+
config OMAP_32K_TIMER
66+
bool "Use 32KHz timer"
67+
depends on ARCH_OMAP16XX
68+
default ARCH_OMAP16XX
69+
help
70+
Select this option if you want to enable the OMAP 32KHz timer.
71+
This timer saves power compared to the OMAP_MPU_TIMER, and has
72+
support for no tick during idle. The 32KHz timer provides less
73+
intra-tick resolution than OMAP_MPU_TIMER. The 32KHz timer is
74+
currently only available for OMAP16XX, 24XX, 34XX, OMAP4/5 and DRA7XX.
75+
76+
On OMAP2PLUS this value is only used for CONFIG_HZ and
77+
CLOCK_TICK_RATE compile time calculation.
78+
The actual timer selection is done in the board file
79+
through the (DT_)MACHINE_START structure.
80+
81+
config OMAP_MPU_TIMER
82+
bool "Use mpu timer"
83+
depends on ARCH_OMAP1
84+
help
85+
Select this option if you want to use the OMAP mpu timer. This
86+
timer provides more intra-tick resolution than the 32KHz timer,
87+
but consumes more power.
88+
89+
config OMAP_SERIAL_WAKE
90+
bool "Enable wake-up events for serial ports"
91+
depends on ARCH_OMAP1 && OMAP_MUX
92+
default y
93+
help
94+
Select this option if you want to have your system wake up
95+
to data on the serial RX line. This allows you to wake the
96+
system from serial console.
97+
98+
config OMAP_RESET_CLOCKS
99+
bool "Reset unused clocks during boot"
100+
depends on ARCH_OMAP
101+
help
102+
Say Y if you want to reset unused clocks during boot.
103+
This option saves power, but assumes all drivers are
104+
using the clock framework. Broken drivers that do not
105+
yet use clock framework may not work with this option.
106+
If you are booting from another operating system, you
107+
probably do not want this option enabled until your
108+
device drivers work properly.
109+
110+
config ARCH_OMAP_OTG
111+
bool
112+
56113
comment "OMAP Board Type"
57114

58115
config MACH_OMAP_INNOVATOR

arch/arm/mach-omap1/Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@
33
# Makefile for the linux kernel.
44
#
55

6+
ifdef CONFIG_ARCH_OMAP1_ANY
7+
68
# Common support
79
obj-y := io.o id.o sram-init.o sram.o time.o irq.o mux.o flash.o \
8-
serial.o devices.o dma.o fb.o
10+
serial.o devices.o dma.o omap-dma.o fb.o
911
obj-y += clock.o clock_data.o opp_data.o reset.o pm_bus.o timer.o
1012

1113
ifneq ($(CONFIG_SND_SOC_OMAP_MCBSP),)
@@ -58,6 +60,4 @@ obj-$(CONFIG_ARCH_OMAP850) += gpio7xx.o
5860
obj-$(CONFIG_ARCH_OMAP15XX) += gpio15xx.o
5961
obj-$(CONFIG_ARCH_OMAP16XX) += gpio16xx.o
6062

61-
ifneq ($(CONFIG_FB_OMAP),)
62-
obj-y += lcd_dma.o
6363
endif

arch/arm/mach-omap1/ams-delta-fiq-handler.S

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,15 @@
1313
#include <linux/linkage.h>
1414
#include <linux/platform_data/ams-delta-fiq.h>
1515
#include <linux/platform_data/gpio-omap.h>
16+
#include <linux/soc/ti/omap1-io.h>
1617

1718
#include <asm/assembler.h>
1819
#include <asm/irq.h>
1920

21+
#include "hardware.h"
2022
#include "ams-delta-fiq.h"
2123
#include "board-ams-delta.h"
2224
#include "iomap.h"
23-
#include "soc.h"
2425

2526
/*
2627
* OMAP1510 GPIO related symbol copied from arch/arm/mach-omap1/gpio15xx.c.

arch/arm/mach-omap1/ams-delta-fiq.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@
2121
#include <linux/platform_device.h>
2222

2323
#include <asm/fiq.h>
24+
#include <linux/soc/ti/omap1-io.h>
2425

26+
#include "hardware.h"
2527
#include "ams-delta-fiq.h"
2628
#include "board-ams-delta.h"
2729

arch/arm/mach-omap1/ams-delta-fiq.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
#ifndef __AMS_DELTA_FIQ_H
1717
#define __AMS_DELTA_FIQ_H
1818

19-
#include <mach/irqs.h>
19+
#include "irqs.h"
2020

2121
/*
2222
* Interrupt number used for passing control from FIQ to IRQ.

arch/arm/mach-omap1/board-ams-delta.c

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -28,18 +28,17 @@
2828
#include <linux/omapfb.h>
2929
#include <linux/io.h>
3030
#include <linux/platform_data/gpio-omap.h>
31+
#include <linux/soc/ti/omap1-mux.h>
3132

3233
#include <asm/serial.h>
3334
#include <asm/mach-types.h>
3435
#include <asm/mach/arch.h>
3536
#include <asm/mach/map.h>
3637

3738
#include <linux/platform_data/keypad-omap.h>
38-
#include <mach/mux.h>
39-
40-
#include <mach/hardware.h>
41-
#include <mach/usb.h>
4239

40+
#include "hardware.h"
41+
#include "usb.h"
4342
#include "ams-delta-fiq.h"
4443
#include "board-ams-delta.h"
4544
#include "iomap.h"
@@ -407,9 +406,6 @@ static struct gpio_led gpio_leds[] __initdata = {
407406
[LATCH1_PIN_LED_CAMERA] = {
408407
.name = "camera",
409408
.default_state = LEDS_GPIO_DEFSTATE_OFF,
410-
#ifdef CONFIG_LEDS_TRIGGERS
411-
.default_trigger = "ams_delta_camera",
412-
#endif
413409
},
414410
[LATCH1_PIN_LED_ADVERT] = {
415411
.name = "advert",
@@ -456,10 +452,6 @@ static struct gpiod_lookup_table leds_gpio_table = {
456452
},
457453
};
458454

459-
#ifdef CONFIG_LEDS_TRIGGERS
460-
DEFINE_LED_TRIGGER(ams_delta_camera_led_trigger);
461-
#endif
462-
463455
static struct platform_device ams_delta_audio_device = {
464456
.name = "ams-delta-audio",
465457
.id = -1,
@@ -705,10 +697,6 @@ static void __init ams_delta_init(void)
705697
omap_register_i2c_bus(1, 100, NULL, 0);
706698

707699
omap1_usb_init(&ams_delta_usb_config);
708-
#ifdef CONFIG_LEDS_TRIGGERS
709-
led_trigger_register_simple("ams_delta_camera",
710-
&ams_delta_camera_led_trigger);
711-
#endif
712700
platform_add_devices(ams_delta_devices, ARRAY_SIZE(ams_delta_devices));
713701

714702
/*

0 commit comments

Comments
 (0)