Comment # 22 on bug 1043231 from
0009-power-axp288_charger-Replace-deprecatd-API-of-extcon.patch

is needed to fix the following driver:

/home/matwey/lab/linux/drivers/power/axp288_charger.c: In function
'axp288_charger_extcon_evt_worker':
/home/matwey/lab/linux/drivers/power/axp288_charger.c:589:6: error: implicit
declaration of function 'extcon_get_cable_state'
[-Werror=implicit-function-declaration]
  if (extcon_get_cable_state(edev, AXP288_EXTCON_SLOW_CHARGER) > 0) {
      ^~~~~~~~~~~~~~~~~~~~~~

extcon_get_cable_state() function is dropped by
rk3399-0009-extcon-Rename-the-extcon_set-get_state-to-maintain-t.patch and I
think it is also affects only armv7l arch. drivers/power/axp288_charger.c seems
to not be used for other arhcs.

0010-pwm-rcar-Make-use-of-pwm_is_enabled.patch:

is needed to fix:

/home/matwey/lab/linux/drivers/pwm/pwm-rcar.c: In function 'rcar_pwm_config':
/home/matwey/lab/linux/drivers/pwm/pwm-rcar.c:160:16: error: 'PWMF_ENABLED'
undeclared (first use in this function)
  if (!test_bit(PWMF_ENABLED, &pwm->flags) && !duty_ns)

It is rk3399-pwm-0009-pwm-Move-the-enabled-disabled-info-into-pwm_state.patch
who stole PWMF_ENABLED macro definition.
Aarch64 team could found it by itself since pwm-rcar is required for Renesas
R8A7795-based 64-bit boards (but CONFIG_PWM_RCAR is not enabled in arch64
default config).
Since pwm-rcar is useless for armv7l I think there is also option to drop
CONFIG_PWM_RCAR from armv7l config. What would you prefer?

0011-pwm-Use-pwm_get-set_xxx-helpers-where-appropriate.patch:

is needed to fix:

/home/matwey/lab/linux/drivers/pwm/pwm-sun4i.c: In function 'sun4i_pwm_probe':
/home/matwey/lab/linux/drivers/pwm/pwm-sun4i.c:357:21: error: 'struct
pwm_device' has no member named 'polarity'
    pwm->chip.pwms[i].polarity = PWM_POLARITY_INVERSED;

There again API change backported by
rk3399-pwm-0008-pwm-Introduce-the-pwm_state-concept.patch again. (See
0006-input-misc-max77693-Use-pwm_get_args-where-appropria.patch which suffers
the same.)
The patch affects only armv7l-related PWM drivers.

*-dmaengine-*.patch and 0017-spi-expose-master-transfer-size-limitation.patch:

These are required to fix multiple compilation errors introduced by
rk3399-*-spi-rockchip-*.patch 

/home/matwey/lab/linux/drivers/spi/spi-rockchip.c: In function
'rockchip_spi_handle_err':
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c:327:4: error: implicit
declaration of function 'dmaengine_terminate_async'
[-Werror=implicit-function-declaration]
    dmaengine_terminate_async(rs->dma_rx.ch);
    ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c: In function
'rockchip_spi_prepare_dma':
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c:457:19: error: 'struct
dma_slave_caps' has no member named 'max_burst'
   if (rs->dma_caps.max_burst > 4)
                   ^
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c:479:19: error: 'struct
dma_slave_caps' has no member named 'max_burst'
   if (rs->dma_caps.max_burst > 4)
                   ^
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c:491:5: error: implicit
declaration of function 'dmaengine_terminate_sync'
[-Werror=implicit-function-declaration]
     dmaengine_terminate_sync(rs->dma_rx.ch);
     ^~~~~~~~~~~~~~~~~~~~~~~~
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c: In function
'rockchip_spi_probe':
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c:750:8: error: 'struct
spi_master' has no member named 'max_transfer_size'; did you mean
'transfer_one'?
  master->max_transfer_size = rockchip_spi_max_transfer_size;
        ^~
/home/matwey/lab/linux/drivers/spi/spi-rockchip.c:753:18: error: implicit
declaration of function 'dma_request_chan'
[-Werror=implicit-function-declaration]
  rs->dma_tx.ch = dma_request_chan(rs->dev, "tx");
                  ^~~~~~~~~~~~~~~~
As soon as CONFIG_SPI_ROCKCHIP is not set in aarch64 default config, I think
these rk3399-*-spi-rockchip-*.patch'es have never been checked to built at all.

1) disable CONFIG_SPI_ROCKCHIP which is required not only for aarch64 boards
(where it is already disabled) but by some armv7l RK3288-based (Cortex-A17
32-bit).
2) Drop rk3399-*-spi-rockchip-*.patch

0018-ARM-gic-v3-Work-around-definition-of-gic_write_bpr1.patch is armv7l
specific. Required to overcome the following issue:

/tmp/ccJeHxov.s: Assembler messages:
/tmp/ccJeHxov.s:671: Error: bad or missing co-processor number -- `mcr
"mrc","mcr","p15, 0, r3, c12, c12, 3",u32'

0019-drm-define-drm_compat_ioctl-NULL-on-CONFIG_COMPAT-n-.patch

required to fix the following:

  Building modules, stage 2.
  MODPOST 3593 modules
ERROR: "drm_compat_ioctl" [drivers/gpu/drm/hisilicon/hibmc/hibmc-drm.ko]
undefined!

drm_compat_ioctl is required only for 64-bit systems. But
0001-drm-hisilicon-hibmc-Add-hisilicon-hibmc-drm-master-d.patch and
0002-drm-hisilicon-hibmc-Add-video-memory-management.patch don't take it into
account. Instead of applying
0019-drm-define-drm_compat_ioctl-NULL-on-CONFIG_COMPAT-n-.patch there could be
a solution to redo 
0001-drm-hisilicon-hibmc-Add-hisilicon-hibmc-drm-master-d.patch and wrap
drm_compat_ioctl as the following:

#ifdef CONFIG_COMPAT
     .compat_ioctl = drm_compat_ioctl,
#endif


You are receiving this mail because: