From patchwork Wed May 29 16:12:57 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michal Simek X-Patchwork-Id: 2631121 Return-Path: X-Original-To: patchwork-linux-fbdev@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id CFF2EDF24C for ; Wed, 29 May 2013 16:13:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932762Ab3E2QNU (ORCPT ); Wed, 29 May 2013 12:13:20 -0400 Received: from mail-wi0-f178.google.com ([209.85.212.178]:55085 "EHLO mail-wi0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755425Ab3E2QNE (ORCPT ); Wed, 29 May 2013 12:13:04 -0400 Received: by mail-wi0-f178.google.com with SMTP id hj6so3672619wib.5 for ; Wed, 29 May 2013 09:13:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:x-mailer:in-reply-to :references:in-reply-to:references:content-type:x-gm-message-state; bh=N0HT5/rng8dAmNCYxIUVEHJnGS2g9QyXCRYvQjMcmqs=; b=oeimeqxMJ6T2DdU3ZVul5UKKooy9spQc8o/jqdE0J03FCNIzkXi+Zk9L2IQ1IhO5Nc e5xGDB3NlOemJNi680B1NRftGc0qfQWqFrZAUFDadJl1yLQrEeZfD5MWCKrOp1DMMFrw O4HQ2BsAHEkPh7uHk6F/WYA2bz3JUOjkz18irLCeG9aSxo2CYKhgva17Mr5EOvsMXfFv +uhILO1v3h+CvF5Uue8MRKgRY4xuqqUs/LdAUhKPyZzjeVWjmu00t6CpOSFsshQElNDW 3f0ooTJXHGlJX/PKgzCtdGjXQz0TbDDDq2vjxsgE6q/Mu0D3fJ+ws5WAo2nK2x7o7FOO pRqg== X-Received: by 10.180.87.33 with SMTP id u1mr16035443wiz.34.1369843983140; Wed, 29 May 2013 09:13:03 -0700 (PDT) Received: from localhost (nat-63.starnet.cz. [178.255.168.63]) by mx.google.com with ESMTPSA id en3sm32211088wid.1.2013.05.29.09.13.01 for (version=TLSv1.1 cipher=RC4-SHA bits=128/128); Wed, 29 May 2013 09:13:02 -0700 (PDT) From: Michal Simek To: linux-kernel@vger.kernel.org Cc: Michal Simek , Michal Simek , Pallav Joshi , git-dev@xilinx.com, Florian Tobias Schandinat , linux-fbdev@vger.kernel.org Subject: [PATCH 2/3] video: xilinxfb: Do not use out_be32 IO function Date: Wed, 29 May 2013 18:12:57 +0200 Message-Id: X-Mailer: git-send-email 1.8.2.3 In-Reply-To: <502367ddf6d79b7b343b3165ad54cb9e2d4713db.1369843969.git.michal.simek@xilinx.com> References: <502367ddf6d79b7b343b3165ad54cb9e2d4713db.1369843969.git.michal.simek@xilinx.com> In-Reply-To: <502367ddf6d79b7b343b3165ad54cb9e2d4713db.1369843969.git.michal.simek@xilinx.com> References: <502367ddf6d79b7b343b3165ad54cb9e2d4713db.1369843969.git.michal.simek@xilinx.com> X-Gm-Message-State: ALoCoQlOCtmmFm9y7CP9ANbx+1T5NTLRplWv/oi3hbLuVa62+k/z7ZEsk0L7JDXaDRxfnD1FmSCV Sender: linux-fbdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fbdev@vger.kernel.org out_be32 IO function is not supported by ARM. It is only available for PPC and Microblaze. Remove all out_be32 references and start to use __raw_writel function. Signed-off-by: Michal Simek --- drivers/video/xilinxfb.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) -- 1.8.2.3 diff --git a/drivers/video/xilinxfb.c b/drivers/video/xilinxfb.c index 5af341e..dcf0552 100644 --- a/drivers/video/xilinxfb.c +++ b/drivers/video/xilinxfb.c @@ -57,7 +57,7 @@ * In case of direct PLB access the second control register will be at * an offset of 4 as compared to the DCR access where the offset is 1 * i.e. REG_CTRL. So this is taken care in the function - * xilinx_fb_out_be32 where it left shifts the offset 2 times in case of + * xilinx_fb_out32 where it left shifts the offset 2 times in case of * direct PLB access. */ #define NUM_REGS 2 @@ -150,11 +150,11 @@ struct xilinxfb_drvdata { * To perform the read/write on the registers we need to check on * which bus its connected and call the appropriate write API. */ -static void xilinx_fb_out_be32(struct xilinxfb_drvdata *drvdata, u32 offset, +static void xilinx_fb_out32(struct xilinxfb_drvdata *drvdata, u32 offset, u32 val) { if (drvdata->flags & PLB_ACCESS_FLAG) - out_be32(drvdata->regs + (offset << 2), val); + __raw_writel(val, drvdata->regs + (offset << 2)); #ifdef CONFIG_PPC_DCR else dcr_write(drvdata->dcr_host, offset, val); @@ -197,7 +197,7 @@ xilinx_fb_blank(int blank_mode, struct fb_info *fbi) switch (blank_mode) { case FB_BLANK_UNBLANK: /* turn on panel */ - xilinx_fb_out_be32(drvdata, REG_CTRL, drvdata->reg_ctrl_default); + xilinx_fb_out32(drvdata, REG_CTRL, drvdata->reg_ctrl_default); break; case FB_BLANK_NORMAL: @@ -205,7 +205,7 @@ xilinx_fb_blank(int blank_mode, struct fb_info *fbi) case FB_BLANK_HSYNC_SUSPEND: case FB_BLANK_POWERDOWN: /* turn off panel */ - xilinx_fb_out_be32(drvdata, REG_CTRL, 0); + xilinx_fb_out32(drvdata, REG_CTRL, 0); default: break; @@ -280,13 +280,13 @@ static int xilinxfb_assign(struct device *dev, memset_io((void __iomem *)drvdata->fb_virt, 0, fbsize); /* Tell the hardware where the frame buffer is */ - xilinx_fb_out_be32(drvdata, REG_FB_ADDR, drvdata->fb_phys); + xilinx_fb_out32(drvdata, REG_FB_ADDR, drvdata->fb_phys); /* Turn on the display */ drvdata->reg_ctrl_default = REG_CTRL_ENABLE; if (pdata->rotate_screen) drvdata->reg_ctrl_default |= REG_CTRL_ROTATE; - xilinx_fb_out_be32(drvdata, REG_CTRL, + xilinx_fb_out32(drvdata, REG_CTRL, drvdata->reg_ctrl_default); /* Fill struct fb_info */ @@ -345,7 +345,7 @@ err_cmap: iounmap(drvdata->fb_virt); /* Turn off the display */ - xilinx_fb_out_be32(drvdata, REG_CTRL, 0); + xilinx_fb_out32(drvdata, REG_CTRL, 0); err_fbmem: if (drvdata->flags & PLB_ACCESS_FLAG) @@ -381,7 +381,7 @@ static int xilinxfb_release(struct device *dev) iounmap(drvdata->fb_virt); /* Turn off the display */ - xilinx_fb_out_be32(drvdata, REG_CTRL, 0); + xilinx_fb_out32(drvdata, REG_CTRL, 0); /* Release the resources, as allocated based on interface */ if (drvdata->flags & PLB_ACCESS_FLAG) {