mirror of https://gitee.com/openkylin/linux.git
Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into fixes
This commit is contained in:
commit
d8cff1365e
|
@ -180,7 +180,7 @@ static const uint32_t mx25pdk_keymap[] = {
|
||||||
KEY(3, 3, KEY_POWER),
|
KEY(3, 3, KEY_POWER),
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct matrix_keymap_data mx25pdk_keymap_data __initdata = {
|
static const struct matrix_keymap_data mx25pdk_keymap_data __initconst = {
|
||||||
.keymap = mx25pdk_keymap,
|
.keymap = mx25pdk_keymap,
|
||||||
.keymap_size = ARRAY_SIZE(mx25pdk_keymap),
|
.keymap_size = ARRAY_SIZE(mx25pdk_keymap),
|
||||||
};
|
};
|
||||||
|
|
|
@ -304,7 +304,7 @@ static int name##_set_rate(struct clk *clk, unsigned long rate) \
|
||||||
reg = __raw_readl(CLKCTRL_BASE_ADDR + HW_CLKCTRL_##dr); \
|
reg = __raw_readl(CLKCTRL_BASE_ADDR + HW_CLKCTRL_##dr); \
|
||||||
reg &= ~BM_CLKCTRL_##dr##_DIV; \
|
reg &= ~BM_CLKCTRL_##dr##_DIV; \
|
||||||
reg |= div << BP_CLKCTRL_##dr##_DIV; \
|
reg |= div << BP_CLKCTRL_##dr##_DIV; \
|
||||||
if (reg | (1 << clk->enable_shift)) { \
|
if (reg & (1 << clk->enable_shift)) { \
|
||||||
pr_err("%s: clock is gated\n", __func__); \
|
pr_err("%s: clock is gated\n", __func__); \
|
||||||
return -EINVAL; \
|
return -EINVAL; \
|
||||||
} \
|
} \
|
||||||
|
@ -347,7 +347,7 @@ static int name##_set_parent(struct clk *clk, struct clk *parent) \
|
||||||
{ \
|
{ \
|
||||||
if (parent != clk->parent) { \
|
if (parent != clk->parent) { \
|
||||||
__raw_writel(BM_CLKCTRL_CLKSEQ_BYPASS_##bit, \
|
__raw_writel(BM_CLKCTRL_CLKSEQ_BYPASS_##bit, \
|
||||||
HW_CLKCTRL_CLKSEQ_TOG); \
|
CLKCTRL_BASE_ADDR + HW_CLKCTRL_CLKSEQ_TOG); \
|
||||||
clk->parent = parent; \
|
clk->parent = parent; \
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
|
|
|
@ -355,12 +355,12 @@ static int name##_set_rate(struct clk *clk, unsigned long rate) \
|
||||||
} else { \
|
} else { \
|
||||||
reg &= ~BM_CLKCTRL_##dr##_DIV; \
|
reg &= ~BM_CLKCTRL_##dr##_DIV; \
|
||||||
reg |= div << BP_CLKCTRL_##dr##_DIV; \
|
reg |= div << BP_CLKCTRL_##dr##_DIV; \
|
||||||
if (reg | (1 << clk->enable_shift)) { \
|
if (reg & (1 << clk->enable_shift)) { \
|
||||||
pr_err("%s: clock is gated\n", __func__); \
|
pr_err("%s: clock is gated\n", __func__); \
|
||||||
return -EINVAL; \
|
return -EINVAL; \
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
__raw_writel(reg, CLKCTRL_BASE_ADDR + HW_CLKCTRL_CPU); \
|
__raw_writel(reg, CLKCTRL_BASE_ADDR + HW_CLKCTRL_##dr); \
|
||||||
\
|
\
|
||||||
for (i = 10000; i; i--) \
|
for (i = 10000; i; i--) \
|
||||||
if (!(__raw_readl(CLKCTRL_BASE_ADDR + \
|
if (!(__raw_readl(CLKCTRL_BASE_ADDR + \
|
||||||
|
@ -483,7 +483,7 @@ static int name##_set_parent(struct clk *clk, struct clk *parent) \
|
||||||
{ \
|
{ \
|
||||||
if (parent != clk->parent) { \
|
if (parent != clk->parent) { \
|
||||||
__raw_writel(BM_CLKCTRL_CLKSEQ_BYPASS_##bit, \
|
__raw_writel(BM_CLKCTRL_CLKSEQ_BYPASS_##bit, \
|
||||||
HW_CLKCTRL_CLKSEQ_TOG); \
|
CLKCTRL_BASE_ADDR + HW_CLKCTRL_CLKSEQ_TOG); \
|
||||||
clk->parent = parent; \
|
clk->parent = parent; \
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
|
@ -609,7 +609,6 @@ static struct clk_lookup lookups[] = {
|
||||||
_REGISTER_CLOCK("duart", NULL, uart_clk)
|
_REGISTER_CLOCK("duart", NULL, uart_clk)
|
||||||
_REGISTER_CLOCK("imx28-fec.0", NULL, fec_clk)
|
_REGISTER_CLOCK("imx28-fec.0", NULL, fec_clk)
|
||||||
_REGISTER_CLOCK("imx28-fec.1", NULL, fec_clk)
|
_REGISTER_CLOCK("imx28-fec.1", NULL, fec_clk)
|
||||||
_REGISTER_CLOCK("fec.0", NULL, fec_clk)
|
|
||||||
_REGISTER_CLOCK("rtc", NULL, rtc_clk)
|
_REGISTER_CLOCK("rtc", NULL, rtc_clk)
|
||||||
_REGISTER_CLOCK("pll2", NULL, pll2_clk)
|
_REGISTER_CLOCK("pll2", NULL, pll2_clk)
|
||||||
_REGISTER_CLOCK(NULL, "hclk", hbus_clk)
|
_REGISTER_CLOCK(NULL, "hclk", hbus_clk)
|
||||||
|
|
|
@ -57,7 +57,6 @@ static void __clk_disable(struct clk *clk)
|
||||||
if (clk->disable)
|
if (clk->disable)
|
||||||
clk->disable(clk);
|
clk->disable(clk);
|
||||||
__clk_disable(clk->parent);
|
__clk_disable(clk->parent);
|
||||||
__clk_disable(clk->secondary);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,7 +67,6 @@ static int __clk_enable(struct clk *clk)
|
||||||
|
|
||||||
if (clk->usecount++ == 0) {
|
if (clk->usecount++ == 0) {
|
||||||
__clk_enable(clk->parent);
|
__clk_enable(clk->parent);
|
||||||
__clk_enable(clk->secondary);
|
|
||||||
|
|
||||||
if (clk->enable)
|
if (clk->enable)
|
||||||
clk->enable(clk);
|
clk->enable(clk);
|
||||||
|
|
|
@ -139,6 +139,8 @@ static void mxs_gpio_irq_handler(u32 irq, struct irq_desc *desc)
|
||||||
struct mxs_gpio_port *port = (struct mxs_gpio_port *)get_irq_data(irq);
|
struct mxs_gpio_port *port = (struct mxs_gpio_port *)get_irq_data(irq);
|
||||||
u32 gpio_irq_no_base = port->virtual_irq_start;
|
u32 gpio_irq_no_base = port->virtual_irq_start;
|
||||||
|
|
||||||
|
desc->irq_data.chip->irq_ack(&desc->irq_data);
|
||||||
|
|
||||||
irq_stat = __raw_readl(port->base + PINCTRL_IRQSTAT(port->id)) &
|
irq_stat = __raw_readl(port->base + PINCTRL_IRQSTAT(port->id)) &
|
||||||
__raw_readl(port->base + PINCTRL_IRQEN(port->id));
|
__raw_readl(port->base + PINCTRL_IRQEN(port->id));
|
||||||
|
|
||||||
|
|
|
@ -29,8 +29,6 @@ struct clk {
|
||||||
int id;
|
int id;
|
||||||
/* Source clock this clk depends on */
|
/* Source clock this clk depends on */
|
||||||
struct clk *parent;
|
struct clk *parent;
|
||||||
/* Secondary clock to enable/disable with this clock */
|
|
||||||
struct clk *secondary;
|
|
||||||
/* Reference count of clock enable/disable */
|
/* Reference count of clock enable/disable */
|
||||||
__s8 usecount;
|
__s8 usecount;
|
||||||
/* Register bit position for clock's enable/disable control. */
|
/* Register bit position for clock's enable/disable control. */
|
||||||
|
|
|
@ -95,6 +95,7 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
|
||||||
case MACH_TYPE_MX35_3DS:
|
case MACH_TYPE_MX35_3DS:
|
||||||
case MACH_TYPE_PCM043:
|
case MACH_TYPE_PCM043:
|
||||||
case MACH_TYPE_LILLY1131:
|
case MACH_TYPE_LILLY1131:
|
||||||
|
case MACH_TYPE_VPR200:
|
||||||
uart_base = MX3X_UART1_BASE_ADDR;
|
uart_base = MX3X_UART1_BASE_ADDR;
|
||||||
break;
|
break;
|
||||||
case MACH_TYPE_MAGX_ZN5:
|
case MACH_TYPE_MAGX_ZN5:
|
||||||
|
@ -102,6 +103,7 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
|
||||||
break;
|
break;
|
||||||
case MACH_TYPE_MX51_BABBAGE:
|
case MACH_TYPE_MX51_BABBAGE:
|
||||||
case MACH_TYPE_EUKREA_CPUIMX51SD:
|
case MACH_TYPE_EUKREA_CPUIMX51SD:
|
||||||
|
case MACH_TYPE_MX51_3DS:
|
||||||
uart_base = MX51_UART1_BASE_ADDR;
|
uart_base = MX51_UART1_BASE_ADDR;
|
||||||
break;
|
break;
|
||||||
case MACH_TYPE_MX50_RDP:
|
case MACH_TYPE_MX50_RDP:
|
||||||
|
|
Loading…
Reference in New Issue