diff options
Diffstat (limited to 'drivers/media/video/samsung/mali/regs')
-rw-r--r-- | drivers/media/video/samsung/mali/regs/mali_200_regs.h | 32 | ||||
-rw-r--r-- | drivers/media/video/samsung/mali/regs/mali_gp_regs.h | 27 |
2 files changed, 28 insertions, 31 deletions
diff --git a/drivers/media/video/samsung/mali/regs/mali_200_regs.h b/drivers/media/video/samsung/mali/regs/mali_200_regs.h index e9da7ab..59e92c8 100644 --- a/drivers/media/video/samsung/mali/regs/mali_200_regs.h +++ b/drivers/media/video/samsung/mali/regs/mali_200_regs.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010 ARM Limited. All rights reserved. + * Copyright (C) 2010, 2012 ARM Limited. All rights reserved. * * This program is free software and is provided to you under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation, and any use by you of this program is subject to the terms of such GNU licence. @@ -51,7 +51,7 @@ enum mali200_mgmt_ctrl_mgmt { #endif MALI200_REG_VAL_CTRL_MGMT_FORCE_RESET = (1<<5), MALI200_REG_VAL_CTRL_MGMT_START_RENDERING = (1<<6), -#if defined(USING_MALI400) +#if defined(USING_MALI400) || defined(USING_MALI450) MALI400PP_REG_VAL_CTRL_MGMT_SOFT_RESET = (1<<7), #endif }; @@ -72,7 +72,7 @@ enum mali200_mgmt_irq { MALI400PP_REG_VAL_IRQ_RESET_COMPLETED = (1<<12), }; -#if defined USING_MALI200 +#if defined(USING_MALI200) #define MALI200_REG_VAL_IRQ_MASK_ALL ((enum mali200_mgmt_irq) (\ MALI200_REG_VAL_IRQ_END_OF_FRAME |\ MALI200_REG_VAL_IRQ_END_OF_TILE |\ @@ -83,7 +83,7 @@ enum mali200_mgmt_irq { MALI200_REG_VAL_IRQ_CNT_0_LIMIT |\ MALI200_REG_VAL_IRQ_CNT_1_LIMIT |\ MALI200_REG_VAL_IRQ_WRITE_BOUNDARY_ERROR)) -#elif defined USING_MALI400 +#elif defined(USING_MALI400) || defined(USING_MALI450) #define MALI200_REG_VAL_IRQ_MASK_ALL ((enum mali200_mgmt_irq) (\ MALI200_REG_VAL_IRQ_END_OF_FRAME |\ MALI200_REG_VAL_IRQ_END_OF_TILE |\ @@ -102,14 +102,14 @@ enum mali200_mgmt_irq { #error "No supported mali core defined" #endif -#if defined USING_MALI200 +#if defined(USING_MALI200) #define MALI200_REG_VAL_IRQ_MASK_USED ((enum mali200_mgmt_irq) (\ MALI200_REG_VAL_IRQ_END_OF_FRAME |\ MALI200_REG_VAL_IRQ_HANG |\ MALI200_REG_VAL_IRQ_FORCE_HANG |\ MALI200_REG_VAL_IRQ_BUS_ERROR |\ MALI200_REG_VAL_IRQ_WRITE_BOUNDARY_ERROR)) -#elif defined USING_MALI400 +#elif defined(USING_MALI400) || defined(USING_MALI450) #define MALI200_REG_VAL_IRQ_MASK_USED ((enum mali200_mgmt_irq) (\ MALI200_REG_VAL_IRQ_END_OF_FRAME |\ MALI200_REG_VAL_IRQ_HANG |\ @@ -134,11 +134,14 @@ enum mali200_mgmt_status { enum mali200_render_unit { MALI200_REG_ADDR_FRAME = 0x0000, + MALI200_REG_ADDR_STACK = 0x0030 }; -#if defined USING_MALI200 +#if defined(USING_MALI200) #define MALI200_NUM_REGS_FRAME ((0x04C/4)+1) -#elif defined USING_MALI400 +#elif defined(USING_MALI400) +#define MALI200_NUM_REGS_FRAME ((0x058/4)+1) +#elif defined(USING_MALI450) #define MALI200_NUM_REGS_FRAME ((0x058/4)+1) #else #error "No supported mali core defined" @@ -150,21 +153,20 @@ enum mali200_wb_unit { MALI200_REG_ADDR_WB2 = 0x0300 }; +enum mali200_wb_unit_regs { + MALI200_REG_ADDR_WB_SOURCE_SELECT = 0x0000, +}; + /** The number of registers in one single writeback unit */ #ifndef MALI200_NUM_REGS_WBx #define MALI200_NUM_REGS_WBx ((0x02C/4)+1) #endif /* This should be in the top 16 bit of the version register of Mali PP */ -#if defined USING_MALI200 -#define MALI_PP_PRODUCT_ID 0xC807 -#elif defined USING_MALI400 +#define MALI200_PP_PRODUCT_ID 0xC807 #define MALI300_PP_PRODUCT_ID 0xCE07 #define MALI400_PP_PRODUCT_ID 0xCD07 -#define MALI_PP_PRODUCT_ID MALI400_PP_PRODUCT_ID -#else -#error "No supported mali core defined" -#endif +#define MALI450_PP_PRODUCT_ID 0xCF07 #endif /* _MALI200_REGS_H_ */ diff --git a/drivers/media/video/samsung/mali/regs/mali_gp_regs.h b/drivers/media/video/samsung/mali/regs/mali_gp_regs.h index 14719a3..21c83c0 100644 --- a/drivers/media/video/samsung/mali/regs/mali_gp_regs.h +++ b/drivers/media/video/samsung/mali/regs/mali_gp_regs.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010 ARM Limited. All rights reserved. + * Copyright (C) 2010, 2012 ARM Limited. All rights reserved. * * This program is free software and is provided to you under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation, and any use by you of this program is subject to the terms of such GNU licence. @@ -12,9 +12,9 @@ #define _MALIGP2_CONROL_REGS_H_ /** - * These are the different geometry processor controll registers. + * These are the different geometry processor control registers. * Their usage is to control and monitor the operation of the - * Vertex Shader and the Polygon List Builer in the geometry processor. + * Vertex Shader and the Polygon List Builder in the geometry processor. * Addresses are in 32-bit word relative sizes. * @see [P0081] "Geometry Processor Data Structures" for details */ @@ -60,7 +60,7 @@ typedef enum MALIGP2_REG_VAL_CMD_RESET = (1<< 5), MALIGP2_REG_VAL_CMD_FORCE_HANG = (1<< 6), MALIGP2_REG_VAL_CMD_STOP_BUS = (1<< 9), -#if defined(USING_MALI400) +#if defined(USING_MALI400) || defined(USING_MALI450) MALI400GP_REG_VAL_CMD_SOFT_RESET = (1<<10), #endif } mgp_contr_reg_val_cmd; @@ -84,7 +84,7 @@ typedef enum #define MALIGP2_REG_VAL_IRQ_WRITE_BOUND_ERR (1 << 9) #define MALIGP2_REG_VAL_IRQ_SYNC_ERROR (1 << 10) #define MALIGP2_REG_VAL_IRQ_AXI_BUS_ERROR (1 << 11) -#if defined USING_MALI400 +#if defined(USING_MALI400) || defined(USING_MALI450) #define MALI400GP_REG_VAL_IRQ_AXI_BUS_STOPPED (1 << 12) #define MALI400GP_REG_VAL_IRQ_VS_INVALID_CMD (1 << 13) #define MALI400GP_REG_VAL_IRQ_PLB_INVALID_CMD (1 << 14) @@ -97,7 +97,7 @@ typedef enum #endif /* Mask defining all IRQs in MaliGP2 */ -#if defined USING_MALI200 +#if defined(USING_MALI200) #define MALIGP2_REG_VAL_IRQ_MASK_ALL \ (\ MALIGP2_REG_VAL_IRQ_VS_END_CMD_LST | \ @@ -112,7 +112,7 @@ typedef enum MALIGP2_REG_VAL_IRQ_WRITE_BOUND_ERR | \ MALIGP2_REG_VAL_IRQ_SYNC_ERROR | \ MALIGP2_REG_VAL_IRQ_AXI_BUS_ERROR) -#elif defined USING_MALI400 +#elif defined(USING_MALI400) || defined(USING_MALI450) #define MALIGP2_REG_VAL_IRQ_MASK_ALL \ (\ MALIGP2_REG_VAL_IRQ_VS_END_CMD_LST | \ @@ -139,7 +139,7 @@ typedef enum #endif /* Mask defining the IRQs in MaliGP2 which we use*/ -#if defined USING_MALI200 +#if defined(USING_MALI200) #define MALIGP2_REG_VAL_IRQ_MASK_USED \ (\ MALIGP2_REG_VAL_IRQ_VS_END_CMD_LST | \ @@ -150,7 +150,7 @@ typedef enum MALIGP2_REG_VAL_IRQ_WRITE_BOUND_ERR | \ MALIGP2_REG_VAL_IRQ_SYNC_ERROR | \ MALIGP2_REG_VAL_IRQ_AXI_BUS_ERROR) -#elif defined USING_MALI400 +#elif defined(USING_MALI400) || defined(USING_MALI450) #define MALIGP2_REG_VAL_IRQ_MASK_USED \ (\ MALIGP2_REG_VAL_IRQ_VS_END_CMD_LST | \ @@ -197,15 +197,10 @@ typedef enum MALIGP2_REG_VAL_STATUS_WRITE_BOUND_ERR ) /* This should be in the top 16 bit of the version register of gp.*/ -#if defined(USING_MALI200) -#define MALI_GP_PRODUCT_ID 0xA07 -#elif defined(USING_MALI400) +#define MALI200_GP_PRODUCT_ID 0xA07 #define MALI300_GP_PRODUCT_ID 0xC07 #define MALI400_GP_PRODUCT_ID 0xB07 -#define MALI_GP_PRODUCT_ID MALI400_GP_PRODUCT_ID -#else -#error "No supported mali core defined" -#endif +#define MALI450_GP_PRODUCT_ID 0xD07 /** * The different sources for instrumented on the geometry processor. |