All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Heiko Stübner" <heiko@sntech.de>
To: Luis Ortega <luiorpe1@upv.es>
Cc: dmitry.torokhov@gmail.com, yongjun_wei@trendmicro.com.cn,
	linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 4/4] Input: zforce - reduce stack memory allocated to frames
Date: Mon, 27 Jan 2014 21:22:39 +0100	[thread overview]
Message-ID: <4535379.f73S9IDmJi@phil> (raw)
In-Reply-To: <1390848373-7723-5-git-send-email-luiorpe1@upv.es>

On Monday, 27. January 2014 19:46:13 Luis Ortega wrote:
> A frame is a u8 array with the following structure:
> [PAYLOAD_HEADER, PAYLOAD_LENGTH, ...PAYLOAD_BODY...]
> 
> PAYLOAD_BODY can be at most 255 bytes long, as it's size is represented
> by PAYLOAD_LENGTH. Therefore we can reduce the stack memory allocated to
> payload_buffer[] roughly by half, from 512 to 257 bytes.

Nice catch, thanks

Acked-by: Heiko Stuebner <heiko@sntech.de>

on a bq Cervantes (imx6sl)
Tested-by: Heiko Stuebner <heiko@sntech.de>


As a side-note, this change conflicts with one of my patches adding devicetree 
support to the driver [0], which Dmitry will hopefully also look at soon.

So one of us might need to respin his series depending on the ordering.



[0] http://permalink.gmane.org/gmane.linux.kernel.input/33587




> 
> Signed-off-by: Luis Ortega <luiorpe1@upv.es>
> ---
>  drivers/input/touchscreen/zforce_ts.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/input/touchscreen/zforce_ts.c
> b/drivers/input/touchscreen/zforce_ts.c index e082d5c..afb2492 100644
> --- a/drivers/input/touchscreen/zforce_ts.c
> +++ b/drivers/input/touchscreen/zforce_ts.c
> @@ -33,6 +33,7 @@
>  #define WAIT_TIMEOUT		msecs_to_jiffies(1000)
> 
>  #define FRAME_START		0xee
> +#define FRAME_MAXSIZE		257
> 
>  /* Offsets of the different parts of the payload the controller sends */
>  #define PAYLOAD_HEADER		0
> @@ -475,7 +476,7 @@ static irqreturn_t zforce_irq_thread(int irq, void
> *dev_id) struct i2c_client *client = ts->client;
>  	const struct zforce_ts_platdata *pdata = dev_get_platdata(&client->dev);
>  	int ret;
> -	u8 payload_buffer[512];
> +	u8 payload_buffer[FRAME_MAXSIZE];
>  	u8 *payload;
> 
>  	/*


  reply	other threads:[~2014-01-27 20:23 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-27 18:46 Input: zforce - fix various small issues Luis Ortega
2014-01-27 18:46 ` [PATCH 1/4] Input: zforce - fix spelling errors Luis Ortega
2014-01-27 18:41   ` Heiko Stübner
2014-01-27 18:46 ` [PATCH 2/4] Input: zforce - fix lines exceeding 80 columns Luis Ortega
2014-01-27 19:12   ` Heiko Stübner
2014-01-27 19:29     ` Luis Ortega
2014-01-27 19:29       ` Luis Ortega
2014-01-27 18:46 ` [PATCH 3/4] Input: zforce - Remove unnecessary payload data checks Luis Ortega
2014-01-27 20:16   ` Heiko Stübner
2014-01-27 18:46 ` [PATCH 4/4] Input: zforce - reduce stack memory allocated to frames Luis Ortega
2014-01-27 20:22   ` Heiko Stübner [this message]
2014-01-28  6:44 ` Input: zforce - fix various small issues Dmitry Torokhov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4535379.f73S9IDmJi@phil \
    --to=heiko@sntech.de \
    --cc=dmitry.torokhov@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luiorpe1@upv.es \
    --cc=yongjun_wei@trendmicro.com.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.