~ubuntu-branches/ubuntu/precise/linux-linaro-u8500/precise

« back to all changes in this revision

Viewing changes to arch/arm/mach-spear3xx/spear320.c

  • Committer: Bazaar Package Importer
  • Author(s): John Rigby, Upstream Fixes, Andy Green, John Rigby
  • Date: 2011-04-14 12:16:06 UTC
  • Revision ID: james.westby@ubuntu.com-20110414121606-b77podkyqgr2oix7
Tags: 2.6.38-1002.3
[ Upstream Fixes ]

* MUSB: shutdown: Make sure block is awake before doing shutdown
  - LP: #745737
* Fixed gpio polarity of gpio USB-phy reset.
  - LP: #747639

[ Andy Green ]

* LINARO: SAUCE: disable CONFIG_OMAP_RESET_CLOCKS
  - LP: #752900

[ John Rigby ]

* Rebase to new upstreams:
  Linux v2.6.38.1
  linaro-linux-2.6.38-upstream-29Mar2011
  Ubuntu-2.6.38-7.35
* SAUCE: OMAP4: clock: wait for module to become accessible on
  a clk enable
  - LP: #745737
* Rebase to new upstreams:
  Linux v2.6.38.2
  linaro-linux-2.6.38-upstream-5Apr2011
  Ubuntu-2.6.38-8.41
  - LP: #732842
* Update configs for device tree, dvfs and lttng
* LINARO: add building of dtb's
* LINARO: SAUCE: Disable lowest operating freqs on omap34xx
  - LP: #732912

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
 
14
14
#include <linux/ptrace.h>
15
15
#include <asm/irq.h>
 
16
#include <plat/shirq.h>
16
17
#include <mach/generic.h>
17
 
#include <mach/spear.h>
18
 
#include <plat/shirq.h>
 
18
#include <mach/hardware.h>
19
19
 
20
20
/* pad multiplexing support */
21
21
/* muxing registers */
110
110
        .enb_on_reset = 1,
111
111
};
112
112
 
113
 
struct pmx_dev_mode pmx_sdio_modes[] = {
 
113
struct pmx_dev_mode pmx_sdhci_modes[] = {
114
114
        {
115
115
                .ids = AUTO_NET_SMII_MODE | AUTO_NET_MII_MODE |
116
116
                        SMALL_PRINTERS_MODE,
118
118
        },
119
119
};
120
120
 
121
 
struct pmx_dev pmx_sdio = {
122
 
        .name = "sdio",
123
 
        .modes = pmx_sdio_modes,
124
 
        .mode_count = ARRAY_SIZE(pmx_sdio_modes),
 
121
struct pmx_dev pmx_sdhci = {
 
122
        .name = "sdhci",
 
123
        .modes = pmx_sdhci_modes,
 
124
        .mode_count = ARRAY_SIZE(pmx_sdhci_modes),
125
125
        .enb_on_reset = 1,
126
126
};
127
127
 
215
215
        .enb_on_reset = 1,
216
216
};
217
217
 
218
 
struct pmx_dev_mode pmx_sdio_led_modes[] = {
 
218
struct pmx_dev_mode pmx_sdhci_led_modes[] = {
219
219
        {
220
220
                .ids = AUTO_NET_SMII_MODE | AUTO_NET_MII_MODE,
221
221
                .mask = PMX_SSP_CS_MASK,
222
222
        },
223
223
};
224
224
 
225
 
struct pmx_dev pmx_sdio_led = {
226
 
        .name = "sdio_led",
227
 
        .modes = pmx_sdio_led_modes,
228
 
        .mode_count = ARRAY_SIZE(pmx_sdio_led_modes),
 
225
struct pmx_dev pmx_sdhci_led = {
 
226
        .name = "sdhci_led",
 
227
        .modes = pmx_sdhci_led_modes,
 
228
        .mode_count = ARRAY_SIZE(pmx_sdhci_led_modes),
229
229
        .enb_on_reset = 1,
230
230
};
231
231
 
384
384
        .mux_reg = {.offset = PAD_MUX_CONFIG_REG, .mask = 0x00007fff},
385
385
};
386
386
 
387
 
/* Add spear320 specific devices here */
388
 
 
389
387
/* spear3xx shared irq */
390
388
struct shirq_dev_config shirq_ras1_config[] = {
391
389
        {
510
508
        },
511
509
};
512
510
 
 
511
/* Add spear320 specific devices here */
 
512
 
513
513
/* spear320 routines */
514
514
void __init spear320_init(void)
515
515
{
520
520
        spear3xx_init();
521
521
 
522
522
        /* shared irq registration */
523
 
        base = ioremap(SPEAR320_SOC_CONFIG_BASE, SPEAR320_SOC_CONFIG_SIZE);
 
523
        base = ioremap(SPEAR320_SOC_CONFIG_BASE, SZ_4K);
524
524
        if (base) {
525
525
                /* shirq 1 */
526
526
                shirq_ras1.regs.base = base;
540
540
                if (ret)
541
541
                        printk(KERN_ERR "Error registering Shared IRQ 4\n");
542
542
        }
543
 
}
544
543
 
545
 
void spear320_pmx_init(void)
546
 
{
547
 
        spear_pmx_init(&pmx_driver, SPEAR320_SOC_CONFIG_BASE,
548
 
                        SPEAR320_SOC_CONFIG_SIZE);
 
544
        /* pmx initialization */
 
545
        pmx_driver.base = base;
 
546
        ret = pmx_register(&pmx_driver);
 
547
        if (ret)
 
548
                printk(KERN_ERR "padmux: registeration failed. err no: %d\n",
 
549
                                ret);
549
550
}