misc.c 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /*
  2. * This file is subject to the terms and conditions of the GNU General Public
  3. * License. See the file "COPYING" in the main directory of this archive
  4. * for more details.
  5. *
  6. * Miscellaneous ARCS PROM routines.
  7. *
  8. * Copyright (C) 1996 David S. Miller (dm@engr.sgi.com)
  9. * Copyright (C) 1999 Ralf Baechle (ralf@gnu.org)
  10. * Copyright (C) 1999 Silicon Graphics, Inc.
  11. */
  12. #include <linux/init.h>
  13. #include <linux/kernel.h>
  14. #include <asm/bcache.h>
  15. #include <asm/fw/arc/types.h>
  16. #include <asm/sgialib.h>
  17. #include <asm/bootinfo.h>
  18. #include <asm/system.h>
  19. VOID
  20. ArcHalt(VOID)
  21. {
  22. bc_disable();
  23. local_irq_disable();
  24. ARC_CALL0(halt);
  25. never: goto never;
  26. }
  27. VOID
  28. ArcPowerDown(VOID)
  29. {
  30. bc_disable();
  31. local_irq_disable();
  32. ARC_CALL0(pdown);
  33. never: goto never;
  34. }
  35. /* XXX is this a soft reset basically? XXX */
  36. VOID
  37. ArcRestart(VOID)
  38. {
  39. bc_disable();
  40. local_irq_disable();
  41. ARC_CALL0(restart);
  42. never: goto never;
  43. }
  44. VOID
  45. ArcReboot(VOID)
  46. {
  47. bc_disable();
  48. local_irq_disable();
  49. ARC_CALL0(reboot);
  50. never: goto never;
  51. }
  52. VOID
  53. ArcEnterInteractiveMode(VOID)
  54. {
  55. bc_disable();
  56. local_irq_disable();
  57. ARC_CALL0(imode);
  58. never: goto never;
  59. }
  60. LONG
  61. ArcSaveConfiguration(VOID)
  62. {
  63. return ARC_CALL0(cfg_save);
  64. }
  65. struct linux_sysid *
  66. ArcGetSystemId(VOID)
  67. {
  68. return (struct linux_sysid *) ARC_CALL0(get_sysid);
  69. }
  70. VOID __init
  71. ArcFlushAllCaches(VOID)
  72. {
  73. ARC_CALL0(cache_flush);
  74. }
  75. DISPLAY_STATUS * __init ArcGetDisplayStatus(ULONG FileID)
  76. {
  77. return (DISPLAY_STATUS *) ARC_CALL1(GetDisplayStatus, FileID);
  78. }