From owner-freebsd-hackers@FreeBSD.ORG Mon Feb 18 00:39:59 2013 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C9477E5 for ; Mon, 18 Feb 2013 00:39:59 +0000 (UTC) (envelope-from gonzo@id.bluezbox.com) Received: from id.bluezbox.com (id.bluezbox.com [88.198.91.248]) by mx1.freebsd.org (Postfix) with ESMTP id 51CF19D for ; Mon, 18 Feb 2013 00:39:59 +0000 (UTC) Received: from [88.198.91.248] (helo=[IPv6:::1]) by id.bluezbox.com with esmtpsa (TLSv1:CAMELLIA256-SHA:256) (Exim 4.77 (FreeBSD)) (envelope-from ) id 1U7Elt-000Jdk-Jv; Sun, 17 Feb 2013 16:39:58 -0800 Message-ID: <51217854.8000508@freebsd.org> Date: Sun, 17 Feb 2013 16:39:48 -0800 From: Oleksandr Tymoshenko User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: Phileas Fogg Subject: Re: Scrolling in framebuffer syscons References: <511F879C.3030801@mail.ru> In-Reply-To: <511F879C.3030801@mail.ru> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: gonzo@id.bluezbox.com X-Spam-Level: -- X-Spam-Report: Spam detection software, running on the system "id.bluezbox.com", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see The administrator of that system for details. Content preview: On 2/16/2013 5:20 AM, Phileas Fogg wrote: > Hi, > > i have a question about how the scrolling in a framebuffer syscons works. > I'm trying to speed up the syscons on the PS3 console which is a > simple framebuffer syscons. > It uses the renderer _gfbrndrsw_ (see dev/syscons/scgfbrndr.c) to draw > into the framebuffer of the PS3 console. > The _gfb_draw_ function implements a simple scrolling that moves data > from bottom to top with _vidd_copy_. > And that's where i have a problem because _vidd_copy_ calls the > function _ps3fb_copy_ (see powerpc/ps3/ps3_syscons.c). > But the function _ps3fb_copy_ is NOT implemented yet. So, the question > is how does the scrolling work then ? > I took a look at other syscons implementation based on a framebuffer, > and almost all of them do NOT implement _vidd_copy_ > function, e.g. XBOX syscons. [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: freebsd-hackers@freebsd.org X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Feb 2013 00:39:59 -0000 On 2/16/2013 5:20 AM, Phileas Fogg wrote: > Hi, > > i have a question about how the scrolling in a framebuffer syscons works. > I'm trying to speed up the syscons on the PS3 console which is a > simple framebuffer syscons. > It uses the renderer _gfbrndrsw_ (see dev/syscons/scgfbrndr.c) to draw > into the framebuffer of the PS3 console. > The _gfb_draw_ function implements a simple scrolling that moves data > from bottom to top with _vidd_copy_. > And that's where i have a problem because _vidd_copy_ calls the > function _ps3fb_copy_ (see powerpc/ps3/ps3_syscons.c). > But the function _ps3fb_copy_ is NOT implemented yet. So, the question > is how does the scrolling work then ? > I took a look at other syscons implementation based on a framebuffer, > and almost all of them do NOT implement _vidd_copy_ > function, e.g. XBOX syscons. I think driver re-renders whole screen character by character. That's why no copy operation is invoked.