nuc932.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. /*
  2. * linux/arch/arm/mach-nuc93x/nuc932.c
  3. *
  4. * Copyright (c) 2009 Nuvoton corporation.
  5. *
  6. * Wan ZongShun <mcuos.com@gmail.com>
  7. *
  8. * NUC932 cpu support
  9. *
  10. * This program is free software; you can redistribute it and/or modify
  11. * it under the terms of the GNU General Public License as published by
  12. * the Free Software Foundation;version 2 of the License.
  13. *
  14. */
  15. #include <linux/platform_device.h>
  16. #include <linux/clk.h>
  17. #include <linux/err.h>
  18. #include <asm/mach/map.h>
  19. #include <mach/hardware.h>
  20. #include "cpu.h"
  21. #include "clock.h"
  22. /* define specific CPU platform device */
  23. static struct platform_device *nuc932_dev[] __initdata = {
  24. };
  25. /* define specific CPU platform io map */
  26. static struct map_desc nuc932evb_iodesc[] __initdata = {
  27. };
  28. /*Init NUC932 evb io*/
  29. void __init nuc932_map_io(void)
  30. {
  31. nuc93x_map_io(nuc932evb_iodesc, ARRAY_SIZE(nuc932evb_iodesc));
  32. }
  33. /*Init NUC932 clock*/
  34. void __init nuc932_init_clocks(void)
  35. {
  36. nuc93x_init_clocks();
  37. }
  38. /*enable NUC932 uart clock*/
  39. void __init nuc932_init_uartclk(void)
  40. {
  41. struct clk *ck_uart = clk_get(NULL, "uart");
  42. BUG_ON(IS_ERR(ck_uart));
  43. clk_enable(ck_uart);
  44. }
  45. /*Init NUC932 board info*/
  46. void __init nuc932_board_init(void)
  47. {
  48. nuc93x_board_init(nuc932_dev, ARRAY_SIZE(nuc932_dev));
  49. }