Re: [PATCH 1/2] media: rc-core: rename ir_raw_event_reset to ir_raw_event_overflow

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Sean,

I love your patch! Yet something to improve:

[auto build test ERROR on media-tree/master]
[also build test ERROR on next-20220121]
[cannot apply to sunxi/sunxi/for-next v5.16]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Sean-Young/media-rc-core-rename-ir_raw_event_reset-to-ir_raw_event_overflow/20220121-001937
base:   git://linuxtv.org/media_tree.git master
config: hexagon-randconfig-r041-20220120 (https://download.01.org/0day-ci/archive/20220121/202201211605.1ccb0HNg-lkp@xxxxxxxxx/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f7b7138a62648f4019c55e4671682af1f851f295)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/5b0115b915832b54ebe085c923d73209b1abb364
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Sean-Young/media-rc-core-rename-ir_raw_event_reset-to-ir_raw_event_overflow/20220121-001937
        git checkout 5b0115b915832b54ebe085c923d73209b1abb364
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash drivers/media/rc/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

>> drivers/media/rc/mtk-cir.c:220:2: error: implicit declaration of function 'ir_raw_event_reset' [-Werror,-Wimplicit-function-declaration]
           ir_raw_event_reset(ir->rc);
           ^
   drivers/media/rc/mtk-cir.c:220:2: note: did you mean 'ir_raw_event_store'?
   include/media/rc-core.h:317:5: note: 'ir_raw_event_store' declared here
   int ir_raw_event_store(struct rc_dev *dev, struct ir_raw_event *ev);
       ^
   1 error generated.


vim +/ir_raw_event_reset +220 drivers/media/rc/mtk-cir.c

6691e7b9a57c24 Sean Wang  2017-01-13  202  
6691e7b9a57c24 Sean Wang  2017-01-13  203  static irqreturn_t mtk_ir_irq(int irqno, void *dev_id)
6691e7b9a57c24 Sean Wang  2017-01-13  204  {
6691e7b9a57c24 Sean Wang  2017-01-13  205  	struct mtk_ir *ir = dev_id;
6691e7b9a57c24 Sean Wang  2017-01-13  206  	u8  wid = 0;
6691e7b9a57c24 Sean Wang  2017-01-13  207  	u32 i, j, val;
183e19f5b9ee18 Sean Young 2018-08-21  208  	struct ir_raw_event rawir = {};
6691e7b9a57c24 Sean Wang  2017-01-13  209  
6691e7b9a57c24 Sean Wang  2017-01-13  210  	/*
6691e7b9a57c24 Sean Wang  2017-01-13  211  	 * Reset decoder state machine explicitly is required
6691e7b9a57c24 Sean Wang  2017-01-13  212  	 * because 1) the longest duration for space MTK IR hardware
6691e7b9a57c24 Sean Wang  2017-01-13  213  	 * could record is not safely long. e.g  12ms if rx resolution
6691e7b9a57c24 Sean Wang  2017-01-13  214  	 * is 46us by default. There is still the risk to satisfying
6691e7b9a57c24 Sean Wang  2017-01-13  215  	 * every decoder to reset themselves through long enough
6691e7b9a57c24 Sean Wang  2017-01-13  216  	 * trailing spaces and 2) the IRQ handler guarantees that
6691e7b9a57c24 Sean Wang  2017-01-13  217  	 * start of IR message is always contained in and starting
50c3c1ba171f3f Sean Wang  2017-06-30  218  	 * from register mtk_chkdata_reg(ir, i).
6691e7b9a57c24 Sean Wang  2017-01-13  219  	 */
6691e7b9a57c24 Sean Wang  2017-01-13 @220  	ir_raw_event_reset(ir->rc);
6691e7b9a57c24 Sean Wang  2017-01-13  221  
6691e7b9a57c24 Sean Wang  2017-01-13  222  	/* First message must be pulse */
6691e7b9a57c24 Sean Wang  2017-01-13  223  	rawir.pulse = false;
6691e7b9a57c24 Sean Wang  2017-01-13  224  
6691e7b9a57c24 Sean Wang  2017-01-13  225  	/* Handle all pulse and space IR controller captures */
6691e7b9a57c24 Sean Wang  2017-01-13  226  	for (i = 0 ; i < MTK_CHKDATA_SZ ; i++) {
50c3c1ba171f3f Sean Wang  2017-06-30  227  		val = mtk_r32(ir, mtk_chkdata_reg(ir, i));
6691e7b9a57c24 Sean Wang  2017-01-13  228  		dev_dbg(ir->dev, "@reg%d=0x%08x\n", i, val);
6691e7b9a57c24 Sean Wang  2017-01-13  229  
6691e7b9a57c24 Sean Wang  2017-01-13  230  		for (j = 0 ; j < 4 ; j++) {
6691e7b9a57c24 Sean Wang  2017-01-13  231  			wid = (val & (MTK_WIDTH_MASK << j * 8)) >> j * 8;
6691e7b9a57c24 Sean Wang  2017-01-13  232  			rawir.pulse = !rawir.pulse;
6691e7b9a57c24 Sean Wang  2017-01-13  233  			rawir.duration = wid * (MTK_IR_SAMPLE + 1);
6691e7b9a57c24 Sean Wang  2017-01-13  234  			ir_raw_event_store_with_filter(ir->rc, &rawir);
6691e7b9a57c24 Sean Wang  2017-01-13  235  		}
6691e7b9a57c24 Sean Wang  2017-01-13  236  	}
6691e7b9a57c24 Sean Wang  2017-01-13  237  
6691e7b9a57c24 Sean Wang  2017-01-13  238  	/*
6691e7b9a57c24 Sean Wang  2017-01-13  239  	 * The maximum number of edges the IR controller can
6691e7b9a57c24 Sean Wang  2017-01-13  240  	 * hold is MTK_CHKDATA_SZ * 4. So if received IR messages
6691e7b9a57c24 Sean Wang  2017-01-13  241  	 * is over the limit, the last incomplete IR message would
6691e7b9a57c24 Sean Wang  2017-01-13  242  	 * be appended trailing space and still would be sent into
6691e7b9a57c24 Sean Wang  2017-01-13  243  	 * ir-rc-raw to decode. That helps it is possible that it
6691e7b9a57c24 Sean Wang  2017-01-13  244  	 * has enough information to decode a scancode even if the
6691e7b9a57c24 Sean Wang  2017-01-13  245  	 * trailing end of the message is missing.
6691e7b9a57c24 Sean Wang  2017-01-13  246  	 */
6691e7b9a57c24 Sean Wang  2017-01-13  247  	if (!MTK_IR_END(wid, rawir.pulse)) {
6691e7b9a57c24 Sean Wang  2017-01-13  248  		rawir.pulse = false;
6691e7b9a57c24 Sean Wang  2017-01-13  249  		rawir.duration = MTK_MAX_SAMPLES * (MTK_IR_SAMPLE + 1);
6691e7b9a57c24 Sean Wang  2017-01-13  250  		ir_raw_event_store_with_filter(ir->rc, &rawir);
6691e7b9a57c24 Sean Wang  2017-01-13  251  	}
6691e7b9a57c24 Sean Wang  2017-01-13  252  
6691e7b9a57c24 Sean Wang  2017-01-13  253  	ir_raw_event_handle(ir->rc);
6691e7b9a57c24 Sean Wang  2017-01-13  254  
6691e7b9a57c24 Sean Wang  2017-01-13  255  	/*
6691e7b9a57c24 Sean Wang  2017-01-13  256  	 * Restart controller for the next receive that would
6691e7b9a57c24 Sean Wang  2017-01-13  257  	 * clear up all CHKDATA registers
6691e7b9a57c24 Sean Wang  2017-01-13  258  	 */
50c3c1ba171f3f Sean Wang  2017-06-30  259  	mtk_w32_mask(ir, 0x1, MTK_IRCLR, ir->data->regs[MTK_IRCLR_REG]);
6691e7b9a57c24 Sean Wang  2017-01-13  260  
6691e7b9a57c24 Sean Wang  2017-01-13  261  	/* Clear interrupt status */
50c3c1ba171f3f Sean Wang  2017-06-30  262  	mtk_w32_mask(ir, 0x1, MTK_IRINT_CLR,
50c3c1ba171f3f Sean Wang  2017-06-30  263  		     ir->data->regs[MTK_IRINT_CLR_REG]);
6691e7b9a57c24 Sean Wang  2017-01-13  264  
6691e7b9a57c24 Sean Wang  2017-01-13  265  	return IRQ_HANDLED;
6691e7b9a57c24 Sean Wang  2017-01-13  266  }
6691e7b9a57c24 Sean Wang  2017-01-13  267  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux