From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by befuddled.reisers.ca (Postfix, from userid 65534) id 40BA81F060D; Thu, 2 Feb 2017 19:11:53 -0500 (EST) Received: from hera.aquilenet.fr (hera.aquilenet.fr [IPv6:2a01:474::1]) by befuddled.reisers.ca (Postfix) with ESMTP id 58B781F05F3 for ; Thu, 2 Feb 2017 19:11:51 -0500 (EST) Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 5E6F3A366; Fri, 3 Feb 2017 01:11:46 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vUvIMJ_AOGwf; Fri, 3 Feb 2017 01:11:45 +0100 (CET) Received: from var.youpi.perso.aquilenet.fr (unknown [IPv6:2a01:cb19:181:c200:3602:86ff:fe2c:6a19]) by hera.aquilenet.fr (Postfix) with ESMTPSA id A8547795D; Fri, 3 Feb 2017 01:11:45 +0100 (CET) Received: from samy by var.youpi.perso.aquilenet.fr with local (Exim 4.88) (envelope-from ) id 1cZRTc-0006Ym-CI; Fri, 03 Feb 2017 01:11:44 +0100 Date: Fri, 3 Feb 2017 01:11:44 +0100 From: Samuel Thibault To: Okash Khawaja Cc: "Speakup is a screen review system for Linux." Subject: Re: Line discipline Message-ID: <20170203001144.GN2633@var.home> References: <20170126001801.GQ3119@var.home> <20170126083312.GB25343@var.home> <20170128175709.GO3304@var.home> <20170128183039.GS3304@var.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21+34 (58baf7c9f32f) (2010-12-30) X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 X-BeenThere: speakup@linux-speakup.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Speakup is a screen review system for Linux." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Feb 2017 00:11:53 -0000 Hello, Okash Khawaja, on Thu 02 Feb 2017 23:51:26 +0000, wrote: > I have attached the patch which uses tty for speakup_dummy. It looks good, cool :) > It applies without conflicts to 4.10.x kernel code but showed > conflicts for 4.8.6. No problem, it'll take some time to get to a point where it is submittable, so no need to target old kernels. > Please note that major and minor device numbers are hard coded as 4 > and 64 inside spk_ttyio_initialise() function. Sure, that's fine for now. > I have changed names slightly, so there is spk_ttyio_* prefix which > identifies functions related to tty-based comms. The related code is > grouped inside spk_ttyio.c file. Good :) > I noticed that `startup` member of synth_dummy instance was set to > SYNTH_START which meant that probe function for dummy won't be called > when built into kernel image. Yes, AIUI that is on purpose, so that one can build a kernel with all drivers compiled in, and use e.g. the synth=dummy kernel parameter to make the dummy driver started. So please do not change that part, leave it as it is. > Tested dummy and also soft synth/espeakup for regressions. Both seemed > okay but I didn't fully test them. Any ideas for testing will be > useful. >>From looking at the patch, I wouldn't expect any regression anyway. Ideally you'd do some daily work like hacking source code, compiling, etc. with the dummy driver enabled, to exercice speakup in harsh conditions. Last but not least, you will need to maintain a patch queue, so that the whole thing is easy to review. So before developping more, please learn about quilt, and split what you have into several parts already, which can be easily reviewed and make sense separately, I'd say five patches in the patch queue: - the drivers/tty/*+include/linux/tty.h - the addition of the serial_out method, ploggued onto spk_serial_out for all drivers - the move of spk_stop_serial_interrupt into spk_serial_release - the addition of spk_ttyio and N_SPEAKUP - making dummy use ttyio methods instead of serial The idea is that when applying patches one after the other, everything should be working fine at each step. Each patch needs a changelog to explain what it does, see patch submissions on the linux kernel mailing list for examples of changelogs. Then you'll be able to insert a patch for the serial_in method, and another patch that would add a parameter to be parsed to produce e.g. 4,64 in the ttyS0 case, 188,0 in the ttyUSB0 case, etc. (see Documentation/devices.txt), and a patch to make other drivers use it. Samuel