1. 31 Aug, 2022 1 commit
  2. 07 May, 2022 1 commit
  3. 21 Mar, 2022 1 commit
  4. 18 Mar, 2022 1 commit
    • Mauro Carvalho Chehab's avatar
      media: Kconfig: cleanup VIDEO_DEV dependencies · 9958d30f
      Mauro Carvalho Chehab authored
      
      media Kconfig has two entries associated to V4L API:
      VIDEO_DEV and VIDEO_V4L2.
      
      On Kernel 2.6.x, there were two V4L APIs, each one with its own flag.
      VIDEO_DEV were meant to:
      	1) enable Video4Linux and make its Kconfig options to appear;
      	2) it makes the Kernel build the V4L core.
      
      while VIDEO_V4L2 where used to distinguish between drivers that
      implement the newer API and drivers that implemented the former one.
      
      With time, such meaning changed, specially after the removal of
      all V4L version 1 drivers.
      
      At the current implementation, VIDEO_DEV only does (1): it enables
      the media options related to V4L, that now has:
      
      	menu "Video4Linux options"
      		visible if VIDEO_DEV
      
      	source "drivers/media/v4l2-core/Kconfig"
      	endmenu
      
      but it doesn't affect anymore the V4L core drivers.
      
      The rationale is that the V4L2 core has a "soft" dependency
      at the I2C bus, and now requires to select a number of other
      Kconfig options:
      
      	config VIDEO_V4L2
      		tristate
      		depends on (I2C || I2C=n) && VIDEO_DEV
      		select RATIONAL
      		select VIDEOBUF2_V4L2 if VIDEOBUF2_CORE
      		default (I2C || I2C=n) && VIDEO_DEV
      
      In the past, merging them would be tricky, but it seems that it is now
      possible to merge those symbols, in order to simplify V4L dependencies.
      
      Let's keep VIDEO_DEV, as this one is used on some make *defconfig
      configurations.
      Suggested-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Reviewed-by: default avatarJacopo Mondi <jacopo@jmondi.org>
      Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> # for meson-vdec & meson-ge2d
      Acked-by: default avatarAndrzej Pietrasiewicz <andrzejtp2010@gmail.com>
      Acked-by: default avatarŁukasz Stelmach <l.stelmach@samsung.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
      9958d30f
  5. 17 Oct, 2021 1 commit
    • Marek Vasut's avatar
      Input: ili210x - add ili251x firmware update support · c6ac8f0b
      Marek Vasut authored
      
      The ili251x firmware can be updated, this is used when switching between
      different modes of operation of the touch surface, e.g. glove operation.
      This patch implements the firmware update mechanism triggered by a write
      into an sysfs attribute.
      
      The firmware itself is distributed as an intel hex file with non-standard
      types. The first two lines are of type 0xad, which indicates the start of
      DataFlash payload, that is always at address 0xf000 on the ili251x, so it
      can be dropped, and 0xac which indicates the position of firmware info in
      the Application payload, that is always at address 0x2020 on the ili251x
      and we do not care. The rest of the firmware is data of type 0x00, and we
      care about that. To convert the firmware hex file into something usable
      by the kernel, remove the first two lines and then use ihex2fw:
      
       $ tail -n +3 input.hex > temp.hex
       $ ./tools/firmware/ihex2fw temp.hex firmware/ilitek/ili251x.bin
      
      To trigger the firmware update, place firmware file ilitek/ili251x.bin
      into /lib/firmware/, write into firmware_update sysfs attribute and wait
      about 30-40 seconds. The firmware update is slow. Afterward, verify the
      firmware_version and mode sysfs attributes to check whether the firmware
      got updated and the controller switched back to application (AP) mode by
      reading out 'mode' attribute in sysfs.
      
      Note that the content of firmware_version, e.g. 0600.0005.abcd.aa04 can
      be matched to the content of the firmware hex file. The first four bytes,
      0x06 0x00 0x00 0x05 can be found at ^:102030 00 05000006, the next four
      bytes 0xab 0xcd 0xaa 0x04 at ^:10F000 00 nnnnnnnn ABCDAA04.
      
      Note that the protocol differs considerably between the ili2xxx devices,
      this patch therefore implements this functionality only for ili251x that
      I can test.
      Signed-off-by: default avatarMarek Vasut <marex@denx.de>
      Link: https://lore.kernel.org/r/20210831202506.181927-3-marex@denx.de
      
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      c6ac8f0b
  6. 04 Sep, 2021 1 commit
  7. 14 Apr, 2021 1 commit
  8. 10 Apr, 2021 2 commits
  9. 25 Mar, 2021 1 commit
  10. 19 Feb, 2021 1 commit
  11. 12 Nov, 2020 1 commit
  12. 04 Oct, 2020 1 commit
  13. 10 May, 2020 1 commit
  14. 22 Nov, 2019 1 commit
  15. 30 Oct, 2019 4 commits
  16. 09 Aug, 2019 1 commit
  17. 21 May, 2019 1 commit
  18. 30 Apr, 2019 1 commit
  19. 09 Mar, 2019 1 commit
    • Arnd Bergmann's avatar
      Input: raspberrypi-ts - select CONFIG_INPUT_POLLDEV · 33667575
      Arnd Bergmann authored
      When CONFIG_INPUT_POLLDEV is disabled, we get a link error:
      
      drivers/input/touchscreen/raspberrypi-ts.o: In function `rpi_ts_probe':
      raspberrypi-ts.c:(.text+0xec): undefined reference to `devm_input_allocate_polled_device'
      raspberrypi-ts.c:(.text+0xec): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `devm_input_allocate_polled_device'
      raspberrypi-ts.c:(.text+0x19c): undefined reference to `input_register_polled_device'
      raspberrypi-ts.c:(.text+0x19c): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `input_register_polled_device'
      
      Select that symbol like we do from the other similar drivers.
      
      Fixes: 0b9f28fe
      
       ("Input: add official Raspberry Pi's touchscreen driver")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Reviewed-by: default avatarNicolas Saenz Julienne <nsaenzjulienne@suse.de>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      33667575
  20. 28 Jan, 2019 1 commit
  21. 14 Jan, 2019 1 commit
    • Anders Roxell's avatar
      Input: raspberrypi-ts - fix link error · 4add635b
      Anders Roxell authored
      Fix link error when TOUCHSCREEN_RASPBERRYPI_FW is enabled as a module and
      the dependent module is built-in.  The 'depends on RASPBERRYPI_FIRMWARE' by
      itself prevents the touchscreen driver from being built-in when the
      firmware is configured as a module.  However, the '|| COMPILE_TEST' still
      allows it unless we explicitly prevent that configuration with
      '|| (RASPBERRYPI_FIRMWARE=n && COMPILE_TEST)'.
      
      ld: drivers/input/touchscreen/raspberrypi-ts.o: in function `rpi_ts_probe':
      raspberrypi-ts.c:(.text+0x3a8): undefined reference to `rpi_firmware_get'
      ld: raspberrypi-ts.c:(.text+0x3a8): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `rpi_firmware_get'
      ld: raspberrypi-ts.c:(.text+0x4c8): undefined reference to `rpi_firmware_property'
      ld: raspberrypi-ts.c:(.text+0x4c8): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `rpi_firmware_property'
      
      Rework so that TOUCHSCREEN_RASPBERRYPI_FW depends on
      RASPBERRYPI_FIRMWARE=n if COMPILE_TEST is enabled.
      
      Fixes: 0b9f28fe
      
       ("Input: add official Raspberry Pi's touchscreen driver")
      Suggested-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarAnders Roxell <anders.roxell@linaro.org>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      4add635b
  22. 21 Dec, 2018 1 commit
  23. 24 Jun, 2018 1 commit
  24. 10 Jun, 2018 1 commit
  25. 09 May, 2018 1 commit
  26. 23 Apr, 2018 1 commit
  27. 19 Jan, 2018 1 commit
  28. 10 Nov, 2017 2 commits
  29. 25 Oct, 2017 1 commit
    • Ahmet Inan's avatar
      Input: add I2C attached EETI EXC3000 multi touch driver · 7e577a17
      Ahmet Inan authored
      
      The 3000 series have a new protocol which allows to report up to 5 points
      in a single 66 byte frame. One must always read in 66 byte frames.
      To support up to 10 points, two consecutive frames need to be read:
      The first frame says how many points until sync.
      The second frame must say zero points or both frames must be discarded.
      
      To be able to work with the higher 400KHz I2C bus rate, one must
      successfully send a special package prior _each_ read or the controller
      will refuse to cooperate.
      
      This is a minimal implementation based on egalax_i2c.c (which can be found
      on the internet) and egalax_ts.c but without the vendor interface and no
      power management support.
      Signed-off-by: default avatarAhmet Inan <inan@distec.de>
      Acked-by: default avatarRob Herring <robh@kernel.org>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      7e577a17
  30. 26 Sep, 2017 1 commit
  31. 19 Sep, 2017 1 commit
  32. 05 Jun, 2017 1 commit
  33. 14 Apr, 2017 1 commit
  34. 23 Mar, 2017 1 commit
  35. 23 Feb, 2017 1 commit