Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp617064iog; Mon, 13 Jun 2022 09:13:52 -0700 (PDT) X-Google-Smtp-Source: AGRyM1s25hw5RLgMOQOTfOyFDSPevOyeGkDqMJvAqrDT+r3hTipsuf0LMQe/mG9eljVl9qayoOrS X-Received: by 2002:a17:902:eb8d:b0:168:e324:f0a3 with SMTP id q13-20020a170902eb8d00b00168e324f0a3mr555997plg.56.1655136832000; Mon, 13 Jun 2022 09:13:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1655136831; cv=none; d=google.com; s=arc-20160816; b=FIgKtupaHkTVw+BPZoggSegWjyRpTvL8D4ArWzYJR2cJl0mKqAdJoQrofZtjbdoLJ5 irrJE31T3sCxlvDnViSOLgkBjgr/YCG9NbxCWYkvzkZmXi6OnE/5BypT4JFkPJG/eAQx 5BJ+EXKy90fmYCoqJQiUFv8VCCHc8PdIPYBdC5EntthjdYF4j3R+iOx2N5u4egm2VgWA NbVBh5GHEA1B4FW3/3rmZNy9zYjqYbHAszoMWIAmZ5BsFzC9OIdAYWRL8x2jNAhSbRlf uob43TVPFNFjfc5f02Z6GeA8FnQVKcBnzjmwsoW7lRdgj1ky6ni18st2HNmSdHl2rMFC OWqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=+aFN2oVVrEe3lRtVs5AZBW3JlaBaDF/r6IWg2+heF0M=; b=q6exclZ5nbu0MKgdfBtt2OOxYFnbeWypsKIarVFbFxRjEVPoQkTXR0IR+ahf6ZmlLQ bml8M25sismSmzs/sd/GqFGdZ+KvVGr5f5oar0dNW+J1j/7z6nkVdGhwcXlU12I2Eq0g NIsBIQ0bFFy0yyDVnwys0biKAic/qiUrt2HLkl0KlyaFoBiLHTUMeTgZrl4xIYA4pNxR xs237htwRNyYvLrgS4juLtyx2zNmKR1JAj6LJIa5ZgCKOR/WpzH7h2eszSRue3B4OMFP rrOXQPhGNxA0oHE5JAsZ+MKa3vqchtcS7biafUXfRIu/YS4bqJTVa/tN2cyIBEBUi7U6 NNNQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=MU9eD0Mw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e4-20020a17090a4a0400b001d991dfad30si12823038pjh.153.2022.06.13.09.13.39; Mon, 13 Jun 2022 09:13:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=MU9eD0Mw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1359060AbiFMNJJ (ORCPT + 99 others); Mon, 13 Jun 2022 09:09:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50332 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1357354AbiFMM6l (ORCPT ); Mon, 13 Jun 2022 08:58:41 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D4EEE2BDB; Mon, 13 Jun 2022 04:17:36 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 27968B80E59; Mon, 13 Jun 2022 11:17:35 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7633CC36AFF; Mon, 13 Jun 2022 11:17:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1655119053; bh=yDpd7oAWsynJGccSydOf6o7OH6T+QbeLge5NLgiCdfA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MU9eD0Mw2vO1CpsxjRiCdi8Vzna+MBpTYNWV8Ql6d8w/Qjc7v7ugayggbGRyLfyKF zr8VhQM+qYAlJqpel1y81glb/U3e2B4vB7aYHous53ALBtztEcE6trBB5ctbNkrlPo mj3hBv4fGSOg+IvH1TgbN1j4nzqthT0WDGpgVP9c= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Saurabh Sengar , Dexuan Cui , Helge Deller , Sasha Levin Subject: [PATCH 5.15 124/247] video: fbdev: hyperv_fb: Allow resolutions with size > 64 MB for Gen1 Date: Mon, 13 Jun 2022 12:10:26 +0200 Message-Id: <20220613094926.723098325@linuxfoundation.org> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220613094922.843438024@linuxfoundation.org> References: <20220613094922.843438024@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-8.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Saurabh Sengar [ Upstream commit c4b4d7047f16a8d138ce76da65faefb7165736f2 ] This patch fixes a bug where GEN1 VMs doesn't allow resolutions greater than 64 MB size (eg 7680x4320). Unnecessary PCI check limits Gen1 VRAM to legacy PCI BAR size only (ie 64MB). Thus any, resolution requesting greater then 64MB (eg 7680x4320) would fail. MMIO region assigning this memory shouldn't be limited by PCI bar size. Signed-off-by: Saurabh Sengar Reviewed-by: Dexuan Cui Signed-off-by: Helge Deller Signed-off-by: Sasha Levin --- drivers/video/fbdev/hyperv_fb.c | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/drivers/video/fbdev/hyperv_fb.c b/drivers/video/fbdev/hyperv_fb.c index c8e0ea27caf1..58c304a3b7c4 100644 --- a/drivers/video/fbdev/hyperv_fb.c +++ b/drivers/video/fbdev/hyperv_fb.c @@ -1009,7 +1009,6 @@ static int hvfb_getmem(struct hv_device *hdev, struct fb_info *info) struct pci_dev *pdev = NULL; void __iomem *fb_virt; int gen2vm = efi_enabled(EFI_BOOT); - resource_size_t pot_start, pot_end; phys_addr_t paddr; int ret; @@ -1060,23 +1059,7 @@ static int hvfb_getmem(struct hv_device *hdev, struct fb_info *info) dio_fb_size = screen_width * screen_height * screen_depth / 8; - if (gen2vm) { - pot_start = 0; - pot_end = -1; - } else { - if (!(pci_resource_flags(pdev, 0) & IORESOURCE_MEM) || - pci_resource_len(pdev, 0) < screen_fb_size) { - pr_err("Resource not available or (0x%lx < 0x%lx)\n", - (unsigned long) pci_resource_len(pdev, 0), - (unsigned long) screen_fb_size); - goto err1; - } - - pot_end = pci_resource_end(pdev, 0); - pot_start = pot_end - screen_fb_size + 1; - } - - ret = vmbus_allocate_mmio(&par->mem, hdev, pot_start, pot_end, + ret = vmbus_allocate_mmio(&par->mem, hdev, 0, -1, screen_fb_size, 0x100000, true); if (ret != 0) { pr_err("Unable to allocate framebuffer memory\n"); -- 2.35.1