From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754152AbcAYA3o (ORCPT ); Sun, 24 Jan 2016 19:29:44 -0500 Received: from domu-toccata.ens-lyon.fr ([140.77.166.138]:44168 "EHLO sonata.ens-lyon.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752543AbcAYA3l (ORCPT ); Sun, 24 Jan 2016 19:29:41 -0500 Date: Mon, 25 Jan 2016 01:29:36 +0100 From: Samuel Thibault To: Dan Carpenter , William Hubbs , Chris Brannon , Kirk Reiser , Melike Yurtoglu , Greg Kroah-Hartman , speakup@linux-speakup.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] Staging: speakup: Fix getting port information Message-ID: <20160125002936.GA1216@var.home> Mail-Followup-To: Samuel Thibault , Dan Carpenter , William Hubbs , Chris Brannon , Kirk Reiser , Melike Yurtoglu , Greg Kroah-Hartman , speakup@linux-speakup.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org References: <20160114234741.GD3574@var.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160114234741.GD3574@var.home> User-Agent: Mutt/1.5.21+34 (58baf7c9f32f) (2010-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ping? Samuel Thibault, on Fri 15 Jan 2016 00:47:41 +0100, wrote: > Commit f79b0d9c223c ("staging: speakup: Fixed warning > instead of ") broke the port information in the speakup > driver: SERIAL_PORT_DFNS only gets defined if asm/serial.h is included, > and no other header includes asm/serial.h. > > We here make sure serialio.c does get the arch-specific definition of > SERIAL_PORT_DFNS from asm/serial.h, if any. > > Along the way, this makes sure that we do have information for the > requested serial port number (index) > > Signed-off-by: Samuel Thibault > Fixes: f79b0d9c223c ("staging: speakup: Fixed warning instead of ") > > --- a/drivers/staging/speakup/serialio.c > +++ b/drivers/staging/speakup/serialio.c > @@ -6,6 +6,11 @@ > #include "spk_priv.h" > #include "serialio.h" > > +#include > +/* WARNING: Do not change this to without testing that > + * SERIAL_PORT_DFNS does get defined to the appropriate value. */ > +#include > + > #ifndef SERIAL_PORT_DFNS > #define SERIAL_PORT_DFNS > #endif > @@ -23,9 +28,15 @@ const struct old_serial_port *spk_serial > int baud = 9600, quot = 0; > unsigned int cval = 0; > int cflag = CREAD | HUPCL | CLOCAL | B9600 | CS8; > - const struct old_serial_port *ser = rs_table + index; > + const struct old_serial_port *ser; > int err; > > + if (index >= ARRAY_SIZE(rs_table)) { > + pr_info("no port info for ttyS%d\n", index); > + return NULL; > + } > + ser = rs_table + index; > + > /* Divisor, bytesize and parity */ > quot = ser->baud_base / baud; > cval = cflag & (CSIZE | CSTOPB);