1c902be71SArnd Bergmann /* 2c902be71SArnd Bergmann * Cell Pervasive Monitor and Debug interface and HW structures 3c902be71SArnd Bergmann * 4c902be71SArnd Bergmann * (C) Copyright IBM Corporation 2005 5c902be71SArnd Bergmann * 6c902be71SArnd Bergmann * Authors: Maximino Aguilar (maguilar@us.ibm.com) 7c902be71SArnd Bergmann * David J. Erb (djerb@us.ibm.com) 8c902be71SArnd Bergmann * 9c902be71SArnd Bergmann * This program is free software; you can redistribute it and/or modify 10c902be71SArnd Bergmann * it under the terms of the GNU General Public License as published by 11c902be71SArnd Bergmann * the Free Software Foundation; either version 2, or (at your option) 12c902be71SArnd Bergmann * any later version. 13c902be71SArnd Bergmann * 14c902be71SArnd Bergmann * This program is distributed in the hope that it will be useful, 15c902be71SArnd Bergmann * but WITHOUT ANY WARRANTY; without even the implied warranty of 16c902be71SArnd Bergmann * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17c902be71SArnd Bergmann * GNU General Public License for more details. 18c902be71SArnd Bergmann * 19c902be71SArnd Bergmann * You should have received a copy of the GNU General Public License 20c902be71SArnd Bergmann * along with this program; if not, write to the Free Software 21c902be71SArnd Bergmann * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 22c902be71SArnd Bergmann */ 23c902be71SArnd Bergmann 24c902be71SArnd Bergmann 25c902be71SArnd Bergmann #ifndef PERVASIVE_H 26c902be71SArnd Bergmann #define PERVASIVE_H 27c902be71SArnd Bergmann 28c902be71SArnd Bergmann struct pmd_regs { 29c902be71SArnd Bergmann u8 pad_0x0000_0x0800[0x0800 - 0x0000]; /* 0x0000 */ 30c902be71SArnd Bergmann 31c902be71SArnd Bergmann /* Thermal Sensor Registers */ 32c902be71SArnd Bergmann u64 ts_ctsr1; /* 0x0800 */ 33c902be71SArnd Bergmann u64 ts_ctsr2; /* 0x0808 */ 34c902be71SArnd Bergmann u64 ts_mtsr1; /* 0x0810 */ 35c902be71SArnd Bergmann u64 ts_mtsr2; /* 0x0818 */ 36c902be71SArnd Bergmann u64 ts_itr1; /* 0x0820 */ 37c902be71SArnd Bergmann u64 ts_itr2; /* 0x0828 */ 38c902be71SArnd Bergmann u64 ts_gitr; /* 0x0830 */ 39c902be71SArnd Bergmann u64 ts_isr; /* 0x0838 */ 40c902be71SArnd Bergmann u64 ts_imr; /* 0x0840 */ 41c902be71SArnd Bergmann u64 tm_cr1; /* 0x0848 */ 42c902be71SArnd Bergmann u64 tm_cr2; /* 0x0850 */ 43c902be71SArnd Bergmann u64 tm_simr; /* 0x0858 */ 44c902be71SArnd Bergmann u64 tm_tpr; /* 0x0860 */ 45c902be71SArnd Bergmann u64 tm_str1; /* 0x0868 */ 46c902be71SArnd Bergmann u64 tm_str2; /* 0x0870 */ 47c902be71SArnd Bergmann u64 tm_tsr; /* 0x0878 */ 48c902be71SArnd Bergmann 49c902be71SArnd Bergmann /* Power Management */ 50c902be71SArnd Bergmann u64 pm_control; /* 0x0880 */ 51c902be71SArnd Bergmann #define PMD_PAUSE_ZERO_CONTROL 0x10000 52c902be71SArnd Bergmann u64 pm_status; /* 0x0888 */ 53c902be71SArnd Bergmann 54c902be71SArnd Bergmann /* Time Base Register */ 55c902be71SArnd Bergmann u64 tbr; /* 0x0890 */ 56c902be71SArnd Bergmann 57c902be71SArnd Bergmann u8 pad_0x0898_0x1000 [0x1000 - 0x0898]; /* 0x0898 */ 58c902be71SArnd Bergmann }; 59c902be71SArnd Bergmann 60c902be71SArnd Bergmann void __init cell_pervasive_init(void); 61c902be71SArnd Bergmann 62c902be71SArnd Bergmann #endif 63