gesbc9312.c 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. /*
  2. * arch/arm/mach-ep93xx/gesbc9312.c
  3. * Glomation GESBC-9312-sx support.
  4. *
  5. * Copyright (C) 2006 Lennert Buytenhek <buytenh@wantstofly.org>
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or (at
  10. * your option) any later version.
  11. */
  12. #include <linux/kernel.h>
  13. #include <linux/init.h>
  14. #include <linux/platform_device.h>
  15. #include <linux/mtd/physmap.h>
  16. #include <mach/hardware.h>
  17. #include <asm/mach-types.h>
  18. #include <asm/mach/arch.h>
  19. static struct physmap_flash_data gesbc9312_flash_data = {
  20. .width = 4,
  21. };
  22. static struct resource gesbc9312_flash_resource = {
  23. .start = EP93XX_CS6_PHYS_BASE,
  24. .end = EP93XX_CS6_PHYS_BASE + SZ_8M - 1,
  25. .flags = IORESOURCE_MEM,
  26. };
  27. static struct platform_device gesbc9312_flash = {
  28. .name = "physmap-flash",
  29. .id = 0,
  30. .dev = {
  31. .platform_data = &gesbc9312_flash_data,
  32. },
  33. .num_resources = 1,
  34. .resource = &gesbc9312_flash_resource,
  35. };
  36. static struct ep93xx_eth_data gesbc9312_eth_data = {
  37. .phy_id = 1,
  38. };
  39. static void __init gesbc9312_init_machine(void)
  40. {
  41. ep93xx_init_devices();
  42. platform_device_register(&gesbc9312_flash);
  43. ep93xx_register_eth(&gesbc9312_eth_data, 0);
  44. }
  45. MACHINE_START(GESBC9312, "Glomation GESBC-9312-sx")
  46. /* Maintainer: Lennert Buytenhek <buytenh@wantstofly.org> */
  47. .phys_io = EP93XX_APB_PHYS_BASE,
  48. .io_pg_offst = ((EP93XX_APB_VIRT_BASE) >> 18) & 0xfffc,
  49. .boot_params = EP93XX_SDCE3_PHYS_BASE_SYNC + 0x100,
  50. .map_io = ep93xx_map_io,
  51. .init_irq = ep93xx_init_irq,
  52. .timer = &ep93xx_timer,
  53. .init_machine = gesbc9312_init_machine,
  54. MACHINE_END