Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(513)

Side by Side Diff: arch/arm/mach-tegra/board-seaboard.c

Issue 4120008: CHROMIUM: ARM: Tegra: Clean up 3D clock init WAR. (Closed) Base URL: http://git.chromium.org/git/kernel-next.git
Patch Set: Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « arch/arm/mach-tegra/board-harmony.c ('k') | arch/arm/mach-tegra/board-ventana.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * arch/arm/mach-tegra/board-seaboard.c 2 * arch/arm/mach-tegra/board-seaboard.c
3 * 3 *
4 * Copyright (c) 2010, NVIDIA Corporation. 4 * Copyright (c) 2010, NVIDIA Corporation.
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify 6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by 7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or 8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version. 9 * (at your option) any later version.
10 * 10 *
(...skipping 22 matching lines...) Expand all
33 #include <linux/delay.h> 33 #include <linux/delay.h>
34 #include <linux/input.h> 34 #include <linux/input.h>
35 #include <linux/gpio_keys.h> 35 #include <linux/gpio_keys.h>
36 36
37 #include <mach/iomap.h> 37 #include <mach/iomap.h>
38 #include <mach/irqs.h> 38 #include <mach/irqs.h>
39 #include <mach/pinmux.h> 39 #include <mach/pinmux.h>
40 #include <mach/iomap.h> 40 #include <mach/iomap.h>
41 #include <mach/io.h> 41 #include <mach/io.h>
42 #include <mach/gpio.h> 42 #include <mach/gpio.h>
43 #include <mach/clk.h>
44 #include <mach/kbc.h> 43 #include <mach/kbc.h>
45 #include <mach/suspend.h> 44 #include <mach/suspend.h>
46 45
47 #include <asm/mach-types.h> 46 #include <asm/mach-types.h>
48 #include <asm/mach/arch.h> 47 #include <asm/mach/arch.h>
49 48
50 #include "board.h" 49 #include "board.h"
51 #include "board-seaboard.h" 50 #include "board-seaboard.h"
52 #include "clock.h" 51 #include "clock.h"
53 #include "devices.h" 52 #include "devices.h"
(...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 .core_timer = 0x7e7e, 417 .core_timer = 0x7e7e,
419 .core_off_timer = 0x7f, 418 .core_off_timer = 0x7f,
420 .separate_req = true, 419 .separate_req = true,
421 .corereq_high = false, 420 .corereq_high = false,
422 .sysclkreq_high = true, 421 .sysclkreq_high = true,
423 .suspend_mode = TEGRA_SUSPEND_LP1, 422 .suspend_mode = TEGRA_SUSPEND_LP1,
424 }; 423 };
425 424
426 static void __init tegra_seaboard_init(void) 425 static void __init tegra_seaboard_init(void)
427 { 426 {
428 » struct clk *clk; 427 » tegra_common_init(seaboard_clk_init_table);
429
430 » tegra_common_init();
431 tegra_init_suspend(&seaboard_suspend); 428 tegra_init_suspend(&seaboard_suspend);
432
433 tegra_clk_init_from_table(seaboard_clk_init_table);
434 seaboard_pinmux_init(); 429 seaboard_pinmux_init();
435
436 /* HACK: reset 3d clock */
437 writel(0x101, IO_ADDRESS(TEGRA_PMC_BASE) + 0x30);
438 clk = clk_get_sys("3d", NULL);
439 tegra_periph_reset_assert(clk);
440 writel(0x101, IO_ADDRESS(TEGRA_PMC_BASE) + 0x30);
441 clk_enable(clk);
442 udelay(10);
443 writel(1 << 1, IO_ADDRESS(TEGRA_PMC_BASE) + 0x34);
444 tegra_periph_reset_deassert(clk);
445 clk_put(clk);
446
447 platform_add_devices(seaboard_devices, ARRAY_SIZE(seaboard_devices)); 430 platform_add_devices(seaboard_devices, ARRAY_SIZE(seaboard_devices));
448
449 seaboard_panel_init(); 431 seaboard_panel_init();
450 seaboard_sdhci_init(); 432 seaboard_sdhci_init();
451 seaboard_i2c_init(); 433 seaboard_i2c_init();
452 seaboard_regulator_init(); 434 seaboard_regulator_init();
453 seaboard_kbc_init(); 435 seaboard_kbc_init();
454
455 seaboard_wlan_init(); 436 seaboard_wlan_init();
456 437
457 tegra_gpio_enable(TEGRA_GPIO_LIDSWITCH); 438 tegra_gpio_enable(TEGRA_GPIO_LIDSWITCH);
458 tegra_gpio_enable(TEGRA_GPIO_POWERKEY); 439 tegra_gpio_enable(TEGRA_GPIO_POWERKEY);
459 } 440 }
460 441
461 MACHINE_START(TEGRA_SEABOARD, "seaboard") 442 MACHINE_START(TEGRA_SEABOARD, "seaboard")
462 .boot_params = 0x00000100, 443 .boot_params = 0x00000100,
463 .phys_io = IO_APB_PHYS, 444 .phys_io = IO_APB_PHYS,
464 .io_pg_offst = ((IO_APB_VIRT) >> 18) & 0xfffc, 445 .io_pg_offst = ((IO_APB_VIRT) >> 18) & 0xfffc,
465 .init_irq = tegra_init_irq, 446 .init_irq = tegra_init_irq,
466 .init_machine = tegra_seaboard_init, 447 .init_machine = tegra_seaboard_init,
467 .map_io = tegra_map_common_io, 448 .map_io = tegra_map_common_io,
468 .timer = &tegra_timer, 449 .timer = &tegra_timer,
469 MACHINE_END 450 MACHINE_END
OLDNEW
« no previous file with comments | « arch/arm/mach-tegra/board-harmony.c ('k') | arch/arm/mach-tegra/board-ventana.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698