setup.c
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:2k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  * linux/arch/mips/vr4181/setup.c
  3.  *
  4.  * VR41xx setup routines
  5.  *
  6.  * Copyright (C) 1999 Bradley D. LaRonde
  7.  * Copyright (C) 1999, 2000 Michael Klar
  8.  *
  9.  * Copyright 2001 MontaVista Software Inc.
  10.  * Author: jsun@mvista.com or jsun@junsun.net
  11.  *
  12.  * This file is subject to the terms and conditions of the GNU General Public
  13.  * License.  See the file "COPYING" in the main directory of this archive
  14.  * for more details.
  15.  *
  16.  */
  17. #include <linux/config.h>
  18. #include <linux/console.h>
  19. #include <linux/ide.h>
  20. #include <linux/init.h>
  21. #include <linux/delay.h>
  22. #include <asm/reboot.h>
  23. #include <asm/vr4181/vr4181.h>
  24. #include <asm/io.h>
  25. extern void nec_osprey_restart(char* c);
  26. extern void nec_osprey_halt(void);
  27. extern void nec_osprey_power_off(void);
  28. extern void vr4181_init_serial(void);
  29. extern void vr4181_init_time(void);
  30. void __init nec_osprey_setup(void)
  31. {
  32. set_io_port_base(VR4181_PORT_BASE);
  33. isa_slot_offset = VR4181_ISAMEM_BASE;
  34. vr4181_init_serial();
  35. vr4181_init_time();
  36. #ifdef CONFIG_FB
  37. conswitchp = &dummy_con;
  38. #endif
  39.  
  40. _machine_restart = nec_osprey_restart;
  41. _machine_halt = nec_osprey_halt;
  42. _machine_power_off = nec_osprey_power_off;
  43. /* setup resource limit */
  44. ioport_resource.end = 0xffffffff;
  45. iomem_resource.end = 0xffffffff;
  46. /* [jsun] hack */
  47. /*
  48. printk("[jsun] hack to change external ISA control register, %x -> %xn",
  49. (*VR4181_XISACTL),
  50. (*VR4181_XISACTL) | 0x2);
  51. *VR4181_XISACTL |= 0x2;
  52. */
  53. // *VR4181_GPHIBSTH = 0x2000;
  54. // *VR4181_GPMD0REG = 0x00c0;
  55. // *VR4181_GPINTEN  = 1<<6;
  56. /* [jsun] I believe this will get the interrupt type right 
  57.  * for the ether port.
  58.  */
  59. *VR4181_GPINTTYPL = 0x3000;
  60. }