Commit a832eb20 authored by Olof Johansson's avatar Olof Johansson
Browse files

Merge tag 'davinci-for-v5.6/soc' of...

Merge tag 'davinci-for-v5.6/soc' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into arm/late

DaVinci SoC updates for v5.6 include migrating DM365 SoC to use
drivers/clocksource based driver for timer. This leads to removal
of machine specific timer driver.

There are two patches adding missing fixed regulators for audio codecs
on DM365 and DM644x EVMs.

* tag 'davinci-for-v5.6/soc' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: davinci: dm644x-evm: Add Fixed regulators needed for tlv320aic33
  ARM: davinci: dm365-evm: Add Fixed regulators needed for tlv320aic3101
  ARM: davinci: remove legacy timer support
  ARM: davinci: dm365: switch to using the clocksource driver
  clocksource: davinci: only enable clockevents once tim34 is initialized

Link: https://lore.kernel.org/r/043eb5b2-a302-4de6-a3e8-8238e49483b1@ti.com/


Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 19d52e94 5e06d196
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -7,8 +7,7 @@
ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include

# Common objects
obj-y 					:= time.o serial.o usb.o \
					   common.o sram.o
obj-y 					:= serial.o usb.o common.o sram.o

obj-$(CONFIG_DAVINCI_MUX)		+= mux.o

+20 −0
Original line number Diff line number Diff line
@@ -30,6 +30,8 @@
#include <linux/spi/eeprom.h>
#include <linux/v4l2-dv-timings.h>
#include <linux/platform_data/ti-aemif.h>
#include <linux/regulator/fixed.h>
#include <linux/regulator/machine.h>

#include <asm/mach-types.h>
#include <asm/mach/arch.h>
@@ -245,6 +247,19 @@ static struct davinci_i2c_platform_data i2c_pdata = {
	.bus_delay	= 0	/* usec */,
};

/* Fixed regulator support */
static struct regulator_consumer_supply fixed_supplies_3_3v[] = {
	/* Baseboard 3.3V: 5V -> TPS767D301 -> 3.3V */
	REGULATOR_SUPPLY("AVDD", "1-0018"),
	REGULATOR_SUPPLY("DRVDD", "1-0018"),
	REGULATOR_SUPPLY("IOVDD", "1-0018"),
};

static struct regulator_consumer_supply fixed_supplies_1_8v[] = {
	/* Baseboard 1.8V: 5V -> TPS767D301 -> 1.8V */
	REGULATOR_SUPPLY("DVDD", "1-0018"),
};

static int dm365evm_keyscan_enable(struct device *dev)
{
	return davinci_cfg_reg(DM365_KEYSCAN);
@@ -800,6 +815,11 @@ static __init void dm365_evm_init(void)
	if (ret)
		pr_warn("%s: GPIO init failed: %d\n", __func__, ret);

	regulator_register_always_on(0, "fixed-dummy", fixed_supplies_1_8v,
				     ARRAY_SIZE(fixed_supplies_1_8v), 1800000);
	regulator_register_always_on(1, "fixed-dummy", fixed_supplies_3_3v,
				     ARRAY_SIZE(fixed_supplies_3_3v), 3300000);

	nvmem_add_cell_table(&davinci_nvmem_cell_table);
	nvmem_add_cell_lookups(&davinci_nvmem_cell_lookup, 1);

+20 −0
Original line number Diff line number Diff line
@@ -29,6 +29,8 @@
#include <linux/v4l2-dv-timings.h>
#include <linux/export.h>
#include <linux/leds.h>
#include <linux/regulator/fixed.h>
#include <linux/regulator/machine.h>

#include <media/i2c/tvp514x.h>

@@ -653,6 +655,19 @@ static struct i2c_board_info __initdata i2c_info[] = {
	},
};

/* Fixed regulator support */
static struct regulator_consumer_supply fixed_supplies_3_3v[] = {
	/* Baseboard 3.3V: 5V -> TPS54310PWP -> 3.3V */
	REGULATOR_SUPPLY("AVDD", "1-001b"),
	REGULATOR_SUPPLY("DRVDD", "1-001b"),
};

static struct regulator_consumer_supply fixed_supplies_1_8v[] = {
	/* Baseboard 1.8V: 5V -> TPS54310PWP -> 1.8V */
	REGULATOR_SUPPLY("IOVDD", "1-001b"),
	REGULATOR_SUPPLY("DVDD", "1-001b"),
};

#define DM644X_I2C_SDA_PIN	GPIO_TO_PIN(2, 12)
#define DM644X_I2C_SCL_PIN	GPIO_TO_PIN(2, 11)

@@ -831,6 +846,11 @@ static __init void davinci_evm_init(void)

	dm644x_register_clocks();

	regulator_register_always_on(0, "fixed-dummy", fixed_supplies_1_8v,
				     ARRAY_SIZE(fixed_supplies_1_8v), 1800000);
	regulator_register_always_on(1, "fixed-dummy", fixed_supplies_3_3v,
				     ARRAY_SIZE(fixed_supplies_3_3v), 3300000);

	dm644x_init_devices();

	ret = dm644x_gpio_register();
+0 −1
Original line number Diff line number Diff line
@@ -21,7 +21,6 @@
#include <mach/common.h>
#include <mach/cputype.h>
#include <mach/da8xx.h>
#include <mach/time.h>

#include "asp.h"
#include "cpuidle.h"
+0 −19
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@
#include <mach/hardware.h>
#include <mach/cputype.h>
#include <mach/mux.h>
#include <mach/time.h>

#include "davinci.h"
#include "irqs.h"
@@ -303,21 +302,3 @@ int davinci_gpio_register(struct resource *res, int size, void *pdata)
	davinci_gpio_device.dev.platform_data = pdata;
	return platform_device_register(&davinci_gpio_device);
}

/*-------------------------------------------------------------------------*/

/*-------------------------------------------------------------------------*/

struct davinci_timer_instance davinci_timer_instance[2] = {
	{
		.base		= DAVINCI_TIMER0_BASE,
		.bottom_irq	= DAVINCI_INTC_IRQ(IRQ_TINT0_TINT12),
		.top_irq	= DAVINCI_INTC_IRQ(IRQ_TINT0_TINT34),
	},
	{
		.base		= DAVINCI_TIMER1_BASE,
		.bottom_irq	= DAVINCI_INTC_IRQ(IRQ_TINT1_TINT12),
		.top_irq	= DAVINCI_INTC_IRQ(IRQ_TINT1_TINT34),
	},
};
Loading