hi846: Error on unload after failed probe
If the driver failed to probe, unloading it afterwards results in an error:
[ 272.399132] ------------[ cut here ]------------
[ 272.399150] WARNING: CPU: 3 PID: 1662 at drivers/media/v4l2-core/v4l2-mc.c:475 pipeline_pm_power_one+0x104/0x15c [videodev]
[ 272.399230] Modules linked in: imx8mq_mipi_csi2(C+) imx7_media_csi(C) nft_chain_nat nft_compat wireguard libchacha20poly1305 chacha_neon poly1305_neon ip6_udp_tunnel udp_tunnel libcurve25519_generic nf_tables nfnetlink iptable_mangle xt_CHECKSUM option qmi_wwan cdc_wdm usbnet mii usb_wwan xt_tcpudp iptable_nat xt_comment xt_MASQUERADE nf_nat nf_conntrack usbserial nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c bridge stp iptable_filter usb_f_acm u_serial usb_f_ecm u_ether uas mousedev caam_jr caamhash_desc caamalg_desc crypto_engine usb_storage st_lsm6dsx_spi aes_ce_blk crct10dif_ce ghash_ce sha2_ce sha1_ce pwm_vibra hantro_vpu(C) snd_soc_gtm601 v4l2_vp9 v4l2_h264 snd_soc_simple_card brcmfmac v4l2_mem2mem videobuf2_vmalloc snd_soc_simple_card_utils cfg80211 brcmutil vcnl4000 st_lsm6dsx_i2c dw9714 st_lsm6dsx industrialio_triggered_buffer kfifo_buf snd_soc_wm8962 edt_ft5x06 leds_lm3560 v4l2_flash_led_class imx_media_common(C) snd_soc_fsl_sai imx_pcm_dma snd_soc_core gnss_mtk v4l2_fwnode
[ 272.399415] videobuf2_dma_contig gnss_serial gnss snd_pcm_dmaengine videobuf2_memops videobuf2_v4l2 snd_pcm videobuf2_common v4l2_async caam videodev snd_timer error mc snd soundcore imx2_wdt watchdog rfkill_hks rfkill libcomposite ledtrig_timer ledtrig_pattern fuse ip_tables x_tables ipv6 ofpart xhci_plat_hcd xhci_hcd usbcore spi_nor mtd dwc3 ulpi cdns_mhdp_imx udc_core phy_fsl_imx8mq_usb usb_common cdns_mhdp_drmcore imx_dcss bq25890_charger clk_bd718x7 tps6598x typec roles snvs_pwrkey imx_sdma virt_dma [last unloaded: hi846]
[ 272.399541] CPU: 3 PID: 1662 Comm: chatty Tainted: G C 5.17.0-1-librem5 #47
[ 272.399548] Hardware name: Purism Librem 5r4 (DT)
[ 272.399552] pstate: a0400005 (NzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 272.399558] pc : pipeline_pm_power_one+0x104/0x15c [videodev]
[ 272.399612] lr : pipeline_pm_power.part.0+0x60/0xfc [videodev]
[ 272.399664] sp : ffff80000c78bbb0
[ 272.399667] x29: ffff80000c78bbb0 x28: ffff000044181f00 x27: 0000000000000000
[ 272.399678] x26: 0000000000000000 x25: 0000000000000000 x24: ffff000044182728
[ 272.399688] x23: ffff000040067000 x22: 00000000ffffffff x21: 00000000ffffffff
[ 272.399699] x20: ffff00000ebce4d0 x19: 00000000ffffffff x18: 0000000000000000
[ 272.399709] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
[ 272.399719] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[ 272.399729] x11: 0000000000000000 x10: ffff80000833f244 x9 : ffff800000fcb2d4
[ 272.399739] x8 : ffff000008c05208 x7 : 0000000000000000 x6 : 0000000000000000
[ 272.399749] x5 : 000000000000000e x4 : ffff00000990bc88 x3 : 0000000000000003
[ 272.399759] x2 : 0000000000000002 x1 : 0000000000000002 x0 : ffff00000ebce4d0
[ 272.399770] Call trace:
[ 272.399773] pipeline_pm_power_one+0x104/0x15c [videodev]
[ 272.399827] pipeline_pm_power.part.0+0x60/0xfc [videodev]
[ 272.399881] v4l2_pipeline_pm_use+0x5c/0xa0 [videodev]
[ 272.399934] v4l2_pipeline_pm_put+0x20/0x40 [videodev]
[ 272.399987] capture_release+0x58/0x90 [imx_media_common]
[ 272.400008] v4l2_release+0xc8/0x100 [videodev]
[ 272.400060] __fput+0x78/0x234
[ 272.400070] ____fput+0x1c/0x30
[ 272.400075] task_work_run+0x90/0x190
[ 272.400084] do_notify_resume+0x21c/0x980
[ 272.400094] el0_svc+0x6c/0x80
[ 272.400103] el0t_64_sync_handler+0xa4/0x130
[ 272.400110] el0t_64_sync+0x1a4/0x1a8
[ 272.400117] ---[ end trace 0000000000000000 ]---
[ 272.400298] ------------[ cut here ]------------