devtree.c 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. * linux/arch/arm/kernel/devtree.c
  3. *
  4. * Copyright (C) 2009 Canonical Ltd. <jeremy.kerr@canonical.com>
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License version 2 as
  8. * published by the Free Software Foundation.
  9. */
  10. #include <linux/init.h>
  11. #include <linux/module.h>
  12. #include <linux/errno.h>
  13. #include <linux/types.h>
  14. #include <linux/bootmem.h>
  15. #include <linux/memblock.h>
  16. #include <linux/of.h>
  17. #include <linux/of_fdt.h>
  18. #include <linux/of_irq.h>
  19. #include <linux/of_platform.h>
  20. #include <asm/setup.h>
  21. #include <asm/page.h>
  22. void __init early_init_dt_add_memory_arch(u64 base, u64 size)
  23. {
  24. arm_add_memory(base, size);
  25. }
  26. void * __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
  27. {
  28. return alloc_bootmem_align(size, align);
  29. }
  30. /**
  31. * irq_create_of_mapping - Hook to resolve OF irq specifier into a Linux irq#
  32. *
  33. * Currently the mapping mechanism is trivial; simple flat hwirq numbers are
  34. * mapped 1:1 onto Linux irq numbers. Cascaded irq controllers are not
  35. * supported.
  36. */
  37. unsigned int irq_create_of_mapping(struct device_node *controller,
  38. const u32 *intspec, unsigned int intsize)
  39. {
  40. return intspec[0];
  41. }
  42. EXPORT_SYMBOL_GPL(irq_create_of_mapping);