ibmstbx25.c 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. /*
  2. * Author: Armin Kuster <akuster@mvista.com>
  3. *
  4. * 2000-2002 (c) MontaVista, Software, Inc. This file is licensed under
  5. * the terms of the GNU General Public License version 2. This program
  6. * is licensed "as is" without any warranty of any kind, whether express
  7. * or implied.
  8. */
  9. #include <linux/init.h>
  10. #include <asm/ocp.h>
  11. #include <platforms/4xx/ibmstbx25.h>
  12. #include <asm/ppc4xx_pic.h>
  13. static struct ocp_func_iic_data ibmstbx25_iic0_def = {
  14. .fast_mode = 0, /* Use standad mode (100Khz) */
  15. };
  16. OCP_SYSFS_IIC_DATA()
  17. struct ocp_def core_ocp[] __initdata = {
  18. { .vendor = OCP_VENDOR_IBM,
  19. .function = OCP_FUNC_16550,
  20. .index = 0,
  21. .paddr = UART0_IO_BASE,
  22. .irq = UART0_INT,
  23. .pm = IBM_CPM_UART0,
  24. },
  25. { .vendor = OCP_VENDOR_IBM,
  26. .function = OCP_FUNC_16550,
  27. .index = 1,
  28. .paddr = UART1_IO_BASE,
  29. .irq = UART1_INT,
  30. .pm = IBM_CPM_UART1,
  31. },
  32. { .vendor = OCP_VENDOR_IBM,
  33. .function = OCP_FUNC_16550,
  34. .index = 2,
  35. .paddr = UART2_IO_BASE,
  36. .irq = UART2_INT,
  37. .pm = IBM_CPM_UART2,
  38. },
  39. { .vendor = OCP_VENDOR_IBM,
  40. .function = OCP_FUNC_IIC,
  41. .paddr = IIC0_BASE,
  42. .irq = IIC0_IRQ,
  43. .pm = IBM_CPM_IIC0,
  44. .additions = &ibmstbx25_iic0_def,
  45. .show = &ocp_show_iic_data
  46. },
  47. { .vendor = OCP_VENDOR_IBM,
  48. .function = OCP_FUNC_GPIO,
  49. .paddr = GPIO0_BASE,
  50. .irq = OCP_IRQ_NA,
  51. .pm = IBM_CPM_GPIO0,
  52. },
  53. { .vendor = OCP_VENDOR_INVALID
  54. }
  55. };
  56. /* Polarity and triggering settings for internal interrupt sources */
  57. struct ppc4xx_uic_settings ppc4xx_core_uic_cfg[] __initdata = {
  58. { .polarity = 0xffff8f80,
  59. .triggering = 0x00000000,
  60. .ext_irq_mask = 0x0000707f, /* IRQ7 - IRQ9, IRQ0 - IRQ6 */
  61. }
  62. };