piix4.h 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /*
  2. * Carsten Langgaard, carstenl@mips.com
  3. * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
  4. * Copyright (C) 2013 Imagination Technologies Ltd.
  5. *
  6. * This program is free software; you can distribute it and/or modify it
  7. * under the terms of the GNU General Public License (Version 2) as
  8. * published by the Free Software Foundation.
  9. *
  10. * This program is distributed in the hope it will be useful, but WITHOUT
  11. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  12. * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
  13. * for more details.
  14. *
  15. * You should have received a copy of the GNU General Public License along
  16. * with this program; if not, write to the Free Software Foundation, Inc.,
  17. * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
  18. *
  19. * Register definitions for Intel PIIX4 South Bridge Device.
  20. */
  21. #ifndef __ASM_MIPS_BOARDS_PIIX4_H
  22. #define __ASM_MIPS_BOARDS_PIIX4_H
  23. /* PIRQX Route Control */
  24. #define PIIX4_FUNC0_PIRQRC 0x60
  25. #define PIIX4_FUNC0_PIRQRC_IRQ_ROUTING_DISABLE (1 << 7)
  26. #define PIIX4_FUNC0_PIRQRC_IRQ_ROUTING_MASK 0xf
  27. #define PIIX4_FUNC0_PIRQRC_IRQ_ROUTING_MAX 16
  28. /* SERIRQ Control */
  29. #define PIIX4_FUNC0_SERIRQC 0x64
  30. #define PIIX4_FUNC0_SERIRQC_EN (1 << 7)
  31. #define PIIX4_FUNC0_SERIRQC_CONT (1 << 6)
  32. /* Top Of Memory */
  33. #define PIIX4_FUNC0_TOM 0x69
  34. #define PIIX4_FUNC0_TOM_TOP_OF_MEMORY_MASK 0xf0
  35. /* Deterministic Latency Control */
  36. #define PIIX4_FUNC0_DLC 0x82
  37. #define PIIX4_FUNC0_DLC_USBPR_EN (1 << 2)
  38. #define PIIX4_FUNC0_DLC_PASSIVE_RELEASE_EN (1 << 1)
  39. #define PIIX4_FUNC0_DLC_DELAYED_TRANSACTION_EN (1 << 0)
  40. /* General Configuration */
  41. #define PIIX4_FUNC0_GENCFG 0xb0
  42. #define PIIX4_FUNC0_GENCFG_SERIRQ (1 << 16)
  43. /* IDE Timing */
  44. #define PIIX4_FUNC1_IDETIM_PRIMARY_LO 0x40
  45. #define PIIX4_FUNC1_IDETIM_PRIMARY_HI 0x41
  46. #define PIIX4_FUNC1_IDETIM_PRIMARY_HI_IDE_DECODE_EN (1 << 7)
  47. #define PIIX4_FUNC1_IDETIM_SECONDARY_LO 0x42
  48. #define PIIX4_FUNC1_IDETIM_SECONDARY_HI 0x43
  49. #define PIIX4_FUNC1_IDETIM_SECONDARY_HI_IDE_DECODE_EN (1 << 7)
  50. /* Power Management Configuration Space */
  51. #define PIIX4_FUNC3_PMBA 0x40
  52. #define PIIX4_FUNC3_PMREGMISC 0x80
  53. #define PIIX4_FUNC3_PMREGMISC_EN (1 << 0)
  54. /* Power Management IO Space */
  55. #define PIIX4_FUNC3IO_PMSTS 0x00
  56. #define PIIX4_FUNC3IO_PMSTS_PWRBTN_STS (1 << 8)
  57. #define PIIX4_FUNC3IO_PMCNTRL 0x04
  58. #define PIIX4_FUNC3IO_PMCNTRL_SUS_EN (1 << 13)
  59. #define PIIX4_FUNC3IO_PMCNTRL_SUS_TYP (0x7 << 10)
  60. #define PIIX4_FUNC3IO_PMCNTRL_SUS_TYP_SOFF (0x0 << 10)
  61. #define PIIX4_FUNC3IO_PMCNTRL_SUS_TYP_STR (0x1 << 10)
  62. /* Data for magic special PCI cycle */
  63. #define PIIX4_SUSPEND_MAGIC 0x00120002
  64. #endif /* __ASM_MIPS_BOARDS_PIIX4_H */