From 103d9c70bc92477fb413f8b45218aa15261580dd Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E9=99=88=E6=81=92=E6=98=8E?= Date: Fri, 23 Mar 2012 16:40:54 +0800 Subject: [PATCH] rk30: vpu_service: modify vpu dec hardware offset, hwid check pass --- arch/arm/configs/rk30_sdk_defconfig | 2 +- arch/arm/plat-rk/vpu_service.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/arm/configs/rk30_sdk_defconfig b/arch/arm/configs/rk30_sdk_defconfig index 6798e1761226..db3e1ce2fbe9 100644 --- a/arch/arm/configs/rk30_sdk_defconfig +++ b/arch/arm/configs/rk30_sdk_defconfig @@ -22,7 +22,7 @@ CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_ARCH_RK30=y CONFIG_DDR_SDRAM_FREQ=456 -# CONFIG_RK29_VPU is not set +CONFIG_RK29_VPU=y # CONFIG_SWP_EMULATE is not set CONFIG_FIQ_DEBUGGER=y CONFIG_FIQ_DEBUGGER_NO_SLEEP=y diff --git a/arch/arm/plat-rk/vpu_service.c b/arch/arm/plat-rk/vpu_service.c index ab3559fd376e..96f391729cd9 100644 --- a/arch/arm/plat-rk/vpu_service.c +++ b/arch/arm/plat-rk/vpu_service.c @@ -66,8 +66,10 @@ static const u16 dec_hw_ids[] = { 0x8190, 0x8170, 0x9170, 0x9190, 0x6731 }; #if defined(CONFIG_ARCH_RK29) static const u16 enc_hw_ids[] = { 0x6280, 0x7280, 0x8270 }; +#define DEC_PHY_OFFSET 0x200 #elif defined(CONFIG_ARCH_RK30) static const u16 enc_hw_ids[] = { 0x6280, 0x7280, 0x8270, 0x8290, 0x4831 }; +#define DEC_PHY_OFFSET 0x400 #endif #define VPU_REG_EN_ENC 14 @@ -1110,7 +1112,7 @@ static int __init vpu_service_init(void) pr_debug("baseaddr = 0x%08x vdpu irq = %d vepu irq = %d\n", RK29_VCODEC_PHYS, IRQ_VDPU, IRQ_VEPU); - dec_dev.iobaseaddr = RK29_VCODEC_PHYS + 0x200; + dec_dev.iobaseaddr = RK29_VCODEC_PHYS + DEC_PHY_OFFSET; dec_dev.iosize = DEC_IO_SIZE; enc_dev.iobaseaddr = RK29_VCODEC_PHYS; enc_dev.iosize = ENC_IO_SIZE; -- 2.34.1