media: cxusb: pass buf as a const u8 * pointer and make buf static const
authorColin Ian King <colin.king@canonical.com>
Mon, 18 Sep 2017 14:24:44 +0000 (10:24 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 8 Dec 2017 15:05:41 +0000 (10:05 -0500)
Don't populate the read-only u8 array buf on the stack at run time but
instead make it static const; makes object code smaller saving over 480
bytes:

Before:
   text    data     bss     dec     hex filename
  33030   65936     192   99158   18356 drivers/media/usb/dvb-usb/cxusb.o

After:
   text    data     bss     dec     hex filename
  32446   66032     192   98670   1816e drivers/media/usb/dvb-usb/cxusb.o

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/usb/dvb-usb/cxusb.c

index 37dea0adc695382068059fcce20f07fffebe9bc4..247dc164dd63833193514f39f8e335109383a7da 100644 (file)
@@ -56,7 +56,7 @@ DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
 #define deb_i2c(args...)    dprintk(dvb_usb_cxusb_debug, 0x02, args)
 
 static int cxusb_ctrl_msg(struct dvb_usb_device *d,
-                         u8 cmd, u8 *wbuf, int wlen, u8 *rbuf, int rlen)
+                         u8 cmd, const u8 *wbuf, int wlen, u8 *rbuf, int rlen)
 {
        struct cxusb_state *st = d->priv;
        int ret;
@@ -290,7 +290,8 @@ static int cxusb_aver_power_ctrl(struct dvb_usb_device *d, int onoff)
                /* FIXME: We don't know why, but we need to configure the
                 * lgdt3303 with the register settings below on resume */
                int i;
-               u8 buf, bufs[] = {
+               u8 buf;
+               static const u8 bufs[] = {
                        0x0e, 0x2, 0x00, 0x7f,
                        0x0e, 0x2, 0x02, 0xfe,
                        0x0e, 0x2, 0x02, 0x01,