blob: a6207b44e7882d5c545429d90d3cdec6df7402aa [file] [log] [blame]
Marek Vasutafcb01c2010-07-18 05:23:19 +02001/*
2 * Palm Tungsten|C Support
3 *
4 * Copyright (C) 2009-2010 Marek Vasut <marek.vasut@gmail.com>
5 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02006 * SPDX-License-Identifier: GPL-2.0+
Marek Vasutafcb01c2010-07-18 05:23:19 +02007 */
8
9#include <common.h>
10#include <command.h>
11#include <serial.h>
12#include <asm/io.h>
Marek Vasut71d058b2011-11-26 11:17:32 +010013#include <asm/arch/pxa.h>
Marek Vasutd2f3bbd2012-09-30 10:09:49 +000014#include <asm/arch/regs-mmc.h>
Marek Vasutafcb01c2010-07-18 05:23:19 +020015
16DECLARE_GLOBAL_DATA_PTR;
17
18/*
19 * Miscelaneous platform dependent initialisations
20 */
21
22int board_init(void)
23{
Marek Vasut1ba68e82010-10-20 21:06:23 +020024 /* We have RAM, disable cache */
25 dcache_disable();
26 icache_disable();
27
Marek Vasutafcb01c2010-07-18 05:23:19 +020028 /* Arch number of Palm Tungsten|C */
29 gd->bd->bi_arch_number = MACH_TYPE_PALMTC;
30
31 /* Adress of boot parameters */
32 gd->bd->bi_boot_params = 0xa0000100;
33
34 /* Set PWM for LCD */
35 writel(0x5f, PWM_CTRL1);
36 writel(0x3ff, PWM_PERVAL1);
37 writel(892, PWM_PWDUTY1);
38
39 return 0;
40}
41
Marek Vasutd2f3bbd2012-09-30 10:09:49 +000042#ifdef CONFIG_CMD_MMC
43int board_mmc_init(bd_t *bis)
44{
45 pxa_mmc_register(0);
46 return 0;
47}
48#endif
49
Marek Vasutafcb01c2010-07-18 05:23:19 +020050int dram_init(void)
51{
Marek Vasut08341be2011-11-26 11:18:57 +010052 pxa2xx_dram_init();
Marek Vasut1ba68e82010-10-20 21:06:23 +020053 gd->ram_size = PHYS_SDRAM_1_SIZE;
54 return 0;
55}
56
57void dram_init_banksize(void)
58{
Marek Vasutafcb01c2010-07-18 05:23:19 +020059 gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
60 gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
Marek Vasutafcb01c2010-07-18 05:23:19 +020061}