Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5fd4d427 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'omap-for-v3.8/cleanup-fixes-part2-v2-signed' of...

Merge tag 'omap-for-v3.8/cleanup-fixes-part2-v2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup

From Tony Lindgren <tony@atomide.com>:

One build fix for recent clean up when CONFIG_PM is not set
and clean up related improvment to the SoC detection.

* tag 'omap-for-v3.8/cleanup-fixes-part2-v2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap

:
  ARM: OMAP4: ID: Improve features detection and check
  ARM: OMAP: Fix compile for OMAP_PM_NOOP if PM is not selected

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents cb64babf 42a1cc9c
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -73,6 +73,8 @@ obj-$(CONFIG_ARCH_OMAP4) += opp4xxx_data.o
endif

# Power Management
obj-$(CONFIG_OMAP_PM_NOOP)		+= omap-pm-noop.o

ifeq ($(CONFIG_PM),y)
obj-$(CONFIG_ARCH_OMAP2)		+= pm24xx.o
obj-$(CONFIG_ARCH_OMAP2)		+= sleep24xx.o
@@ -80,7 +82,6 @@ obj-$(CONFIG_ARCH_OMAP3) += pm34xx.o sleep34xx.o
obj-$(CONFIG_ARCH_OMAP4)		+= pm44xx.o omap-mpuss-lowpower.o
obj-$(CONFIG_SOC_OMAP5)			+= omap-mpuss-lowpower.o
obj-$(CONFIG_PM_DEBUG)			+= pm-debug.o
obj-$(CONFIG_OMAP_PM_NOOP)		+= omap-pm-noop.o

obj-$(CONFIG_POWER_AVS_OMAP)		+= sr_device.o
obj-$(CONFIG_POWER_AVS_OMAP_CLASS3)    += smartreflex-class3.o
+7 −18
Original line number Diff line number Diff line
@@ -28,6 +28,9 @@
#include "soc.h"
#include "control.h"

#define OMAP4_SILICON_TYPE_STANDARD		0x01
#define OMAP4_SILICON_TYPE_PERFORMANCE		0x02

static unsigned int omap_revision;
static const char *cpu_rev;
u32 omap_features;
@@ -273,25 +276,11 @@ void __init omap4xxx_check_features(void)
{
	u32 si_type;

	if (cpu_is_omap443x())
		omap_features |= OMAP4_HAS_MPU_1GHZ;


	if (cpu_is_omap446x()) {
	si_type =
			read_tap_reg(OMAP4_CTRL_MODULE_CORE_STD_FUSE_PROD_ID_1);
		switch ((si_type & (3 << 16)) >> 16) {
		case 2:
			/* High performance device */
			omap_features |= OMAP4_HAS_MPU_1_5GHZ;
			break;
		case 1:
		default:
			/* Standard device */
			omap_features |= OMAP4_HAS_MPU_1_2GHZ;
			break;
		}
	}
	(read_tap_reg(OMAP4_CTRL_MODULE_CORE_STD_FUSE_PROD_ID_1) >> 16) & 0x03;

	if (si_type == OMAP4_SILICON_TYPE_PERFORMANCE)
		omap_features = OMAP4_HAS_PERF_SILICON;
}

void __init ti81xx_check_features(void)
+2 −6
Original line number Diff line number Diff line
@@ -435,9 +435,7 @@ extern u32 omap_features;
#define OMAP3_HAS_IO_WAKEUP		BIT(6)
#define OMAP3_HAS_SDRC			BIT(7)
#define OMAP3_HAS_IO_CHAIN_CTRL		BIT(8)
#define OMAP4_HAS_MPU_1GHZ		BIT(9)
#define OMAP4_HAS_MPU_1_2GHZ		BIT(10)
#define OMAP4_HAS_MPU_1_5GHZ		BIT(11)
#define OMAP4_HAS_PERF_SILICON		BIT(9)


#define OMAP3_HAS_FEATURE(feat,flag)			\
@@ -465,9 +463,7 @@ static inline unsigned int omap4_has_ ##feat(void) \
	return omap_features & OMAP4_HAS_ ##flag;	\
}							\

OMAP4_HAS_FEATURE(mpu_1ghz, MPU_1GHZ)
OMAP4_HAS_FEATURE(mpu_1_2ghz, MPU_1_2GHZ)
OMAP4_HAS_FEATURE(mpu_1_5ghz, MPU_1_5GHZ)
OMAP4_HAS_FEATURE(perf_silicon, PERF_SILICON)

#endif	/* __ASSEMBLY__ */