Ejemplo n.º 1
0
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#include "nvhost_hwctx.h"
#include "nvhost_channel.h"
#include "host1x/host1x.h"
#include "host1x/host1x01_hardware.h"
#include "gr3d.h"
#include "chip_support.h"
#include "nvhost_memmgr.h"

#include <linux/slab.h>

static const struct hwctx_reginfo ctxsave_regs_3d_global[] = {
	HWCTX_REGINFO(0xe00,    4, DIRECT),
	HWCTX_REGINFO(0xe05,   30, DIRECT),
	HWCTX_REGINFO(0xe25,    2, DIRECT),
	HWCTX_REGINFO(0xe28,    2, DIRECT),
	HWCTX_REGINFO(0x001,    2, DIRECT),
	HWCTX_REGINFO(0x00c,   10, DIRECT),
	HWCTX_REGINFO(0x100,   34, DIRECT),
	HWCTX_REGINFO(0x124,    2, DIRECT),
	HWCTX_REGINFO(0x200,    5, DIRECT),
	HWCTX_REGINFO(0x205, 1024, INDIRECT),
	HWCTX_REGINFO(0x207, 1024, INDIRECT),
	HWCTX_REGINFO(0x209,    1, DIRECT),
	HWCTX_REGINFO(0x300,   64, DIRECT),
	HWCTX_REGINFO(0x343,   25, DIRECT),
	HWCTX_REGINFO(0x363,    2, DIRECT),
	HWCTX_REGINFO(0x400,   16, DIRECT),
Ejemplo n.º 2
0
#include "dev.h"
#include "host1x/host1x02_hardware.h"
#include "gr3d.h"
#include "chip_support.h"
#include "nvhost_memmgr.h"
#include "nvhost_scale.h"
#include "nvhost_job.h"
#include "nvhost_acm.h"
#include "class_ids.h"

#include <linux/slab.h>
#include <linux/scatterlist.h>
#include <mach/gpufuse.h>

static const struct hwctx_reginfo ctxsave_regs_3d_per_pipe[] = {
	HWCTX_REGINFO(0xc30,    1, DIRECT),
	HWCTX_REGINFO(0xc40,    1, DIRECT),
	HWCTX_REGINFO(0xc50,    1, DIRECT)
};

static const struct hwctx_reginfo ctxsave_regs_3d_global[] = {
	/* bug 962360. Reg 0xe44 has to be the first one to be restored*/
	HWCTX_REGINFO_RST(0x40e, 1, DIRECT, 0xe44),
	HWCTX_REGINFO(0xe00,   35, DIRECT),
	HWCTX_REGINFO(0xe25,    2, DIRECT),
	HWCTX_REGINFO(0xe28,    2, DIRECT),
	HWCTX_REGINFO(0x001,    2, DIRECT),
	HWCTX_REGINFO(0x00c,   10, DIRECT),
	HWCTX_REGINFO(0x100,   34, DIRECT),
	HWCTX_REGINFO(0x124,    2, DIRECT),
	HWCTX_REGINFO(0x200,    5, DIRECT),
Ejemplo n.º 3
0
#include "nvhost_hwctx.h"
#include "dev.h"
#include "host1x/host1x_hardware.h"
#include "host1x/host1x_syncpt.h"
#include "gr3d.h"

#include <mach/gpufuse.h>
#include <mach/hardware.h>
#include <linux/slab.h>

/*  99 > 2, which makes kernel panic if register set is incorrect */
static int register_sets = 99;

static const struct hwctx_reginfo ctxsave_regs_3d_global[] = {
	HWCTX_REGINFO(0xe00,    4, DIRECT),
	HWCTX_REGINFO(0xe05,   30, DIRECT),
	HWCTX_REGINFO(0xe25,    2, DIRECT),
	HWCTX_REGINFO(0xe28,    2, DIRECT),
	HWCTX_REGINFO(0xe30,   16, DIRECT),
	HWCTX_REGINFO(0x001,    2, DIRECT),
	HWCTX_REGINFO(0x00c,   10, DIRECT),
	HWCTX_REGINFO(0x100,   34, DIRECT),
	HWCTX_REGINFO(0x124,    2, DIRECT),
	HWCTX_REGINFO(0x200,    5, DIRECT),
	HWCTX_REGINFO(0x205, 1024, INDIRECT),
	HWCTX_REGINFO(0x207, 1024, INDIRECT),
	HWCTX_REGINFO(0x209,    1, DIRECT),
	HWCTX_REGINFO(0x300,   64, DIRECT),
	HWCTX_REGINFO(0x343,   25, DIRECT),
	HWCTX_REGINFO(0x363,    2, DIRECT),
Ejemplo n.º 4
0
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write to the Free Software Foundation, Inc.,
 * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 */

#include "nvhost_hwctx.h"
#include "nvhost_dev.h"

const struct hwctx_reginfo ctxsave_regs_3d[] = {
	HWCTX_REGINFO(0xe00, 16, DIRECT),
	HWCTX_REGINFO(0xe10, 16, DIRECT),
	HWCTX_REGINFO(0xe20, 1, DIRECT),
	HWCTX_REGINFO(0xe21, 1, DIRECT),
	HWCTX_REGINFO(0xe22, 1, DIRECT),
	HWCTX_REGINFO(0xe25, 1, DIRECT),
	HWCTX_REGINFO(0xe26, 1, DIRECT),
	HWCTX_REGINFO(0xe28, 2, DIRECT),
	HWCTX_REGINFO(0xe2a, 1, DIRECT),
	HWCTX_REGINFO(0x1, 1, DIRECT),
	HWCTX_REGINFO(0x2, 1, DIRECT),
	HWCTX_REGINFO(0xc, 2, DIRECT),
	HWCTX_REGINFO(0xe, 2, DIRECT),
	HWCTX_REGINFO(0x10, 2, DIRECT),
	HWCTX_REGINFO(0x12, 2, DIRECT),
	HWCTX_REGINFO(0x14, 2, DIRECT),