Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 326381
b: refs/heads/master
c: b536661
h: refs/heads/master
i:
  326379: 3feb6cb
v: v3
  • Loading branch information
Olof Johansson committed Sep 22, 2012
1 parent d68e5a8 commit 3333ab3
Show file tree
Hide file tree
Showing 35 changed files with 135 additions and 74 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: fb997a46626dca2778fa7570bb516d8486f2f837
refs/heads/master: b536661bb0091b19123fa0c22f7087fd886d7b37
2 changes: 1 addition & 1 deletion trunk/arch/arm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2313,7 +2313,7 @@ menu "Power management options"
source "kernel/power/Kconfig"

config ARCH_SUSPEND_POSSIBLE
depends on !ARCH_S5PC100 && !ARCH_TEGRA
depends on !ARCH_S5PC100
depends on CPU_ARM920T || CPU_ARM926T || CPU_SA1100 || \
CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE || CPU_MOHAWK
def_bool y
Expand Down
5 changes: 0 additions & 5 deletions trunk/arch/arm/mach-msm/board-msm8x60.c
Original file line number Diff line number Diff line change
Expand Up @@ -93,11 +93,6 @@ static struct of_dev_auxdata msm_auxdata_lookup[] __initdata = {

static void __init msm8x60_dt_init(void)
{
if (of_machine_is_compatible("qcom,msm8660-surf")) {
printk(KERN_INFO "Init surf UART registers\n");
msm8x60_init_uart12dm();
}

of_platform_populate(NULL, of_default_bus_match_table,
msm_auxdata_lookup, NULL);
}
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/arm/mach-msm/include/mach/msm_iomap-8960.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
#define MSM8960_TMR0_SIZE SZ_4K

#ifdef CONFIG_DEBUG_MSM8960_UART
#define MSM_DEBUG_UART_BASE 0xE1040000
#define MSM_DEBUG_UART_BASE 0xF0040000
#define MSM_DEBUG_UART_PHYS 0x16440000
#endif

Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/arm/mach-msm/include/mach/msm_iomap-8x60.h
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
#define MSM8X60_TMR0_SIZE SZ_4K

#ifdef CONFIG_DEBUG_MSM8660_UART
#define MSM_DEBUG_UART_BASE 0xE1040000
#define MSM_DEBUG_UART_BASE 0xF0040000
#define MSM_DEBUG_UART_PHYS 0x19C40000
#endif

Expand Down
25 changes: 13 additions & 12 deletions trunk/arch/arm/mach-msm/io.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,30 +29,31 @@

#include <mach/board.h>

#define MSM_CHIP_DEVICE(name, chip) { \
#define MSM_CHIP_DEVICE_TYPE(name, chip, mem_type) { \
.virtual = (unsigned long) MSM_##name##_BASE, \
.pfn = __phys_to_pfn(chip##_##name##_PHYS), \
.length = chip##_##name##_SIZE, \
.type = MT_DEVICE_NONSHARED, \
.type = mem_type, \
}

#define MSM_DEVICE_TYPE(name, mem_type) \
MSM_CHIP_DEVICE_TYPE(name, MSM, mem_type)
#define MSM_CHIP_DEVICE(name, chip) \
MSM_CHIP_DEVICE_TYPE(name, chip, MT_DEVICE)
#define MSM_DEVICE(name) MSM_CHIP_DEVICE(name, MSM)

#if defined(CONFIG_ARCH_MSM7X00A) || defined(CONFIG_ARCH_MSM7X27) \
|| defined(CONFIG_ARCH_MSM7X25)
static struct map_desc msm_io_desc[] __initdata = {
MSM_DEVICE(VIC),
MSM_CHIP_DEVICE(CSR, MSM7X00),
MSM_DEVICE(DMOV),
MSM_CHIP_DEVICE(GPIO1, MSM7X00),
MSM_CHIP_DEVICE(GPIO2, MSM7X00),
MSM_DEVICE(CLK_CTL),
MSM_DEVICE_TYPE(VIC, MT_DEVICE_NONSHARED),
MSM_CHIP_DEVICE_TYPE(CSR, MSM7X00, MT_DEVICE_NONSHARED),
MSM_DEVICE_TYPE(DMOV, MT_DEVICE_NONSHARED),
MSM_CHIP_DEVICE_TYPE(GPIO1, MSM7X00, MT_DEVICE_NONSHARED),
MSM_CHIP_DEVICE_TYPE(GPIO2, MSM7X00, MT_DEVICE_NONSHARED),
MSM_DEVICE_TYPE(CLK_CTL, MT_DEVICE_NONSHARED),
#if defined(CONFIG_DEBUG_MSM_UART1) || defined(CONFIG_DEBUG_MSM_UART2) || \
defined(CONFIG_DEBUG_MSM_UART3)
MSM_DEVICE(DEBUG_UART),
#endif
#ifdef CONFIG_ARCH_MSM7X30
MSM_DEVICE(GCC),
MSM_DEVICE_TYPE(DEBUG_UART, MT_DEVICE_NONSHARED),
#endif
{
.virtual = (unsigned long) MSM_SHARED_RAM_BASE,
Expand Down
2 changes: 2 additions & 0 deletions trunk/arch/arm/mach-omap2/gpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ static int __init omap2_gpio_dev_init(struct omap_hwmod *oh, void *unused)
pdata->regs = kzalloc(sizeof(struct omap_gpio_reg_offs), GFP_KERNEL);
if (!pdata->regs) {
pr_err("gpio%d: Memory allocation failed\n", id);
kfree(pdata);
return -ENOMEM;
}

Expand Down Expand Up @@ -121,6 +122,7 @@ static int __init omap2_gpio_dev_init(struct omap_hwmod *oh, void *unused)
break;
default:
WARN(1, "Invalid gpio bank_type\n");
kfree(pdata->regs);
kfree(pdata);
return -EINVAL;
}
Expand Down
8 changes: 1 addition & 7 deletions trunk/arch/arm/mach-omap2/omap-wakeupgen.c
Original file line number Diff line number Diff line change
Expand Up @@ -229,13 +229,7 @@ static inline void omap4_irq_save_context(void)
/* Save AuxBoot* registers */
val = __raw_readl(wakeupgen_base + OMAP_AUX_CORE_BOOT_0);
__raw_writel(val, sar_base + AUXCOREBOOT0_OFFSET);
val = __raw_readl(wakeupgen_base + OMAP_AUX_CORE_BOOT_0);
__raw_writel(val, sar_base + AUXCOREBOOT1_OFFSET);

/* Save SyncReq generation logic */
val = __raw_readl(wakeupgen_base + OMAP_AUX_CORE_BOOT_0);
__raw_writel(val, sar_base + AUXCOREBOOT0_OFFSET);
val = __raw_readl(wakeupgen_base + OMAP_AUX_CORE_BOOT_0);
val = __raw_readl(wakeupgen_base + OMAP_AUX_CORE_BOOT_1);
__raw_writel(val, sar_base + AUXCOREBOOT1_OFFSET);

/* Save SyncReq generation logic */
Expand Down
43 changes: 36 additions & 7 deletions trunk/arch/arm/mach-tegra/powergate.c
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,9 @@ int __init tegra_powergate_init(void)

#ifdef CONFIG_DEBUG_FS

static const char * const powergate_name[] = {
static const char * const *powergate_name;

static const char * const powergate_name_t20[] = {
[TEGRA_POWERGATE_CPU] = "cpu",
[TEGRA_POWERGATE_3D] = "3d",
[TEGRA_POWERGATE_VENC] = "venc",
Expand All @@ -209,6 +211,23 @@ static const char * const powergate_name[] = {
[TEGRA_POWERGATE_MPE] = "mpe",
};

static const char * const powergate_name_t30[] = {
[TEGRA_POWERGATE_CPU] = "cpu0",
[TEGRA_POWERGATE_3D] = "3d0",
[TEGRA_POWERGATE_VENC] = "venc",
[TEGRA_POWERGATE_VDEC] = "vdec",
[TEGRA_POWERGATE_PCIE] = "pcie",
[TEGRA_POWERGATE_L2] = "l2",
[TEGRA_POWERGATE_MPE] = "mpe",
[TEGRA_POWERGATE_HEG] = "heg",
[TEGRA_POWERGATE_SATA] = "sata",
[TEGRA_POWERGATE_CPU1] = "cpu1",
[TEGRA_POWERGATE_CPU2] = "cpu2",
[TEGRA_POWERGATE_CPU3] = "cpu3",
[TEGRA_POWERGATE_CELP] = "celp",
[TEGRA_POWERGATE_3D1] = "3d1",
};

static int powergate_show(struct seq_file *s, void *data)
{
int i;
Expand Down Expand Up @@ -237,14 +256,24 @@ static const struct file_operations powergate_fops = {
int __init tegra_powergate_debugfs_init(void)
{
struct dentry *d;
int err = -ENOMEM;

d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL,
&powergate_fops);
if (!d)
return -ENOMEM;
switch (tegra_chip_id) {
case TEGRA20:
powergate_name = powergate_name_t20;
break;
case TEGRA30:
powergate_name = powergate_name_t30;
break;
}

if (powergate_name) {
d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL,
&powergate_fops);
if (!d)
return -ENOMEM;
}

return err;
return 0;
}

#endif
1 change: 1 addition & 0 deletions trunk/arch/arm/mach-ux500/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ config MACH_MOP500
select I2C
select I2C_NOMADIK
select SOC_BUS
select REGULATOR_FIXED_VOLTAGE
help
Include support for the MOP500 development platform.

Expand Down
15 changes: 15 additions & 0 deletions trunk/arch/arm/mach-ux500/board-mop500-regulators.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,21 @@
#include <linux/regulator/ab8500.h>
#include "board-mop500-regulators.h"

static struct regulator_consumer_supply gpio_en_3v3_consumers[] = {
REGULATOR_SUPPLY("vdd33a", "smsc911x.0"),
};

struct regulator_init_data gpio_en_3v3_regulator = {
.constraints = {
.name = "EN-3V3",
.min_uV = 3300000,
.max_uV = 3300000,
.valid_ops_mask = REGULATOR_CHANGE_STATUS,
},
.num_consumer_supplies = ARRAY_SIZE(gpio_en_3v3_consumers),
.consumer_supplies = gpio_en_3v3_consumers,
};

/*
* TPS61052 regulator
*/
Expand Down
1 change: 1 addition & 0 deletions trunk/arch/arm/mach-ux500/board-mop500-regulators.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,6 @@ extern struct ab8500_regulator_reg_init
ab8500_regulator_reg_init[AB8500_NUM_REGULATOR_REGISTERS];
extern struct regulator_init_data ab8500_regulators[AB8500_NUM_REGULATORS];
extern struct regulator_init_data tps61052_regulator;
extern struct regulator_init_data gpio_en_3v3_regulator;

#endif
19 changes: 19 additions & 0 deletions trunk/arch/arm/mach-ux500/board-mop500.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
#include <linux/spi/spi.h>
#include <linux/mfd/abx500/ab8500.h>
#include <linux/regulator/ab8500.h>
#include <linux/regulator/fixed.h>
#include <linux/mfd/tc3589x.h>
#include <linux/mfd/tps6105x.h>
#include <linux/mfd/abx500/ab8500-gpio.h>
Expand Down Expand Up @@ -76,6 +77,23 @@ static struct platform_device snowball_led_dev = {
},
};

static struct fixed_voltage_config snowball_gpio_en_3v3_data = {
.supply_name = "EN-3V3",
.gpio = SNOWBALL_EN_3V3_ETH_GPIO,
.microvolts = 3300000,
.enable_high = 1,
.init_data = &gpio_en_3v3_regulator,
.startup_delay = 5000, /* 1200us */
};

static struct platform_device snowball_gpio_en_3v3_regulator_dev = {
.name = "reg-fixed-voltage",
.id = 1,
.dev = {
.platform_data = &snowball_gpio_en_3v3_data,
},
};

static struct ab8500_gpio_platform_data ab8500_gpio_pdata = {
.gpio_base = MOP500_AB8500_PIN_GPIO(1),
.irq_base = MOP500_AB8500_VIR_GPIO_IRQ_BASE,
Expand Down Expand Up @@ -586,6 +604,7 @@ static struct platform_device *snowball_platform_devs[] __initdata = {
&snowball_led_dev,
&snowball_key_dev,
&snowball_sbnet_dev,
&snowball_gpio_en_3v3_regulator_dev,
};

static void __init mop500_init_machine(void)
Expand Down
1 change: 1 addition & 0 deletions trunk/arch/arm/mach-ux500/cpu-db8500.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
#include <linux/io.h>
#include <linux/mfd/abx500/ab8500.h>

#include <asm/pmu.h>
#include <asm/mach/map.h>
#include <asm/pmu.h>
#include <plat/gpio-nomadik.h>
Expand Down
2 changes: 2 additions & 0 deletions trunk/arch/arm/mach-ux500/cpu.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ void __init ux500_init_irq(void)
void __iomem *dist_base;
void __iomem *cpu_base;

gic_arch_extn.flags = IRQCHIP_SKIP_SET_WAKE | IRQCHIP_MASK_ON_SUSPEND;

if (cpu_is_u8500_family()) {
dist_base = __io_address(U8500_GIC_DIST_BASE);
cpu_base = __io_address(U8500_GIC_CPU_BASE);
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/arm/mm/cache-l2x0.c
Original file line number Diff line number Diff line change
Expand Up @@ -554,7 +554,7 @@ static const struct of_device_id l2x0_ids[] __initconst = {
int __init l2x0_of_init(u32 aux_val, u32 aux_mask)
{
struct device_node *np;
struct l2x0_of_data *data;
const struct l2x0_of_data *data;
struct resource res;

np = of_find_matching_node(NULL, l2x0_ids);
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/83xx/suspend.c
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ static int pmc_probe(struct platform_device *ofdev)
const struct of_device_id *match;
struct device_node *np = ofdev->dev.of_node;
struct resource res;
struct pmc_type *type;
const struct pmc_type *type;
int ret = 0;

match = of_match_device(pmc_match, &ofdev->dev);
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/cell/celleb_pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -472,7 +472,7 @@ int __init celleb_setup_phb(struct pci_controller *phb)
{
struct device_node *dev = phb->dn;
const struct of_device_id *match;
struct celleb_phb_spec *phb_spec;
const struct celleb_phb_spec *phb_spec;
int rc;

match = of_match_node(celleb_phb_match, dev);
Expand Down
8 changes: 4 additions & 4 deletions trunk/arch/powerpc/sysdev/fsl_msi.c
Original file line number Diff line number Diff line change
Expand Up @@ -368,7 +368,7 @@ static int __devinit fsl_of_msi_probe(struct platform_device *dev)
int err, i, j, irq_index, count;
int rc;
const u32 *p;
struct fsl_msi_feature *features;
const struct fsl_msi_feature *features;
int len;
u32 offset;
static const u32 all_avail[] = { 0, NR_MSI_IRQS };
Expand Down Expand Up @@ -502,15 +502,15 @@ static const struct fsl_msi_feature vmpic_msi_feature = {
static const struct of_device_id fsl_of_msi_ids[] = {
{
.compatible = "fsl,mpic-msi",
.data = (void *)&mpic_msi_feature,
.data = &mpic_msi_feature,
},
{
.compatible = "fsl,ipic-msi",
.data = (void *)&ipic_msi_feature,
.data = &ipic_msi_feature,
},
{
.compatible = "fsl,vmpic-msi",
.data = (void *)&vmpic_msi_feature,
.data = &vmpic_msi_feature,
},
{}
};
Expand Down
8 changes: 4 additions & 4 deletions trunk/drivers/dma/tegra20-apb-dma.c
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ struct tegra_dma {
struct clk *dma_clk;
spinlock_t global_lock;
void __iomem *base_addr;
struct tegra_dma_chip_data *chip_data;
const struct tegra_dma_chip_data *chip_data;

/* Some register need to be cache before suspend */
u32 reg_gen;
Expand Down Expand Up @@ -1173,14 +1173,14 @@ static void tegra_dma_free_chan_resources(struct dma_chan *dc)
}

/* Tegra20 specific DMA controller information */
static struct tegra_dma_chip_data tegra20_dma_chip_data = {
static const struct tegra_dma_chip_data tegra20_dma_chip_data = {
.nr_channels = 16,
.max_dma_count = 1024UL * 64,
};

#if defined(CONFIG_OF)
/* Tegra30 specific DMA controller information */
static struct tegra_dma_chip_data tegra30_dma_chip_data = {
static const struct tegra_dma_chip_data tegra30_dma_chip_data = {
.nr_channels = 32,
.max_dma_count = 1024UL * 64,
};
Expand All @@ -1204,7 +1204,7 @@ static int __devinit tegra_dma_probe(struct platform_device *pdev)
struct tegra_dma *tdma;
int ret;
int i;
struct tegra_dma_chip_data *cdata = NULL;
const struct tegra_dma_chip_data *cdata = NULL;

if (pdev->dev.of_node) {
const struct of_device_id *match;
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/gpio/gpio-mpc8xxx.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ struct mpc8xxx_gpio_chip {
*/
u32 data;
struct irq_domain *irq;
void *of_dev_id_data;
const void *of_dev_id_data;
};

static inline u32 mpc8xxx_gpio2mask(unsigned int gpio)
Expand Down
Loading

0 comments on commit 3333ab3

Please sign in to comment.