mbox series

[00/15] More atomisp fixes and cleanups

Message ID cover.1591167358.git.mchehab+huawei@kernel.org
Headers show
Series More atomisp fixes and cleanups | expand

Message

Mauro Carvalho Chehab June 3, 2020, 7 a.m. UTC
Most of the code here is meant to make the IRQ handling code clearer,
and the ISP frequency setting (DFS).

There's a fix there at the DFS setting: right now, if the sensor doesn't
provide the number of frames per second, DFS is kept on its minimal
value, with will likely fail. The logic at patch 13 changes it to default
to the maximum value. While this will drain more power, the camera
should be able to work.

Mauro Carvalho Chehab (15):
  media: atomisp: improve IRQ handling debug messages
  media: atomisp: do some cleanup at irq_local.h
  media: atomisp: get rid of a duplicated file
  media: atomisp: get rid of ifdef nonsense
  media: atomisp: simplify IRQ ifdef logic
  media: atomisp: remove some unused defines from *mamoiada_params.h
  media: atomisp: use just one mamoiada_params.h
  media: atomisp: get rid of a detection hack for a BYT Andorid-based
    tablet
  media: atomisp: don't set hpll_freq twice with different values
  media: atomisp: use macros from intel-family.h
  media: atomisp: change the detection of ISP2401 at runtime
  media: atomisp: use different dfs failed messages
  media: atomisp: set DFS to MAX if sensor doesn't report fps
  media: atomisp: use strscpy() instead of less secure variants
  media: atomisp: get rid of a string_support.h abstraction layer

 .../media/atomisp/include/linux/atomisp.h     |   3 -
 .../atomisp/include/linux/atomisp_platform.h  |  21 +-
 .../staging/media/atomisp/pci/atomisp_cmd.c   |  71 +++---
 .../media/atomisp/pci/atomisp_common.h        |   4 -
 .../media/atomisp/pci/atomisp_compat_css20.c  |  14 +-
 .../staging/media/atomisp/pci/atomisp_file.c  |   2 +-
 .../media/atomisp/pci/atomisp_gmin_platform.c |   2 +-
 .../staging/media/atomisp/pci/atomisp_ioctl.c |  46 ++--
 .../media/atomisp/pci/atomisp_subdev.c        |   2 +-
 .../staging/media/atomisp/pci/atomisp_tpg.c   |   2 +-
 .../media/atomisp/pci/atomisp_trace_event.h   |   6 +-
 .../staging/media/atomisp/pci/atomisp_v4l2.c  | 110 +++------
 .../pci/camera/pipe/src/pipe_binarydesc.c     |   4 +-
 .../hrt/isp2400_mamoiada_params.h             | 229 ------------------
 .../pci/hive_isp_css_2401_irq_types_hrt.h     |  69 ------
 .../pci/hive_isp_css_common/host/irq.c        |  29 +--
 .../pci/hive_isp_css_common/host/irq_local.h  |  17 +-
 .../pci/hive_isp_css_common/irq_global.h      |  10 +-
 .../pci/hive_isp_css_common/isp_global.h      |  12 +-
 .../pci/hive_isp_css_common/sp_global.h       |  10 -
 .../hive_isp_css_include/host/irq_public.h    |  16 +-
 .../pci/hive_isp_css_include/string_support.h | 165 -------------
 ...sp_css_irq_types_hrt.h => irq_types_hrt.h} |   0
 .../ctc/ctc_1.0/ia_css_ctc_table.host.c       |   3 +-
 .../kernels/gc/gc_1.0/ia_css_gc_table.host.c  |   3 +-
 .../kernels/gc/gc_2/ia_css_gc2_table.host.c   |   3 +-
 .../xnr/xnr_1.0/ia_css_xnr_table.host.c       |   3 +-
 .../atomisp/pci/isp2400_input_system_local.h  |  15 +-
 .../media/atomisp/pci/isp2400_system_global.h |  31 ---
 .../media/atomisp/pci/isp2400_system_local.h  |   8 -
 .../media/atomisp/pci/isp2401_system_global.h |  31 ---
 .../media/atomisp/pci/isp2401_system_local.h  |   8 -
 ...01_mamoiada_params.h => mamoiada_params.h} |  20 +-
 .../atomisp/pci/runtime/binary/src/binary.c   |   4 +-
 .../pci/runtime/debug/src/ia_css_debug.c      |  65 ++---
 .../pci/runtime/isys/src/virtual_isys.c       |  29 +--
 .../tagger/interface/ia_css_tagger_common.h   |   4 -
 drivers/staging/media/atomisp/pci/sh_css.c    |  50 ++--
 .../media/atomisp/pci/sh_css_firmware.c       |   6 +-
 .../media/atomisp/pci/sh_css_internal.h       |  10 -
 .../staging/media/atomisp/pci/sh_css_mipi.c   |   8 +-
 .../staging/media/atomisp/pci/sh_css_params.c |  22 +-
 drivers/staging/media/atomisp/pci/sh_css_sp.c |   5 +-
 .../media/atomisp/pci/sh_css_version.c        |   5 +-
 44 files changed, 247 insertions(+), 930 deletions(-)
 delete mode 100644 drivers/staging/media/atomisp/pci/css_2400_system/hrt/isp2400_mamoiada_params.h
 delete mode 100644 drivers/staging/media/atomisp/pci/hive_isp_css_2401_irq_types_hrt.h
 delete mode 100644 drivers/staging/media/atomisp/pci/hive_isp_css_include/string_support.h
 rename drivers/staging/media/atomisp/pci/{css_2400_system/hrt/hive_isp_css_irq_types_hrt.h => irq_types_hrt.h} (100%)
 rename drivers/staging/media/atomisp/pci/{isp2401_mamoiada_params.h => mamoiada_params.h} (91%)

Comments

Mauro Carvalho Chehab June 3, 2020, 7 a.m. UTC | #1
There's a hack at the driver that selects a different table
for a BYT tablet, which sets the maximum frequency to 320 MHz,
instead of 400 MHz.

After looking at the Intel Aero Yocto's version from:

	https://download.01.org/aero/deb/pool/main/l/linux-4.4.76-aero-1.3/

It was noticed that this depends on an Android-specific modprobe parameter,
which uses a macro (INTEL_MID_BOARD) from this file:

	arch/x86/include/asm/spid.h