70f98fe87ab5b332fa6308ae9f05da170d65e9f6
261 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
eabeed5c86 |
Merge remote-tracking branch 'origin/caf/torpor/master' into msm-4.14
* origin/caf/torpor/master: MA Lite 8.1.5 MA Lite 8.1.4a Change-Id: I22f8119fbf8485002d5b694ee2ff313453e25551 Signed-off-by: Puneet Yatnal <puneet@codeaurora.org> |
||
|
|
7e722ce705 |
Merge android-4.14.123 (acd501f) into msm-4.14
* refs/heads/tmp-acd501f: Revert "arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable" Linux 4.14.123 NFS: Fix a double unlock from nfs_match,get_client vfio-ccw: Prevent quiesce function going into an infinite loop drm: Wake up next in drm_read() chain if we are forced to putback the event drm/drv: Hold ref on parent device during drm_device lifetime ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM spi: Fix zero length xfer bug spi: rspi: Fix sequencer reset during initialization spi : spi-topcliff-pch: Fix to handle empty DMA buffers scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices media: saa7146: avoid high stack usage with clang scsi: lpfc: Fix fc4type information for FDMI scsi: lpfc: Fix FDMI manufacturer attribute value media: vimc: zero the media_device on probe media: go7007: avoid clang frame overflow warning with KASAN media: vimc: stream: fix thread state before sleep media: m88ds3103: serialize reset messages in m88ds3103_set_frontend thunderbolt: Fix to check for kmemdup failure hwrng: omap - Set default quality dmaengine: tegra210-adma: use devm_clk_*() helpers batman-adv: allow updating DAT entry timeouts on incoming ARP Replies scsi: qla4xxx: avoid freeing unallocated dma memory usb: core: Add PM runtime calls to usb_hcd_platform_shutdown rcuperf: Fix cleanup path for invalid perf_type strings rcutorture: Fix cleanup path for invalid torture_type strings x86/mce: Fix machine_check_poll() tests for error types tty: ipwireless: fix missing checks for ioremap virtio_console: initialize vtermno value for ports scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload check media: wl128x: prevent two potential buffer overflows media: video-mux: fix null pointer dereferences kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. spi: tegra114: reset controller on probe HID: logitech-hidpp: change low battery level threshold from 31 to 30 percent cxgb3/l2t: Fix undefined behaviour ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put HID: core: move Usage Page concatenation to Main item RDMA/hns: Fix bad endianess of port_pd variable chardev: add additional check for minor range overlap x86/ia32: Fix ia32_restore_sigcontext() AC leak x86/uaccess, signal: Fix AC=1 bloat x86/uaccess, ftrace: Fix ftrace_likely_update() vs. SMAP arm64: cpu_ops: fix a leaked reference by adding missing of_node_put scsi: ufs: Avoid configuring regulator with undefined voltage range scsi: ufs: Fix regulator load and icc-level configuration rtlwifi: fix potential NULL pointer dereference rtc: xgene: fix possible race condition brcmfmac: fix Oops when bringing up interface during USB disconnect brcmfmac: fix race during disconnect when USB completion is in progress brcmfmac: fix WARNING during USB disconnect in case of unempty psq brcmfmac: convert dev_init_lock mutex to completion b43: shut up clang -Wuninitialized variable warning brcmfmac: fix missing checks for kmemdup mwifiex: Fix mem leak in mwifiex_tm_cmd rtlwifi: fix a potential NULL pointer dereference iio: common: ssp_sensors: Initialize calculated_time in ssp_common_process_data iio: hmc5843: fix potential NULL pointer dereferences iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion x86/build: Keep local relocations with ld.lld block: sed-opal: fix IOC_OPAL_ENABLE_DISABLE_MBR cpufreq: kirkwood: fix possible object reference leak cpufreq: pmac32: fix possible object reference leak cpufreq/pasemi: fix possible object reference leak cpufreq: ppc_cbe: fix possible object reference leak s390: cio: fix cio_irb declaration x86/microcode: Fix the ancient deprecated microcode loading method s390: zcrypt: initialize variables before_use clk: rockchip: Make rkpwm a critical clock on rk3288 extcon: arizona: Disable mic detect if running when driver is removed clk: rockchip: Fix video codec clocks on rk3288 PM / core: Propagate dev->power.wakeup_path when no callbacks drm/amdgpu: fix old fence check in amdgpu_fence_emit mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support mmc: sdhci-of-esdhc: add erratum A-009204 support mmc: sdhci-of-esdhc: add erratum eSDHC5 support mmc_spi: add a status check for spi_sync_locked mmc: core: make pwrseq_emmc (partially) support sleepy GPIO controllers scsi: libsas: Do discovery on empty PHY to update PHY info hwmon: (f71805f) Use request_muxed_region for Super-IO accesses hwmon: (pc87427) Use request_muxed_region for Super-IO accesses hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses hwmon: (vt1211) Use request_muxed_region for Super-IO accesses RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure arm64: vdso: Fix clock_getres() for CLOCK_REALTIME i40e: don't allow changes to HW VLAN stripping on active port VLANs i40e: Able to add up to 16 MAC filters on an untrusted VF phy: sun4i-usb: Make sure to disable PHY0 passby for peripheral mode x86/irq/64: Limit IST stack overflow check to #DB stack USB: core: Don't unbind interfaces following device reset failure drm/msm: a5xx: fix possible object reference leak sched/core: Handle overflow in cpu_shares_write_u64 sched/rt: Check integer overflow at usec to nsec conversion sched/core: Check quota and period overflow at usec to nsec conversion cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock random: add a spinlock_t to struct batched_entropy powerpc/64: Fix booting large kernels with STRICT_KERNEL_RWX powerpc/numa: improve control of topology updates media: pvrusb2: Prevent a buffer overflow media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() media: stm32-dcmi: fix crash when subdev do not expose any formats audit: fix a memory leak bug media: ov2659: make S_FMT succeed even if requested format doesn't match media: au0828: stop video streaming only when last user stops media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper media: coda: clear error return value before picture run dmaengine: at_xdmac: remove BUG_ON macro in tasklet clk: rockchip: undo several noc and special clocks as critical on rk3288 pinctrl: samsung: fix leaked of_node references pinctrl: pistachio: fix leaked of_node references HID: logitech-hidpp: use RAP instead of FAP to get the protocol version mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC versions x86/mm: Remove in_nmi() warning from 64-bit implementation of vmalloc_fault() smpboot: Place the __percpu annotation correctly x86/build: Move _etext to actual end of .text vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev vfio-ccw: Do not call flush_workqueue while holding the spinlock bcache: avoid clang -Wunintialized warning bcache: add failure check to run_cache_set() for journal replay bcache: fix failure in journal relplay bcache: return error immediately in bch_journal_replay() crypto: sun4i-ss - Fix invalid calculation of hash end net: cw1200: fix a NULL pointer dereference mwifiex: prevent an array overflow ASoC: fsl_sai: Update is_slave_mode with correct value libbpf: fix samples/bpf build failure due to undefined UINT32_MAX mac80211/cfg80211: update bss channel on channel switch dmaengine: pl330: _stop: clear interrupt status w1: fix the resume command API scsi: qedi: Abort ep termination if offload not scheduled rtc: 88pm860x: prevent use-after-free on device remove iwlwifi: pcie: don't crash on invalid RX interrupt btrfs: Don't panic when we can't find a root key btrfs: fix panic during relocation after ENOSPC before writeback happens Btrfs: fix data bytes_may_use underflow with fallocate due to failed quota reserve scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in tcm_qla2xxx_close_session() scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() scsi: qla2xxx: Fix a qla24xx_enable_msix() error path sched/cpufreq: Fix kobject memleak arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable ARM: vdso: Remove dependency with the arch_timer driver internals ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() brcm80211: potential NULL dereference in brcmf_cfg80211_vndr_cmds_dcmd_handler() spi: pxa2xx: fix SCR (divisor) calculation ASoC: imx: fix fiq dependencies powerpc/boot: Fix missing check of lseek() return value powerpc/perf: Return accordingly on invalid chip-id in ASoC: hdmi-codec: unlock the device on startup errors pinctrl: zte: fix leaked of_node references net: ena: gcc 8: fix compilation warning dmaengine: tegra210-dma: free dma controller in remove() tools/bpf: fix perf build error with uClibc (seen on ARC) mmc: core: Verify SD bus width gfs2: Fix occasional glock use-after-free IB/hfi1: Fix WQ_MEM_RECLAIM warning NFS: make nfs_match_client killable cxgb4: Fix error path in cxgb4_init_module gfs2: Fix lru_count going negative Revert "btrfs: Honour FITRIM range constraints during free space trim" net: erspan: fix use-after-free at76c50x-usb: Don't register led_trigger if usb_register_driver failed batman-adv: mcast: fix multicast tt/tvlv worker locking bpf: devmap: fix use-after-free Read in __dev_map_entry_free ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit media: vivid: use vfree() instead of kfree() for dev->bitmap_cap media: serial_ir: Fix use-after-free in serial_ir_init_module media: cpia2: Fix use-after-free in cpia2_exit fbdev: fix WARNING in __alloc_pages_nodemask bug btrfs: honor path->skip_locking in backref code brcmfmac: add subtype check for event handling in data path brcmfmac: assure SSID length from firmware is limited hugetlb: use same fault hash key for shared and private mappings fbdev: fix divide error in fb_var_to_videomode btrfs: sysfs: don't leak memory when failing add fsid btrfs: sysfs: Fix error path kobject memory leak Btrfs: fix race between ranged fsync and writeback of adjacent ranges Btrfs: avoid fallback to transaction commit during fsync of files with holes Btrfs: do not abort transaction at btrfs_update_root() after failure to COW path gfs2: Fix sign extension bug in gfs2_update_stats arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable libnvdimm/namespace: Fix label tracking error libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead kvm: svm/avic: fix off-by-one in checking host APIC ID mmc: sdhci-iproc: Set NO_HISPD bit to fix HS50 data hold time problem mmc: sdhci-iproc: cygnus: Set NO_HISPD bit to fix HS50 data hold time problem crypto: vmx - CTR: always increment IV as quadword Revert "scsi: sd: Keep disk read-only when re-reading partition" sbitmap: fix improper use of smp_mb__before_atomic() bio: fix improper use of smp_mb__before_atomic() KVM: x86: fix return value for reserved EFER f2fs: Fix use of number of devices ext4: do not delete unlinked inode from orphan list on failed truncate x86: Hide the int3_emulate_call/jmp functions from UML x86: Hide the int3_emulate_call/jmp functions from UML Linux 4.14.122 fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough btrfs: Honour FITRIM range constraints during free space trim bpf, lru: avoid messing with eviction heuristics upon syscall lookup bpf: add map_lookup_elem_sys_only for lookups from syscall side driver core: Postpone DMA tear-down until after devres release for probe failure md/raid: raid5 preserve the writeback action after the parity check Revert "Don't jump to compute_result state from check_result state" perf bench numa: Add define for RUSAGE_THREAD if not present ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour x86/mm/mem_encrypt: Disable all instrumentation for early SME setup sched/cpufreq: Fix kobject memleak iwlwifi: mvm: check for length correctness in iwl_mvm_create_skb() power: supply: sysfs: prevent endless uevent loop with CONFIG_POWER_SUPPLY_DEBUG KVM: arm/arm64: Ensure vcpu target is unset on reset failure mac80211: Fix kernel panic due to use of txq after free apparmorfs: fix use-after-free on symlink traversal securityfs: fix use-after-free on symlink traversal power: supply: cpcap-battery: Fix division by zero xfrm4: Fix uninitialized memory read in _decode_session4 esp4: add length check for UDP encapsulation vti4: ipip tunnel deregistration fixes. xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink dm delay: fix a crash when invalid device is specified dm zoned: Fix zone report handling dm cache metadata: Fix loading discard bitset PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum PCI: Factor out pcie_retrain_link() function PCI: Mark Atheros AR9462 to avoid bus reset PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display fbdev: sm712fb: fix support for 1024x768-16 mode fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping VRAM fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75 fbdev: sm712fb: fix brightness control on reboot, don't set SR30 objtool: Allow AR to be overridden with HOSTAR perf intel-pt: Fix sample timestamp wrt non-taken branches perf intel-pt: Fix improved sample timestamp perf intel-pt: Fix instructions sampling rate memory: tegra: Fix integer overflow on tick value calculation tracing: Fix partial reading of trace event's id file ftrace/x86_64: Emulate call function while updating in breakpoint handler x86_64: Allow breakpoints to emulate call instructions x86_64: Add gap to int3 to allow for call emulation ceph: flush dirty inodes before proceeding with remount iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 fuse: honor RLIMIT_FSIZE in fuse_file_fallocate fuse: fix writepages on 32bit clk: rockchip: fix wrong clock definitions for rk3328 clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider clk: hi3660: Mark clk_gate_ufs_subsys as critical PNFS fallback to MDS if no deviceid found NFS4: Fix v4.0 client state corruption when mount Revert "cifs: fix memory leak in SMB2_read" media: ov6650: Fix sensor possibly not detected on probe cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() of: fix clang -Wunsequenced for be32_to_cpu() p54: drop device reference count if fails to enable device intel_th: msu: Fix single mode with IOMMU md: add mddev->pers to avoid potential NULL pointer dereference stm class: Fix channel free in stm output free path parisc: Rename LEVEL to PA_ASM_LEVEL to avoid name clash with DRBD code parisc: Use PA_ASM_LEVEL in boot code parisc: Skip registering LED when running in QEMU parisc: Export running_on_qemu symbol for modules net: Always descend into dsa/ vsock/virtio: Initialize core virtio vsock before registering the driver tipc: fix modprobe tipc failed after switch order of device registration vsock/virtio: free packets during the socket release tipc: switch order of device registration to fix a crash ppp: deflate: Fix possible crash in deflate_init net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions net: test nouarg before dereferencing zerocopy pointers net/mlx4_core: Change the error print to info print net: avoid weird emergency message f2fs: link f2fs quota ops for sysfile Enable CONFIG_ION_SYSTEM_HEAP BACKPORT: gcov: clang support UPSTREAM: gcov: docs: add a note on GCC vs Clang differences UPSTREAM: gcov: clang: move common GCC code into gcc_base.c UPSTREAM: module: add stubs for within_module functions UPSTREAM: gcov: remove CONFIG_GCOV_FORMAT_AUTODETECT BACKPORT: kbuild: gcov: enable -fno-tree-loop-im if supported fs: sdcardfs: Add missing option to show_options Conflicts: Makefile arch/arm64/include/asm/pgtable.h drivers/scsi/ufs/ufshcd.c Change-Id: I0c79879b0989383949ff5a292a9923b668e4514f Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org> |
||
|
|
50892cb292 |
iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion
[ Upstream commit df1d80aee963480c5c2938c64ec0ac3e4a0df2e0 ] For devices from the SigmaDelta family we need to keep CS low when doing a conversion, since the device will use the MISO line as a interrupt to indicate that the conversion is complete. This is why the driver locks the SPI bus and when the SPI bus is locked keeps as long as a conversion is going on. The current implementation gets one small detail wrong though. CS is only de-asserted after the SPI bus is unlocked. This means it is possible for a different SPI device on the same bus to send a message which would be wrongfully be addressed to the SigmaDelta device as well. Make sure that the last SPI transfer that is done while holding the SPI bus lock de-asserts the CS signal. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Alexandru Ardelean <Alexandru.Ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Sasha Levin <sashal@kernel.org> |
||
|
|
07d9065fbe |
Merge android-4.14-p.79 (f9cf23e) into msm-4.14
* refs/heads/tmp-f9cf23e: Revert "net: qualcomm: rmnet: Skip processing loopback packets" Linux 4.14.79 net/mlx5: Fix build break when CONFIG_SMP=n net/sched: cls_api: add missing validation of netlink attributes net: bcmgenet: Poll internal PHY for GENETv5 net: ipmr: fix unresolved entry dumps rtnetlink: Disallow FDB configuration for non-Ethernet device net/mlx5e: fix csum adjustments caused by RXFCS net: fix pskb_trim_rcsum_slow() with odd trim offset net: drop skb on failure in ip_check_defrag() net: sched: Fix for duplicate class dump net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type openvswitch: Fix push/pop ethernet validation ip6_tunnel: Fix encapsulation layout bonding: fix length of actor system ethtool: fix a privilege escalation bug virtio_net: avoid using netif_tx_disable() for serializing tx routine vhost: Fix Spectre V1 vulnerability udp6: fix encap return code for resubmitting sctp: fix race on sctp_id2asoc r8169: fix NAPI handling under high load net: udp: fix handling of CHECKSUM_COMPLETE packets net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules net: socket: fix a missing-check bug net: sched: gred: pass the right attribute to gred_change_table_def() net/ipv6: Fix index counter for unicast addresses in in6_dump_addrs net: fec: don't dump RX FIFO register when not available llc: set SOCK_RCU_FREE in llc_sap_add_socket() ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are called ipv6: mcast: fix a use-after-free in inet6_mc_check net: bridge: remove ipv6 zero address check in mcast queries bridge: do not add port to router list when receives query with source 0.0.0.0 drm/i915/gvt: fix memory leak of a cmd_entry struct on error exit path perf tools: Disable parallelism for 'make clean' Revert "netfilter: ipv6: nf_defrag: drop skb dst before queueing" ALSA: usx2y: Fix invalid stream URBs media: uvcvideo: Fix driver reference counting ARM: dts: r8a7790: Correct critical CPU temperature kvm: x86: fix WARN due to uninitialized guest FPU state mtd: spi-nor: Add support for is25wp series chips sch_netem: restore skb->dev after dequeuing from the rbtree fs/fat/fatent.c: add cond_resched() to fat_count_free_clusters() selftests: rtnetlink.sh explicitly requires bash. net: ena: fix NULL dereference due to untimely napi initialization net: ena: fix warning in rmmod caused by double iounmap rxrpc: Fix connection-level abort handling rxrpc: Only take the rwind and mtu values from latest ACK rxrpc: Don't check RXRPC_CALL_TX_LAST after calling rxrpc_rotate_tx_window() perf python: Use -Wno-redundant-decls to build with PYTHON=python3 ARM: dts: imx53-qsb: disable 1.2GHz OPP compiler.h: Allow arch-specific asm/compiler.h perf tests: Fix indexing when invoking subtests libertas: call into generic suspend code before turning off power kconfig: fix the rule of mainmenu_stmt symbol net: stmmac: mark PM functions as __maybe_unused x86/paravirt: Fix some warning messages net: phy: phylink: Don't release NULL GPIO btrfs: quota: Set rescan progress to (u64)-1 if we hit last leaf scsi: sd: Remember that READ CAPACITY(16) succeeded scsi: ibmvfc: Avoid unnecessary port relogin selftests/powerpc: Add ptrace hw breakpoint test iio: buffer: fix the function signature to match implementation enic: do not overwrite error code lan78xx: Don't reset the interface on open MIPS: Workaround GCC __builtin_unreachable reordering bug mmc: dw_mmc-rockchip: correct property names in debug IB/usnic: Update with bug fixes from core code xen-netfront: Fix mismatched rtnl_unlock xen-netfront: Update features after registering netdev tpm: tpm_crb: relinquish locality on error path. bpf: sockmap, map_release does not hold refcnt for pinned maps tpm: move the delay_msec increment after sleep in tpm_transmit() sparc64: Fix regression in pmdp_invalidate(). KVM: x86: Update the exit_qualification access bits while walking an address test_bpf: Fix testing with CONFIG_BPF_JIT_ALWAYS_ON=y on other arches cifs: Use ULL suffix for 64-bit constant l2tp: remove configurable payload offset ARM: tegra: Fix ULPI regression on Tegra20 IB/mlx5: Avoid passing an invalid QP type to firmware kbuild: set no-integrated-as before incl. arch Makefile scsi: qla2xxx: Avoid double completion of abort command net/mlx5e: Refine ets validation function net: phy: Add general dummy stubs for MMD register access net: phy: realtek: Use the dummy stubs for MMD register access for rtl8211b dm integrity: fail early if required HMAC key is not available powerpc/pseries: Add empty update_numa_cpu_lookup_table() for NUMA=n net/mlx5: Fix mlx5_get_vector_affinity function s390/qeth: fix error handling in adapter command callbacks IB/rxe: put the pool on allocation failure IB/ipoib: Fix lockdep issue found on ipoib_ib_dev_heavy_flush scsi: aacraid: address UBSAN warning regression usbip: vhci_hcd: update 'status' file header and format tools/testing/nvdimm: unit test clear-error commands iwlwifi: fix the ALIVE notification layout iwlwifi: dbg: allow wrt collection before ALIVE iwlwifi: mvm: check for short GI only for OFDM ocfs2: fix crash in ocfs2_duplicate_clusters_by_page() yam: fix a missing-check bug net: cxgb3_main: fix a missing-check bug be2net: don't flip hw_features when VXLANs are added/deleted locking/ww_mutex: Fix runtime warning in the WW mutex selftest net: qualcomm: rmnet: Skip processing loopback packets declance: Fix continuation with the adapter identification message net: fec: fix rare tx timeout perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX perf/ring_buffer: Prevent concurent ring buffer access perf/core: Fix perf_pmu_unregister() locking cfg80211: fix use-after-free in reg_process_hint() smsc95xx: Check for Wake-on-LAN modes smsc75xx: Check for Wake-on-LAN modes r8152: Check for supported Wake-on-LAN Modes sr9800: Check for supported Wake-on-LAN modes lan78xx: Check for supported Wake-on-LAN modes ax88179_178a: Check for supported Wake-on-LAN modes asix: Check for supported Wake-on-LAN modes nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt qed: Avoid constant logical operation warning in qed_vf_pf_acquire qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv qed: Avoid implicit enum conversion in qed_set_tunn_cls_info pxa168fb: prepare the clock Bluetooth: SMP: fix crash in unpairing mac80211_hwsim: do not omit multicast announce of first added radio nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT soc: fsl: qe: Fix copy/paste bug in ucc_get_tdm_sync_shift() soc: fsl: qbman: qman: avoid allocating from non existing gen_pool net: macb: Clean 64b dma addresses if they are not detected ARM: dts: BCM63xx: Fix incorrect interrupt specifiers arm64: hugetlb: Fix handling of young ptes netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev xfrm: validate template mode ARM: 8799/1: mm: fix pci_ioremap_io() offset check xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. mac80211: fix TX status reporting for ieee80211s mac80211: TDLS: fix skb queue/priority assignment cfg80211: Address some corner cases in scan result channel updating mac80211: fix pending queue hang due to TX_DROP cfg80211: reg: Init wiphy_idx in regulatory_hint_core() mac80211: Always report TX status xfrm: reset crypto_done when iterating over multiple input xfrms xfrm: reset transport header back to network header after all input transforms ahave been applied xfrm6: call kfree_skb when skb is toobig xfrm: Validate address prefix lengths in the xfrm selector. Conflicts: arch/Kconfig Change-Id: I93e1459c0e7511f2d30bd01fc3f5bf81f23a7bf6 Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org> |
||
|
|
672fdbd596 |
iio: buffer: fix the function signature to match implementation
[ Upstream commit 92397a6c38d139d50fabbe9e2dc09b61d53b2377 ]
linux/iio/buffer-dma.h was not updated to when length was changed to
unsigned int.
Fixes: c043ec1ca5ba ("iio:buffer: make length types match kfifo types")
Signed-off-by: Phil Reid <preid@electromag.com.au>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
||
|
|
10289c4840 |
Merge remote-tracking branch 'remotes/origin/tmp-eca84e5' into msm-4.14
* remotes/origin/tmp-eca84e5: Linux 4.14.48 powerpc/mm/slice: Fix hugepage allocation at hint address on 8xx powerpc/mm/slice: Enhance for supporting PPC32 powerpc/mm/slice: create header files dedicated to slices powerpc/mm/slice: Remove intermediate bitmap copy drm/i915: Disable LVDS on Radiant P845 drm/i915/lvds: Move acpi lid notification registration to registration phase drm/psr: Fix missed entry in PSR setup time table. intel_th: Use correct device when freeing buffers Revert "rt2800: use TXOP_BACKOFF for probe frames" mm/huge_memory.c: __split_huge_page() use atomic ClearPageDirty() IB/core: Fix error code for invalid GID entry hwtracing: stm: fix build error on some arches stm class: Use vmalloc for the master map scsi: scsi_transport_srp: Fix shost to rport translation MIPS: prctl: Disallow FRE without FR with PR_SET_FP_MODE requests MIPS: ptrace: Fix PTRACE_PEEKUSR requests for 64-bit FGRs MIPS: lantiq: gphy: Drop reboot/remove reset asserts iio: adc: select buffer for at91-sama5d2_adc iio:kfifo_buf: check for uint overflow iio:buffer: make length types match kfifo types iio: ad7793: implement IIO_CHAN_INFO_SAMP_FREQ tcp: avoid integer overflows in tcp_rcv_space_adjust() kbuild: clang: disable unused variable warnings only when constant platform/chrome: cros_ec_lpc: remove redundant pointer request ASoC: Intel: sst: remove redundant variable dma_dev_name rtlwifi: rtl8192cu: Remove variable self-assignment in rf.c drm/amd/powerplay: Fix enum mismatch dma-buf: remove redundant initialization of sg_table drm/i915: Always sanity check engine state upon idling kbuild: clang: remove crufty HOSTCFLAGS cfg80211: further limit wiphy names to 64 bytes selinux: KASAN: slab-out-of-bounds in xattr_getsecurity tracing: Make the snapshot trigger work with instances tracing: Fix crash when freeing instances with event triggers Input: elan_i2c_smbus - fix corrupted stack Input: synaptics - add Lenovo 80 series ids to SMBus Input: synaptics - add Intertouch support on X1 Carbon 6th and X280 Input: synaptics - Lenovo Thinkpad X1 Carbon G5 (2017) with Elantech trackpoints should use RMI Input: synaptics - Lenovo Carbon X1 Gen5 (2017) devices should use RMI xfs: detect agfl count corruption and reset agfl xfs: convert XFS_AGFL_SIZE to a helper function PCI: hv: Fix 2 hang issues in hv_compose_msi_msg() Revert "pinctrl: msm: Use dynamic GPIO numbering" x86/MCE/AMD: Cache SMCA MISC block addresses x86/mce/AMD: Carve out SMCA get_block_address() code objtool: Fix "noreturn" detection for recursive sibling calls objtool: Detect RIP-relative switch table references, part 2 objtool: Detect RIP-relative switch table references objtool: Support GCC 8 switch tables objtool: Support GCC 8's cold subfunctions mm: fix the NULL mapping case in __isolate_lru_page() fix io_destroy()/aio_complete() race ANDROID: add extra free kbytes tunable Revert "ANDROID: net: xfrm: check dir value of xfrm_userpolicy_id" ANDROID: x86_64_cuttlefish_defconfig: Enable F2FS ANDROID: Update x86_64_cuttlefish_defconfig Revert "pinctrl: msm: Use dynamic GPIO numbering" FROMLIST: f2fs: early updates queued for v4.18-rc1 Conflicts: Makefile Change-Id: Icf26ca353db37067d2502b3cb84884de5f3a1d1a Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org> |
||
|
|
30ab9366f7 |
iio:buffer: make length types match kfifo types
commit c043ec1ca5baae63726aae32abbe003192bc6eec upstream. Currently, we use int for buffer length and bytes_per_datum. However, kfifo uses unsigned int for length and size_t for element size. We need to make sure these matches or we will have bugs related to overflow (in the range between INT_MAX and UINT_MAX for length, for example). In addition, set_bytes_per_datum uses size_t while bytes_per_datum is an int, which would cause bugs for large values of bytes_per_datum. Change buffer length to use unsigned int and bytes_per_datum to use size_t. Signed-off-by: Martin Kelly <mkelly@xevo.com> Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
|
|
a71da78c6d |
MA Lite 8.1.4a
Module: * 8.1.1-simple-test1a Supported Kernel Versions: * 3.18 * 4.4 * 4.9 Supported TDK-InvenSense Sensors: * IAM20680 |
||
|
|
a35d45d785 |
Merge remote-tracking branch 'remotes/origin/tmp-dad5c14' into msm-4.14
* remotes/origin/tmp-dad5c14:
Linux 4.14.9
linux/compiler.h: Split into compiler.h and compiler_types.h
selftests/bpf: add tests for recent bugfixes
bpf: fix integer overflows
bpf: don't prune branches when a scalar is replaced with a pointer
bpf: force strict alignment checks for stack pointers
bpf: fix missing error return in check_stack_boundary()
bpf: fix 32-bit ALU op verification
bpf: fix incorrect tracking of register size truncation
bpf: fix incorrect sign extension in check_alu_op()
bpf/verifier: fix bounds calculation on BPF_RSH
bpf, sparc: fix usage of wrong reg for load_skb_regs after call
bpf, ppc64: do not reload skb pointers in non-skb context
bpf, s390x: do not reload skb pointers in non-skb context
bpf: fix corruption on concurrent perf_event_output calls
bpf: fix branch pruning logic
mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y
platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between state changes
thermal/drivers/hisi: Fix multiple alarm interrupts firing
thermal/drivers/hisi: Simplify the temperature/step computation
thermal/drivers/hisi: Fix kernel panic on alarm interrupt
thermal/drivers/hisi: Fix missing interrupt enablement
IB/opa_vnic: Properly return the total MACs in UC MAC list
IB/opa_vnic: Properly clear Mac Table Digest
drm/vc4: Avoid using vrefresh==0 mode in DSI htotal math.
cpuidle: fix broadcast control when broadcast can not be entered
rtc: set the alarm to the next expiring timer
tcp: fix under-evaluated ssthresh in TCP Vegas
clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision
staging: greybus: light: Release memory obtained by kasprintf
RDMA/hns: Avoid NULL pointer exception
net: ipv6: send NS for DAD when link operationally up
ibmvnic: Set state UP
fm10k: ensure we process SM mbx when processing VF mbx
ARM: exynos_defconfig: Enable UAS support for Odroid HC1 board
vfio/pci: Virtualize Maximum Payload Size
i40e: fix client notify of VF reset
scsi: lpfc: Fix warning messages when NVME_TARGET_FC not defined
scsi: lpfc: PLOGI failures during NPIV testing
scsi: lpfc: Fix secure firmware updates
fm10k: fix mis-ordered parameters in declaration for .ndo_set_vf_bw
ASoC: codecs: msm8916-wcd-analog: fix module autoload
sctp: silence warns on sctp_stream_init allocations
powerpc/watchdog: Do not trigger SMP crash from touch_nmi_watchdog
powerpc/xmon: Avoid tripping SMP hardlockup watchdog
ASoC: img-parallel-out: Add pm_runtime_get/put to set_fmt callback
ASoC: codecs: msm8916-wcd-analog: fix micbias level
tracing: Exclude 'generic fields' from histograms
PCI/AER: Report non-fatal errors only to the affected endpoint
i40e/i40evf: spread CPU affinity hints across online CPUs only
Bluetooth: hci_bcm: Fix setting of irq trigger type
Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev
leds: pca955x: Don't invert requested value in pca955x_gpio_set_value()
ipv6: grab rt->rt6i_ref before allocating pcpu rt
ip_gre: check packet length and mtu correctly in erspan tx
md: always set THREAD_WAKEUP and wake up wqueue if thread existed
block,bfq: Disable writeback throttling
IB/rxe: check for allocation failure on elem
ixgbe: fix use of uninitialized padding
iio: st_sensors: add register mask for status register
i40e: use the safe hash table iterator when deleting mac filters
igb: check memory allocation failure
PM / OPP: Move error message to debug level
PCI: Create SR-IOV virtfn/physfn links before attaching driver
scsi: mpt3sas: Fix IO error occurs on pulling out a drive from RAID1 volume created on two SATA drive
scsi: cxgb4i: fix Tx skb leak
PCI: Avoid bus reset if bridge itself is broken
net: phy: at803x: Change error to EINVAL for invalid MAC
kvm, mm: account kvm related kmem slabs to kmemcg
rtc: pl031: make interrupt optional
crypto: lrw - Fix an error handling path in 'create()'
crypto: crypto4xx - increase context and scatter ring buffer elements
clk: sunxi-ng: sun5i: Fix bit offset of audio PLL post-divider
clk: sunxi-ng: nm: Check if requested rate is supported by fractional clock
drm: Add retries for lspcon mode detection
backlight: pwm_bl: Fix overflow condition
optee: fix invalid of_node_put() in optee_driver_init()
x86/cpufeatures: Make CPU bugs sticky
x86/paravirt: Provide a way to check for hypervisors
x86/paravirt: Dont patch flush_tlb_single
x86/entry/64: Make cpu_entry_area.tss read-only
x86/entry: Clean up the SYSENTER_stack code
x86/entry/64: Remove the SYSENTER stack canary
x86/entry/64: Move the IST stacks into struct cpu_entry_area
x86/entry/64: Create a per-CPU SYSCALL entry trampoline
x86/entry/64: Return to userspace from the trampoline stack
x86/entry/64: Use a per-CPU trampoline stack for IDT entries
x86/espfix/64: Stop assuming that pt_regs is on the entry stack
x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0
x86/entry: Remap the TSS into the CPU entry area
x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct
x86/dumpstack: Handle stack overflow on all stacks
x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss
x86/kasan/64: Teach KASAN about the cpu_entry_area
x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct cpu_entry_area
x86/entry/gdt: Put per-CPU GDT remaps in ascending order
x86/dumpstack: Add get_stack_info() support for the SYSENTER stack
x86/entry/64: Allocate and enable the SYSENTER stack
x86/irq/64: Print the offending IP in the stack overflow warning
x86/irq: Remove an old outdated comment about context tracking races
x86/unwinder: Handle stack overflows more gracefully
x86/unwinder/orc: Dont bail on stack overflow
x86/entry/64/paravirt: Use paravirt-safe macro to access eflags
x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow
locking/barriers: Convert users of lockless_dereference() to READ_ONCE()
locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE()
bpf: fix build issues on um due to mising bpf_perf_event.h
perf/x86: Enable free running PEBS for REGS_USER/INTR
x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD
x86/cpufeature: Add User-Mode Instruction Prevention definitions
drivers/misc/intel/pti: Rename the header file to free up the namespace
x86/virt: Add enum for hypervisors to replace x86_hyper
x86/virt, x86/platform: Merge 'struct x86_hyper' into 'struct x86_platform' and 'struct x86_init'
ACPI / APEI: Replace ioremap_page_range() with fixmap
selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as well
selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area()
x86/cpufeatures: Fix various details in the feature definitions
x86/cpufeatures: Re-tabulate the X86_FEATURE definitions
x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE
bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to linux/bitops.h")
x86/cpuid: Replace set/clear_bit32()
x86/entry/64: Shorten TEST instructions
x86/traps: Use a new on_thread_stack() helper to clean up an assertion
x86/entry/64: Remove thread_struct::sp0
x86/entry/32: Fix cpu_current_top_of_stack initialization at boot
x86/entry/64: Remove all remaining direct thread_struct::sp0 reads
x86/entry/64: Stop initializing TSS.sp0 at boot
x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context()
x86/entry: Add task_top_of_stack() to find the top of a task's stack
x86/entry/64: Pass SP0 directly to load_sp0()
x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of native_load_sp0()
x86/entry/64: De-Xen-ify our NMI code
xen, x86/entry/64: Add xen NMI trap entry
x86/entry/64: Remove the RESTORE_..._REGS infrastructure
x86/entry/64: Use POP instead of MOV to restore regs on NMI return
x86/entry/64: Merge the fast and slow SYSRET paths
x86/entry/64: Use pop instead of movq in syscall_return_via_sysret
x86/entry/64: Shrink paranoid_exit_restore and make labels local
x86/entry/64: Simplify reg restore code in the standard IRET paths
x86/entry/64: Move SWAPGS into the common IRET-to-usermode path
x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths
x86/entry/64: Remove the restore_c_regs_and_iret label
ptrace,x86: Make user_64bit_mode() available to 32-bit builds
x86/boot: Relocate definition of the initial state of CR0
x86/mm: Relocate page fault error codes to traps.h
x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features
x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 'nr_pages'
x86/build: Beautify build log of syscall headers
x86/asm: Don't use the confusing '.ifeq' directive
ACPI / APEI: remove the unused dead-code for SEA/NMI notification type
x86/xen: Drop 5-level paging support code from the XEN_PV code
x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and CONFIG_XEN_PVH=y
x86/kasan: Use the same shadow offset for 4- and 5-level paging
mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
x86/cpuid: Prevent out of bound access in do_clear_cpu_cap()
objtool: Print top level commands on incorrect usage
x86/platform/UV: Convert timers to use timer_setup()
x86/fpu: Remove the explicit clearing of XSAVE dependent features
x86/fpu: Make XSAVE check the base CPUID features before enabling
x86/fpu: Parse clearcpuid= as early XSAVE argument
x86/cpuid: Add generic table for CPUID dependencies
bitops: Add clear/set_bit32() to linux/bitops.h
x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit
x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*'
x86/fpu/debug: Remove unused 'x86_fpu_state' and 'x86_fpu_deactivate_state' tracepoints
x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig
ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq()
x86/head: Add unwind hint annotations
x86/xen: Add unwind hint annotations
x86/xen: Fix xen head ELF annotations
x86/boot: Annotate verify_cpu() as a callable function
x86/head: Fix head ELF function annotations
x86/head: Remove unused 'bad_address' code
x86/head: Remove confusing comment
objtool: Don't report end of section error after an empty unwind hint
x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates
Change-Id: I8d4690608f817c55a142827e64ff04f7d66a70d1
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
|
||
|
|
d1f13dcad5 |
iio: st_sensors: add register mask for status register
[ Upstream commit e72a060151e5bb673af24993665e270fc4f674a7 ]
Introduce register mask for data-ready status register since
pressure sensors (e.g. LPS22HB) export just two channels
(BIT(0) and BIT(1)) and BIT(2) is marked reserved while in
st_sensors_new_samples_available() value read from status register
is masked using 0x7.
Moreover do not mask status register using active_scan_mask since
now status value is properly masked and if the result is not zero the
interrupt has to be consumed by the driver. This fix an issue on LPS25H
and LPS331AP where channel definition is swapped respect to status
register.
Furthermore that change allows to properly support new devices
(e.g LIS2DW12) that report just ZYXDA (data-ready) field in status register
to figure out if the interrupt has been generated by the device.
Fixes:
|
||
|
|
b716d1c640 |
Merge remote-tracking branch 'remotes/origin/tmp-3afae84' into msm-4.14
* remotes/origin/tmp-3afae84: Linux 4.14.7 dvb_frontend: don't use-after-free the frontend struct media: dvb-core: always call invoke_release() in fe_free() x86/intel_rdt: Fix potential deadlock during resctrl unmount RDMA/cxgb4: Annotate r2 and stag as __be32 md: free unused memory after bitmap resize dm raid: fix panic when attempting to force a raid to sync audit: ensure that 'audit=1' actually enables audit for PID 1 audit: Allow auditd to set pid to 0 to end auditing nvmet-rdma: update queue list during ib_device removal blk-mq: Avoid that request queue removal can trigger list corruption ide: ide-atapi: fix compile error with defining macro DEBUG ipvlan: fix ipv6 outbound device powerpc/powernv/idle: Round up latency and residency values kbuild: do not call cc-option before KBUILD_CFLAGS initialization KVM: arm/arm64: vgic-its: Preserve the revious read from the pending table fix kcm_clone() fcntl: don't cap l_start and l_end values for F_GETLK64 in compat syscall usb: gadget: ffs: Forbid usb_ep_alloc_request from sleeping ipmi: Stop timers before cleaning up the module sctp: use right member as the param of list_for_each_entry cls_bpf: don't decrement net's refcount when offload fails net: openvswitch: datapath: fix data type in queue_gso_packets net: accept UFO datagrams from tuntap and packet tun: fix rcu_read_lock imbalance in tun_build_skb net: ipv6: Fixup device for anycast routes during copy tun: free skb in early errors tcp: when scheduling TLP, time of RTO should account for current ACK tap: free skb if flags error net: sched: cbq: create block for q->link.block tcp: use current time in tcp_rcv_space_adjust() tipc: call tipc_rcv() only if bearer is up in tipc_udp_recv() tcp: use IPCB instead of TCP_SKB_CB in inet_exact_dif_match() s390/qeth: fix GSO throughput regression s390/qeth: fix thinko in IPv4 multicast address tracking s390/qeth: build max size GSO skbs on L2 devices tcp/dccp: block bh before arming time_wait timer stmmac: reset last TSO segment size after device open net: remove hlist_nulls_add_tail_rcu() usbnet: fix alignment for frames with no ethernet header tcp: remove buggy call to tcp_v6_restore_cb() net/packet: fix a race in packet_bind() and packet_notifier() packet: fix crash in fanout_demux_rollover() tcp: add tcp_v4_fill_cb()/tcp_v4_restore_cb() sit: update frag_off info rds: Fix NULL pointer dereference in __rds_rdma_map vhost: fix skb leak in handle_rx() tipc: fix memory leak in tipc_accept_from_sock() s390/qeth: fix early exit from error path net: realtek: r8169: implement set_link_ksettings() net: thunderx: Fix TCP/UDP checksum offload for IPv4 pkts net: thunderx: Fix TCP/UDP checksum offload for IPv6 pkts net: qmi_wwan: add Quectel BG96 2c7c:0296 Linux 4.14.6 afs: Connect up the CB.ProbeUuid afs: Fix total-length calculation for multiple-page send IB/mlx5: Assign send CQ and recv CQ of UMR QP IB/mlx4: Increase maximal message size under UD QP bnxt_re: changing the ip address shouldn't affect new connections f2fs: fix to clear FI_NO_PREALLOC xfrm: Copy policy family in clone_policy tls: Use kzalloc for aead_request allocation jump_label: Invoke jump_label_test() via early_initcall() atm: horizon: Fix irq release error kbuild: rpm-pkg: fix jobserver unavailable warning mailbox: mailbox-test: don't rely on rx_buffer content to signal data ready clk: hi3660: fix incorrect uart3 clock freqency clk: uniphier: fix DAPLL2 clock rate of Pro5 clk: qcom: common: fix legacy board-clock registration clk: sunxi-ng: a83t: Fix i2c buses bits clk: stm32h7: fix test of clock config bpf: fix lockdep splat geneve: fix fill_info when link down fcntl: don't leak fd reference when fixup_compat_flock fails sctp: use the right sk after waking up from wait_buf sleep sctp: do not free asoc when it is already dead in sctp_sendmsg slub: fix sysfs duplicate filename creation when slub_debug=O zsmalloc: calling zs_map_object() from irq is a bug sparc64/mm: set fields in deferred pages block: wake up all tasks blocked in get_request() dt-bindings: usb: fix reg-property port-number range xfs: fix forgotten rcu read unlock when skipping inode reclaim nfp: fix flower offload metadata flag usage nfp: inherit the max_mtu from the PF netdev sunrpc: Fix rpc_task_begin trace point NFS: Fix a typo in nfs_rename() dynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead of 0 lib/genalloc.c: make the avail variable an atomic_long_t pipe: match pipe_max_size data type with procfs drivers/rapidio/devices/rio_mport_cdev.c: fix resource leak in error handling path in 'rio_dma_transfer()' rsi: fix memory leak on buf and usb_reg_buf route: update fnhe_expires for redirect when the fnhe exists route: also update fnhe_genid when updating a route cache gre6: use log_ecn_error module parameter in ip6_tnl_rcv() mac80211_hwsim: Fix memory leak in hwsim_new_radio_nl() x86/mpx/selftests: Fix up weird arrays apparmor: fix leak of null profile name if profile allocation fails powerpc/perf: Fix pmu_count to count only nest imc pmus coccinelle: fix parallel build with CHECK=scripts/coccicheck kbuild: pkg: use --transform option to prefix paths in tar net/smc: use sk_rcvbuf as start for rmb creation irqchip/qcom: Fix u32 comparison with value less than zero ARM: avoid faulting on qemu ARM: BUG if jumping to usermode address in kernel mode crypto: talitos - fix ctr-aes-talitos crypto: talitos - fix use of sg_link_tbl_len crypto: talitos - fix AEAD for sha224 on non sha224 capable chips crypto: talitos - fix setkey to check key weakness crypto: talitos - fix memory corruption on SEC2 crypto: talitos - fix AEAD test failures IB/core: Only enforce security for InfiniBand IB/core: Avoid unnecessary return value check bus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left. bus: arm-ccn: Fix use of smp_processor_id() in preemptible context bus: arm-ccn: Check memory allocation failure bus: arm-cci: Fix use of smp_processor_id() in preemptible context Revert "ARM: dts: imx53: add srtc node" arm64: SW PAN: Update saved ttbr0 value on enter_lazy_tlb arm64: SW PAN: Point saved ttbr0 at the zero page when switching to init_mm arm64: fpsimd: Prevent registers leaking from dead tasks KVM: arm/arm64: vgic-its: Check result of allocation before use KVM: arm/arm64: vgic: Preserve the revious read from the pending table KVM: arm/arm64: vgic-irqfd: Fix MSI entry allocation KVM: arm/arm64: Fix broken GICH_ELRSR big endian conversion KVM: VMX: remove I/O port 0x80 bypass on Intel hosts arm: KVM: Fix VTTBR_BADDR_MASK BUG_ON off-by-one arm64: KVM: fix VTTBR_BADDR_MASK BUG_ON off-by-one media: rc: partial revert of "media: rc: per-protocol repeat period" media: rc: sir_ir: detect presence of port media: dvb: i2c transfers over usb cannot be done from stack drm/i915: Fix vblank timestamp/frame counter jumps on gen2 drm/exynos: gem: Drop NONCONTIG flag for buffers allocated without IOMMU drm/bridge: analogix dp: Fix runtime PM state in get_modes() callback md/r5cache: move mddev_lock() out of r5c_journal_mode_set() kdb: Fix handling of kallsyms_symbol_next() return value brcmfmac: change driver unbind order of the sdio function devices iwlwifi: mvm: enable RX offloading with TKIP and WEP iwlwifi: mvm: fix packet injection iwlwifi: add new cards for 9260 and 22000 series iwlwifi: mvm: flush queue before deleting ROC iwlwifi: mvm: don't use transmit queue hang detection when it is not possible iwlwifi: mvm: mark MIC stripped MPDUs powerpc/64s: Initialize ISAv3 MMU registers before setting partition table Revert "powerpc: Do not call ppc_md.panic in fadump panic notifier" KVM: s390: Fix skey emulation permission check s390: fix compat system call table s390/mm: fix off-by-one bug in 5-level page table handling s390: always save and restore all registers on context switch smp/hotplug: Move step CPUHP_AP_SMPCFD_DYING to the correct place iommu/vt-d: Fix scatterlist offset handling ALSA: usb-audio: Add check return value for usb_string() ALSA: usb-audio: Fix out-of-bound error ALSA: seq: Remove spurious WARN_ON() at timer check ALSA: pcm: prevent UAF in snd_pcm_info ALSA: hda/realtek - New codec support for ALC257 btrfs: handle errors while updating refcounts in update_ref_for_cow btrfs: fix missing error return in btrfs_drop_snapshot KVM: x86: fix APIC page invalidation x86/PCI: Make broadcom_postcore_init() check acpi_disabled x86/idt: Load idt early in start_secondary X.509: fix comparisons of ->pkey_algo X.509: reject invalid BIT STRING for subjectPublicKey KEYS: reject NULL restriction string when type is specified KEYS: add missing permission check for request_key() destination ASN.1: check for error from ASN1_OP_END__ACT actions ASN.1: fix out-of-bounds read when parsing indefinite length item efi/esrt: Use memunmap() instead of kfree() to free the remapping efi: Move some sysfs files to be read-only by root scsi: libsas: align sata_device's rps_resp on a cacheline scsi: use dma_get_cache_alignment() as minimum DMA alignment scsi: dma-mapping: always provide dma_get_cache_alignment isa: Prevent NULL dereference in isa_bus driver callbacks firmware: vpd: Fix platform driver and device registration/unregistration firmware: vpd: Tie firmware kobject to device lifetime firmware: vpd: Destroy vpd sections in remove function firmware: cleanup FIRMWARE_IN_KERNEL message hv: kvp: Avoid reading past allocated blocks from KVP file Drivers: hv: vmbus: Fix a rescind issue pinctrl: armada-37xx: Fix direction_output() callback behavior iio: adc: meson-saradc: Meson8 and Meson8b do not have REG11 and REG13 iio: adc: meson-saradc: initialize the bandgap correctly on older SoCs iio: adc: meson-saradc: fix the bit_idx of the adc_en clock iio: adc: cpcap: fix incorrect validation iio: health: max30102: Temperature should be in milli Celsius iio: stm32: fix adc/trigger link error virtio: release virtio index when fail to device_register can: peak/pcie_fd: fix potential bug in restarting tx queue can: usb_8dev: cancel urb on -EPIPE and -EPROTO can: esd_usb2: cancel urb on -EPIPE and -EPROTO can: ems_usb: cancel urb on -EPIPE and -EPROTO can: mcba_usb: cancel urb on -EPROTO can: kvaser_usb: cancel urb on -EPIPE and -EPROTO can: kvaser_usb: ratelimit errors if incomplete messages are received can: kvaser_usb: Fix comparison bug in kvaser_usb_read_bulk_callback() can: kvaser_usb: free buf in error paths can: ti_hecc: Fix napi poll return value for repoll can: flexcan: fix VF610 state transition issue can: peak/pci: fix potential bug when probe() fails can: mcba_usb: fix device disconnect bug usb: f_fs: Force Reserved1=1 in OS_DESC_EXT_COMPAT serdev: ttyport: fix tty locking in close serdev: ttyport: fix NULL-deref on hangup serdev: ttyport: add missing receive_buf sanity checks usb: gadget: core: Fix ->udc_set_speed() speed handling usb: gadget: udc: renesas_usb3: fix number of the pipes Change-Id: I47977dc6948f8e5edbcd21770a63242e86adcb3b Signed-off-by: Runmin Wang <runminw@codeaurora.org> |
||
|
|
c55befc42a |
iio: stm32: fix adc/trigger link error
commit 6d745ee8b5e81f3a33791e3c854fbbfd6f3e585e upstream.
The ADC driver can trigger on either the timer or the lptim
trigger, but it only uses a Kconfig 'select' statement
to ensure that the first of the two is present. When the lptim
trigger is enabled as a loadable module, and the adc driver
is built-in, we now get a link error:
drivers/iio/adc/stm32-adc.o: In function `stm32_adc_get_trig_extsel':
stm32-adc.c:(.text+0x4e0): undefined reference to `is_stm32_lptim_trigger'
We could use a second 'select' statement and always have both
trigger drivers enabled when the adc driver is, but it seems that
the lptimer trigger was intentionally left optional, so it seems
better to keep it that way.
This adds a hack to use 'IS_REACHABLE()' rather than 'IS_ENABLED()',
which avoids the link error, but instead leads to the lptimer trigger
not being used in the broken configuration. I've added a runtime
warning for this case to help users figure out what they did wrong
if this should ever be done by accident.
Fixes:
|
||
|
|
a54f83c3f4 |
iio: support writing processed values to IIO channels
Add a new function to the IIO API which allows consumers to write processed values to IIO channels. This is particularly useful for supporting hardware which has configurable ADC thresholds. A consumer would be able to change an ADC threshold by providing a processed value instead of calculating a raw value. Change-Id: I7d3b22beddb6fd1fda0cc0aefbcb4cf5cb58bf82 Signed-off-by: Nicholas Troast <ntroast@codeaurora.org> |
||
|
|
b24413180f |
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
Many source files in the tree are missing licensing information, which makes it harder for compliance tools to determine the correct license. By default all files without license information are under the default license of the kernel, which is GPL version 2. Update the files which contain no license information with the 'GPL-2.0' SPDX license identifier. The SPDX identifier is a legally binding shorthand, which can be used instead of the full boiler plate text. This patch is based on work done by Thomas Gleixner and Kate Stewart and Philippe Ombredanne. How this work was done: Patches were generated and checked against linux-4.14-rc6 for a subset of the use cases: - file had no licensing information it it. - file was a */uapi/* one with no licensing information in it, - file was a */uapi/* one with existing licensing information, Further patches will be generated in subsequent months to fix up cases where non-standard license headers were used, and references to license had to be inferred by heuristics based on keywords. The analysis to determine which SPDX License Identifier to be applied to a file was done in a spreadsheet of side by side results from of the output of two independent scanners (ScanCode & Windriver) producing SPDX tag:value files created by Philippe Ombredanne. Philippe prepared the base worksheet, and did an initial spot review of a few 1000 files. The 4.13 kernel was the starting point of the analysis with 60,537 files assessed. Kate Stewart did a file by file comparison of the scanner results in the spreadsheet to determine which SPDX license identifier(s) to be applied to the file. She confirmed any determination that was not immediately clear with lawyers working with the Linux Foundation. Criteria used to select files for SPDX license identifier tagging was: - Files considered eligible had to be source code files. - Make and config files were included as candidates if they contained >5 lines of source - File already had some variant of a license header in it (even if <5 lines). All documentation files were explicitly excluded. The following heuristics were used to determine which SPDX license identifiers to apply. - when both scanners couldn't find any license traces, file was considered to have no license information in it, and the top level COPYING file license applied. For non */uapi/* files that summary was: SPDX license identifier # files ---------------------------------------------------|------- GPL-2.0 11139 and resulted in the first patch in this series. If that file was a */uapi/* path one, it was "GPL-2.0 WITH Linux-syscall-note" otherwise it was "GPL-2.0". Results of that was: SPDX license identifier # files ---------------------------------------------------|------- GPL-2.0 WITH Linux-syscall-note 930 and resulted in the second patch in this series. - if a file had some form of licensing information in it, and was one of the */uapi/* ones, it was denoted with the Linux-syscall-note if any GPL family license was found in the file or had no licensing in it (per prior point). Results summary: SPDX license identifier # files ---------------------------------------------------|------ GPL-2.0 WITH Linux-syscall-note 270 GPL-2.0+ WITH Linux-syscall-note 169 ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause) 21 ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 17 LGPL-2.1+ WITH Linux-syscall-note 15 GPL-1.0+ WITH Linux-syscall-note 14 ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause) 5 LGPL-2.0+ WITH Linux-syscall-note 4 LGPL-2.1 WITH Linux-syscall-note 3 ((GPL-2.0 WITH Linux-syscall-note) OR MIT) 3 ((GPL-2.0 WITH Linux-syscall-note) AND MIT) 1 and that resulted in the third patch in this series. - when the two scanners agreed on the detected license(s), that became the concluded license(s). - when there was disagreement between the two scanners (one detected a license but the other didn't, or they both detected different licenses) a manual inspection of the file occurred. - In most cases a manual inspection of the information in the file resulted in a clear resolution of the license that should apply (and which scanner probably needed to revisit its heuristics). - When it was not immediately clear, the license identifier was confirmed with lawyers working with the Linux Foundation. - If there was any question as to the appropriate license identifier, the file was flagged for further research and to be revisited later in time. In total, over 70 hours of logged manual review was done on the spreadsheet to determine the SPDX license identifiers to apply to the source files by Kate, Philippe, Thomas and, in some cases, confirmation by lawyers working with the Linux Foundation. Kate also obtained a third independent scan of the 4.13 code base from FOSSology, and compared selected files where the other two scanners disagreed against that SPDX file, to see if there was new insights. The Windriver scanner is based on an older version of FOSSology in part, so they are related. Thomas did random spot checks in about 500 files from the spreadsheets for the uapi headers and agreed with SPDX license identifier in the files he inspected. For the non-uapi files Thomas did random spot checks in about 15000 files. In initial set of patches against 4.14-rc6, 3 files were found to have copy/paste license identifier errors, and have been fixed to reflect the correct identifier. Additionally Philippe spent 10 hours this week doing a detailed manual inspection and review of the 12,461 patched files from the initial patch version early this week with: - a full scancode scan run, collecting the matched texts, detected license ids and scores - reviewing anything where there was a license detected (about 500+ files) to ensure that the applied SPDX license was correct - reviewing anything where there was no detection but the patch license was not GPL-2.0 WITH Linux-syscall-note to ensure that the applied SPDX license was correct This produced a worksheet with 20 files needing minor correction. This worksheet was then exported into 3 different .csv files for the different types of files to be modified. These .csv files were then reviewed by Greg. Thomas wrote a script to parse the csv files and add the proper SPDX tag to the file, in the format that the file expected. This script was further refined by Greg based on the output to detect more types of files automatically and to distinguish between header and source .c files (which need different comment types.) Finally Greg ran the script using the .csv files to generate the patches. Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Reviewed-by: Philippe Ombredanne <pombredanne@nexb.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
|
|
b2e312061c |
Merge tag 'iio-fixes-for-4.14a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-linus
Jonathan writes:
First round of IIO fixes for the 4.14 cycle
Note this includes fixes from recent merge window. As such the tree
is based on top of a prior staging/staging-next tree.
* iio core
- return and error for a failed read_reg debugfs call rather than
eating the error.
* ad7192
- Use the dedicated reset function in the ad_sigma_delta library
instead of an spi transfer with the data on the stack which
could cause problems with DMA.
* ad7793
- Implement a dedicate reset function in the ad_sigma_delta library
and use it to correctly reset this part.
* bme280
- ctrl_reg write must occur after any register writes
for updates to take effect.
* mcp320x
- negative voltage readout was broken.
- Fix an oops on module unload due to spi_set_drvdata not being called
in probe.
* st_magn
- Fix the data ready line configuration for the lis3mdl. It is not
configurable so the st_magn core was assuming it didn't exist
and so wasn't consuming interrupts resulting in an unhandled
interrupt.
* stm32-adc
- off by one error on max channels checking.
* stm32-timer
- preset should not be buffered - reorganising register writes avoids
this.
- fix a corner case in which write preset goes wrong when a timer is
used first as a trigger then as a counter with preset. Odd case but
you never know.
* ti-ads1015
- Fix setting of comparator polarity by fixing bitfield definition.
* twl4030
- Error path handling fix to cleanup in event of regulator
registration failure.
- Disable the vusb3v1 regulator correctly in error handling
- Don't paper over a regulator enable failure.
|
||
|
|
7fc10de8d4 |
iio: ad_sigma_delta: Implement a dedicated reset function
Since most of the SD ADCs have the option of reseting the serial interface by sending a number of SCLKs with CS = 0 and DIN = 1, a dedicated function that can do this is usefull. Needed for the patch: iio: ad7793: Fix the serial interface reset Signed-off-by: Dragos Bogdan <dragos.bogdan@analog.com> Acked-by: Lars-Peter Clausen <lars@metafoo.de> Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> |
||
|
|
968c61f7da |
Merge tag 'mfd-next-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
Pull MFD updates from Lee Jones:
"New Drivers
- RK805 Power Management IC (PMIC)
- ROHM BD9571MWV-M MFD Power Management IC (PMIC)
- Texas Instruments TPS68470 Power Management IC (PMIC) & LEDs
New Device Support:
- Add support for HiSilicon Hi6421v530 to hi6421-pmic-core
- Add support for X-Powers AXP806 to axp20x
- Add support for X-Powers AXP813 to axp20x
- Add support for Intel Sunrise Point LPSS to intel-lpss-pci
New Functionality:
- Amend API to provide register layout; atmel-smc
Fix-ups:
- DT re-work; omap, nokia
- Header file location change {I2C => MFD}; dm355evm_msp, tps65010
- Fix chip ID formatting issue(s); rk808
- Optionally register touchscreen devices; da9052-core
- Documentation improvements; twl-core
- Constification; rtsx_pcr, ab8500-core, da9055-i2c, da9052-spi
- Drop unnecessary static declaration; max8925-i2c
- Kconfig changes (missing deps and remove module support)
- Slim down oversized licence statement; hi6421-pmic-core
- Use managed resources (devm_*); lp87565
- Supply proper error checking/handling; t7l66xb
Bug Fixes:
- Fix counter duplication issue; da9052-core
- Fix potential NULL deference issue; max8998
- Leave SPI-NOR write-protection bit alone; lpc_ich
- Ensure device is put into reset during suspend; intel-lpss
- Correct register offset variable size; omap-usb-tll"
* tag 'mfd-next-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (61 commits)
mfd: intel_soc_pmic: Differentiate between Bay and Cherry Trail CRC variants
mfd: intel_soc_pmic: Export separate mfd-cell configs for BYT and CHT
dt-bindings: mfd: Add bindings for ZII RAVE devices
mfd: omap-usb-tll: Fix register offsets
mfd: da9052: Constify spi_device_id
mfd: intel-lpss: Put I2C and SPI controllers into reset state on suspend
mfd: da9055: Constify i2c_device_id
mfd: intel-lpss: Add missing PCI ID for Intel Sunrise Point LPSS devices
mfd: t7l66xb: Handle return value of clk_prepare_enable
mfd: Add ROHM BD9571MWV-M PMIC DT bindings
mfd: intel_soc_pmic_chtwc: Turn Kconfig option into a bool
mfd: lp87565: Convert to use devm_mfd_add_devices()
mfd: Add support for TPS68470 device
mfd: lpc_ich: Do not touch SPI-NOR write protection bit on Haswell/Broadwell
mfd: syscon: atmel-smc: Add helper to retrieve register layout
mfd: axp20x: Use correct platform device ID for many PEK
dt-bindings: mfd: axp20x: Introduce bindings for AXP813
mfd: axp20x: Add support for AXP813 PMIC
dt-bindings: mfd: axp20x: Add AXP806 to supported list of chips
mfd: Add ROHM BD9571MWV-M MFD PMIC driver
...
|
||
|
|
b01ced2b50 |
iio: trigger: Add STM32 LPTimer trigger driver
Add support for LPTIMx_OUT triggers that can be found on some STM32 devices. These triggers can be used then by ADC or DAC. Typical usage is to configure LPTimer as PWM output (via pwm-stm32-lp) and have synchronised analog conversions with these triggers. Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> |
||
|
|
8439a69e72 |
Merge 4.13-rc7 into staging-next
We want the staging and iio fixes in here to handle the merge issues. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
|
|
5e47adb906 |
Merge tag 'iio-for-4.14b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
Jonathan writes:
Second set of IIO new device support, features and cleanup for the 4.14 cycle.
New device support:
* ak8974
- support the AMI306.
* st_magnetometer
- add support for the LIS2MDL with bindings.
* rockchip-saradc
- add binding for rv1108 SoC (no driver change).
* srf08
- add srf02 (i2c only) and srf10 support.
* stm32-timer
- support for the STM32H7 to existing driver.
Features:
* tools
- move over to the tools buildsystem rather than hand rolling.
- add an install section to the build.
* ak8974
- use serial number to add device randomness.
- add AMI306 calibration data output.
* ccs811
- triggered buffer support.
* srf08
- add a device tree table as the old style i2c probing is going away,
- add triggered buffer support
* st32-adc
- add optional st,min-sample-time-nsecs binding to allow control of
sampling against analog circuitry.
* stm32-timer
- add output compare triggers.
* ti-ads1015
- add threshold event support.
* ti-ads7950
- Allow use on ACPI platforms including providing a default reference
voltage as there is no way to obtain this on ACPI currently.
Cleanup and fixes:
* ad7606
- fix an error return code in probe.
* ads1015
- fix incorrect data rate setting update when capture in progress,
- fix wrong scale information for the ADS1115,
- make conversions work when CONFIG_PM is not set,
- make sure we don't get a stale result after a runtime resume by
ensuring we wait long enough,
- avoid returning a false error form the buffer setup callbacks,
- add enough wait time to get the correct conversion,
- remove an unnecessary config register update,
- add a helper to set conversion mode reducing repeated boilerplate,
- use devm_iio_triggered_buffer_setup to simplify error and remove
paths,
- use iio_device_claim_direct_mode instead of opencoding the same.
* ak8974
- mark the INT_CLEAR register as precious to prevent debugfs access.
* apds9300
- constify the i2c_device_id.
* at91-sama5 adc
- add missing Kconfig dependency.
* bma180 accel
- constify the i2c_device_id.
* rockchip_saradc
- explicitly request exclusive reset control as part of the reset rework
on going throughout the kernel.
* st_accel
- fix drdy configuration for a load of accelerometers that only have
the int1 line. Fix is unimportant as presumably no deviec tree actually
used the non existent hardware line.
* st_pressure
- fix drdy configuration for LPS22HB and LPS25H by dropping int2 support
as they don't have this. Fix is unimportant as presumably no device tree
actually used the non existent hardware line.
* stm32-dac
- explicitly request exclusive reset control (part of reset being reworked).
* tsl2583
- constify the i2c_device_id.
* xadc
- coding style fixes.
|
||
|
|
f00fd7ae4f |
PATCH] iio: Fix some documentation warnings
The kerneldoc description for the trig_readonly field of struct iio_dev lacked a colon, leading to this doc build warning: ./include/linux/iio/iio.h:603: warning: No description found for parameter 'trig_readonly' A similar issue for iio_trigger_set_immutable() in trigger.h yielded: ./include/linux/iio/trigger.h:151: warning: No description found for parameter 'indio_dev' ./include/linux/iio/trigger.h:151: warning: No description found for parameter 'trig' Fix the formatting and silence the warnings. Signed-off-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> |
||
|
|
8652892ed4 |
Merge 4.13-rc5 into staging-next
We need it here for iio fixes. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
|
|
25892d6eac |
iio: trigger: stm32-timer: add output compare triggers
Add output compare trigger sources available on some instances. Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> |
||
|
|
45fff14bab |
iio: trigger: stm32-timer: add support for STM32H7
Add support for STM32H7 timer triggers: - Add new valids_table - Introduce compatible, with configuration data - Extend up to 15 timers, available on STM32H7 Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> |
||
|
|
98c2f10d23 |
Merge tag 'iio-for-4.14a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
Jonathan writes:
First round of IIO new device support, features and cleanups for the 4.14 cycle.
4 completely new drivers in this set and plenty of other stuff.
One ABI change due to a silly mistake a long time back. Hopefully no
one will notice. It effects the numerical order of consumer device
channels which was the reverse of the obvious. It's going the slow
way to allow us some margin to spot if we have broken userspace or
not (seems unlikely)
New Device Support
* ccs811
- new driver for the Volatile Organic Compounds (VOC) sensor.
* dln2 adc
- new driver for the ADC on this flexible usb board.
* EP93xx
- new driver for this Cirrus logic SoC ADC.
* ltc2471
- new ADC driver support the ltc2471 and ltc2473
* st_accel
- add trivial table entries to support H3LIS331DL, LIS331DL, LIS3LV02DL.
* st_gyro
- add L3GD20H support (again) having fixed the various things that were
broken in the first try. Includes devicetree binding.
* stm32 dac
- add support for the DACs in the STM32F4 series
Features
* Documentation
- add missing power attribute documentation to the ABI docs.
* at91-sama5d2
- add hardware trigger and buffered capture support with bindings.
- suspend and resume functionality.
* bmc150
- support for the BOSC0200 ACPI device id seen on some tablets.
* hdc100x
- devicetree bindings
- document supported devices
- match table and device ids.
* hts221
- support active low interrupts (with bindings)
- open drain mode with bindings.
* htu21
- OF match table and bindings.
* lsm6dsx
- open drain mode with bindings
* ltc2497
- add support for board file based consumer mapping.
* ms5367
- OF match table and bindings.
* mt7622
- binding document and OF match table.
- suspend and resume support.
* rpr0521
- triggered buffer support.
* tsys01
- OF match table and bindings.
Cleanups and minor fixes
* core
- fix ordering of IIO channels to entry numbers when using
iio_map_array_register rather than reversing them.
- use the new %pOF format specifier rather than full name for the
device tree nodes.
* ad7280a
- fix potential issue with macro argument reuse.
* ad7766
- drop a pointless NULL value check as it's done in the gpiod code.
* adis16400
- unsigned -> unsigned int.
* at91 adc
- make some init data static to reduce code size.
* at91-sama5d2 ADC
- make some init data static to reduce code size.
* da311
- make some init data static to reduce code size.
* hid-sensor-rotation
- drop an unnecessary static.
* hts221
- refactor the write_with_mask code.
- move the BDU configuration to probe time as there is no reason for it
to change.
- avoid overwriting reserved data during power-down. This is a fix, but
the infrastructure need was too invasive to send it to mainline except
in a merge window. It's not a regression as it was always wrong.
- avoid reconfigure the sampling frequency multiple times by just
doing it in the write_raw function directly.
- refactor the power_on/off calls into a set_enable.
- move the dry-enable logic into trig_set_state as that is the only
place it was used.
* ina219
- fix polling of ina226 conversion ready flag.
* imx7d
- add vendor name in kconfig for consistency with similar parts.
* mcp3422
- Change initial channel to 0 as it feels more logical.
- Check for some errors in probe.
* meson-saradc
- add a check of of_match_device return value.
* mpu3050
- allow open drain for any interrupt type.
* rockchip adc
- add check on of_match_device return value.
* sca3000
- drop a trailing whitespace.
* stm32 adc
- make array stm32h7_adc_ckmodes_spec static.
* stm32 dac
- fix an error message.
* stm32 timers
- fix clock name in docs to match reality after changes.
* st_accel
- explicit OF table (spi).
- add missing entries to OF table (i2c).
- rename of_device_id table to drop the part name.
- adding missing lis3l02dq entry to bindings.
- rename H3LIS331DL_DRIVER_NAME to line up with similar entries in driver.
* st_gyro
- explicit OF table (spi).
* st_magn
- explicit OF table (spi).
- enable multiread for lis3mdl.
* st_pressure
- explicit OF table (spi).
* st_sensors common.
- move st_sensors_of_i2c_probe and rename to make it available for spi
drivers.
* tsc3472
- don't write an extra byte when writing the ATIME register.
- add a link to the datasheet.
* tsl2x7x - continued staging cleanups
- add of_match_table.
- drop redundant power_state sysfs attribute.
- drop wrapper tsl2x7x_i2c_read.
- clean up i2c calls made in tsl2x7x_als_calibrate.
- refactor the read and write _event_value callbacks to handle additional
elements.
- use usleep_range instead of mdelay.
- check return value from tsl2x7x_invoke_change.
* zpa2326
- add some newline to the end of logging macros.
|
||
|
|
055655a9f0 |
Merge tag 'iio-fixes-for-4.13a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-linus
Jonathan writes: First set of IIO fixes for the 4.13 cycle. * ad2s1210 - Fix negative angular velocity reads (identified by a gcc 7 warning) * aspeed-adc - Wait for initialization sequence to finish before enabling channels. Without it no channels work. * axp288 - Revert a patch that dropped some bogus register mods. No one is entirely sure why but it breaks charging on some devices. - Fix GPADC pin read returning 0. Turns out a small sleep is needed. * bmc150 - Make sure device is restored to normal state after suspend / resume cycle. Otherwise, simple sysfs reads are broken. * tsl2563 - fix wrong event code. * st-accel - add spi 3-wire support. Needed to fix the lsm303agr accelerometer which only had 3 wires in all cases. Side effect is to enable optional 3-wire support for other devices. * st-pressure - disable multiread by default for LPS22HB (only effects SPI) * sun4i-gpadc-iio - fix unbalanced irq enable / disable * vf610 - Fix VALT slection for REFSEL bits - ensures we are using the right reference pins. |
||
|
|
a7b8829d24 |
iio: accel: st_accel: add SPI-3wire support
Add SPI Serial Interface Mode (SIM) register information
in st_sensor_settings look up table to support devices
(like LSM303AGR accel sensor) that allow just SPI-3wire
communication mode. SIM mode has to be configured before any
other operation since it is not enabled by default and the driver
is not able to read without that configuration
Whilst a fairly substantial patch, the actual logic is simple and it
is better to have the generic fix than a band aid.
Fixes:
|
||
|
|
f4dd029ee0 |
Merge tag 'char-misc-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull char/misc updates from Greg KH: "Here is the "big" char/misc driver patchset for 4.13-rc1. Lots of stuff in here, a large thunderbolt update, w1 driver header reorg, the new mux driver subsystem, google firmware driver updates, and a raft of other smaller things. Full details in the shortlog. All of these have been in linux-next for a while with the only reported issue being a merge problem with this tree and the jc-docs tree in the w1 documentation area" * tag 'char-misc-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (147 commits) misc: apds990x: Use sysfs_match_string() helper mei: drop unreachable code in mei_start mei: validate the message header only in first fragment. DocBook: w1: Update W1 file locations and names in DocBook mux: adg792a: always require I2C support nvmem: rockchip-efuse: add support for rk322x-efuse nvmem: core: add locking to nvmem_find_cell nvmem: core: Call put_device() in nvmem_unregister() nvmem: core: fix leaks on registration errors nvmem: correct Broadcom OTP controller driver writes w1: Add subsystem kernel public interface drivers/fsi: Add module license to core driver drivers/fsi: Use asynchronous slave mode drivers/fsi: Add hub master support drivers/fsi: Add SCOM FSI client device driver drivers/fsi/gpio: Add tracepoints for GPIO master drivers/fsi: Add GPIO based FSI master drivers/fsi: Document FSI master sysfs files in ABI drivers/fsi: Add error handling for slave drivers/fsi: Add tracepoints for low-level operations ... |
||
|
|
250bbbdbed |
iio: common: st_sensors: move st_sensors_of_i2c_probe() in common code
Move st_sensors_of_i2c_probe() in st_sensors_core and rename it in st_sensors_of_name_probe(). That change is necessary to add device-tree support in spi code otherwise the rest of the autodetection will fail since spi->modalias (and indio_dev->name) will be set using compatible string value that differs from standard sensor name Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@st.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org> |
||
|
|
d89e119a08 |
iio: add hardware triggered operating mode
Devices, like stm32 timer, could be triggered by hardware events which are not buffer or software events. However it could be necessary to validate the triggers like it is done for buffer or event triggered modes. This patch add a new INDIO_HARDWARE_TRIGGERED operating mode for this kind of devices and allow this mode to register trigger consumer. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org> |
||
|
|
8a848e7549 |
iio: inkern: api for manipulating ext_info of iio channels
Extend the inkern api with functions for reading and writing ext_info of iio channels. Acked-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Peter Rosin <peda@axentia.se> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
|
|
6fb34812c2 |
iio: stm32 trigger: Add support for TRGO2 triggers
Add support for TRGO2 trigger that can be found on STM32F7. Add additional master modes supported by TRGO2. Register additional "tim[1/8]_trgo2" triggers for timer1 & timer8. Detect TRGO2 timer capability (master mode selection 2). Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> Acked-by: Benjamin Gaignard <benjamin.gaignard@linaro.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org> |
||
|
|
c42f821861 |
iio: sw-device: Fix config group initialization
Use the IS_ENABLED() helper macro to ensure that the configfs group is initialized either when configfs is built-in or when configfs is built as a module. Otherwise software device creation will result in undefined behaviour when configfs is built as a module since the configfs group for the device not properly initialized. Similar to commit |
||
|
|
6db0f7ccc9 |
Merge tag 'ib-mfd-iio-pwm-4.11' into test
Immutable branch between MFD, IIO and PWM due for the v4.11 merge window Pulled into IIO to allow follow up series of triggered capture for the STM32 ADCs. |
||
|
|
93fbe91b55 |
iio: Add STM32 timer trigger driver
Timers IPs can be used to generate triggers for other IPs like DAC or ADC. Each trigger may result of timer internals signals like counter enable, reset or edge, this configuration could be done through "master_mode" device attribute. Since triggers could be used by DAC or ADC their names are defined in include/ nux/iio/timer/stm32-timer-trigger.h and is_stm32_iio_timer_trigger function could be used to check if the trigger is valid or not. "trgo" trigger have a "sampling_frequency" attribute which allow to configure timer sampling frequency. version 8: - change kernel version from 4.10 to 4.11 in ABI documentation version 7: - remove all iio_device related code - move driver into trigger directory version 5: - simplify tables of triggers - only create an IIO device when needed version 4: - get triggers configuration from "reg" in DT - add tables of triggers - sampling frequency is enable/disable when writing in trigger sampling_frequency attribute - no more use of interruptions version 3: - change compatible to "st,stm32-timer-trigger" - fix attributes access right - use string instead of int for master_mode and slave_mode - document device attributes in sysfs-bus-iio-timer-stm32 version 2: - keep only one compatible - use st,input-triggers-names and st,output-triggers-names to know which triggers are accepted and/or create by the device Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com> Acked-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> |
||
|
|
4463c3e72d |
Merge tag 'iio-for-4.11a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
Jonathan writes:
First round of new device support, features and cleanups for IIO in the 4.11 cycle.
It's shaping to be another fairly busy cycle. Lots more on the way!
New device support
* ads7950
- new driver supporting ads7950, ads7951, ads7952, ads7953, ads7954,
ads7955, ads7956, ads7957, ads7958, ads7959, ads7960, and ads7961 ADCs.
* cm3605
- New driver for this light sensor and proximity sensor which is an
analog part with some additional digital controls.
* hx711
- New driver.
Core new stuff
* Gravity sensor type. This is a processed datastream in which the device
will try to work out which way is down.
* Split the buffer.h file into two parts. One provides the interface to 'use'
a buffer, the second provides the internals of the buffer functionality as
needed by implementations of buffers.
- Move documentation inline so as to allow use of private: tag when
generating documentation.
- Add some utility functions for the few things that are directly done
with the buffers.
- Stop exporting functions that no-one uses outside of the core code.
- Push docs down by the code in the c file where they should have always
been.
- Fix typo in kernel-doc for buffer.
- push down some includes that were previously happening implicitly.
- stop enabling the timestamp of the dummy device.
Features and cleanups
* ad5592r
- ACPI support
* ad5593r
-ACPI support.
* ad5933
- Fix a false comment about size of a particular register.
* ad7150
- replace S_IRUGO | S_IWUSR with 0644. I'm not that keen on these patches
in general, but as it was nicely presented I took this one anyway. As a
general rule will only take these as part of a larger driver cleanup.
- don't eat an error but rather reutnr it in the write_event_config callback.
* ad7606
- replace non standard range attibute with _scale
* ade7753
- use usleep_range for short sleeps
* ade7754
- use usleep_range for short sleeps
* ade7758
- use usleep_range for short sleeps
* ade7759
- use usleep_range for short sleeps
*
|
||
|
|
33dd94cb97 |
iio:buffer.h - split into buffer.h and buffer_impl.h
buffer.h supplies everything needed for devices using buffers. buffer_impl.h supplies access to the internals as needed to write a buffer implementation. This was really motivated by the mess that turned up in the kernel-doc documentation pulled in by the new sphinx docs. It made it clear that our logical separations in headers were generally terrible. The buffer case was easy to sort out without greatly effecting drivers so here it is. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
2b827ad541 |
iio:buffer: Push implementation of iio_device_attach_buffer into .c file
This is a precursor to the splitting of buffer.h into parts relevant to buffer implementation vs those for devices using buffers. struct buffer is about to become opaque as far as the header is concerned. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
8abd5ba539 |
iio:kfifo_buf header include push down.
As a precursor to splitting buffer.h, lets make sure all drivers include the relevant headers rather than relying on picking them up from kfifo_buf.h. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
d4ad4f4b72 |
iio:buffer:iio_push_to_buffers_with_timestamp fix kernel-doc.
Wrong start of kernel doc comment /* -> /** Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
315a19eca0 |
iio:buffers: Push some docs down into the .c file.
Ancient legacy of me doing it wrong which it is nice to clear up whilst we are here. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
c2bf8d5f32 |
iio:buffer: Stop exporting iio_scan_mask_query
Nothing uses it outside of core code. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
9f4667776c |
iio:buffer: Introduced a function to assign the buffer specific attrs.
This is a necessary step in taking the buffer implementation opaque. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
263cf5e657 |
iio:buffer.h Reformat structure comments to be inline.
This should make it easier to see how the structure is split into public and private parts - reflected in the generated documentation. Deliberately use /* instead of /** for the private elements to avoid warnings when kernel-doc script runs. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
78c9981f61 |
iio:buffer: Stop exporting iio_update_demux
Nothing outside of indiustrialio-buffer.c should be using this. Requires a large amount of juggling of functions to avoid a forward definition. Signed-off-by: Jonathan Cameron <jic23@kernel.org> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> |
||
|
|
65e4345c8e |
iio: accel: st_accel: fix LIS3LV02 reading and scaling
The LIS3LV02 has a special bit that need to be set to get the
read values left aligned. Before this patch we get gibberish
like this:
iio_generic_buffer -a -c10 -n lis3lv02dl_accel
(...)
0.000000 -0.010042 -0.642688 19155832931907
0.000000 -0.010042 -0.642688 19155858751073
Which is because we read a raw value for 1g as 64 which is
the nominal 1024 for 1g shifted 4 bits to the left by being
right-aligned rather than left aligned.
Since all other sensors are left aligned, add some code to
set the special DAS (data alignment setting) bit to 1 so that
the right value is now read like this:
iio_generic_buffer -a -c10 -n lis3lv02dl_accel
(...)
0.000000 -0.147095 -10.120135 24761614364956
-0.029419 -0.176514 -10.120135 24761631624540
The scaling was weird as well: we have a gain of 1000 for 1g
and 3000 for 6g. I don't even remember how I came up with the
old values but they are wrong.
Fixes:
|
||
|
|
3dc59262f7 |
iio: st_sensors: match sensors using ACPI handle
Add support to match st sensors using information passed from ACPI DST tables. Signed-off-by: Shrirang Bagul <shrirang.bagul@canonical.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org> |
||
|
|
00c5f80c2f |
iio: inkern: add helpers to query available values from channels
Specifically a helper for reading the available maximum raw value of a channel and a helper for forwarding read_avail requests for raw values from one iio driver to an iio channel that is consumed. These rather specific helpers are in turn built with generic helpers making it easy to build more helpers for available values as needed. Signed-off-by: Peter Rosin <peda@axentia.se> Signed-off-by: Jonathan Cameron <jic23@kernel.org> |
||
|
|
5123960007 |
iio:core: add a callback to allow drivers to provide _available attributes
A large number of attributes can only take a limited range of values. Currently in IIO this is handled by directly registering additional *_available attributes thus providing this information to userspace. It is desirable to provide this information via the core for much the same reason this was done for the actual channel information attributes in the first place. If it isn't there, then it can only really be accessed from userspace. Other in kernel IIO consumers have no access to what valid parameters are. Two forms are currently supported: * list of values in one particular IIO_VAL_* format. e.g. 1.300000 1.500000 1.730000 * range specification with a step size: e.g. [1.000000 0.500000 2.500000] equivalent to 1.000000 1.5000000 2.000000 2.500000 An addition set of masks are used to allow different sharing rules for the *_available attributes generated. This allows for example: in_accel_x_offset in_accel_y_offset in_accel_offset_available. We could have gone with having a specification for each and every info_mask element but that would have meant changing the existing userspace ABI. This approach does not. Signed-off-by: Jonathan Cameron <jic23@kernel.org> [forward ported, added some docs and fixed buffer overflows /peda] Acked-by: Daniel Baluta <daniel.baluta@intel.com> Signed-off-by: Peter Rosin <peda@axentia.se> Signed-off-by: Jonathan Cameron <jic23@kernel.org> |
||
|
|
29157c6d60 |
iio: dac: mcp4725: support voltage reference selection
MCP47x6 chip supports selection of a voltage reference (VDD, VREF buffered or unbuffered). MCP4725 doesn't have this feature thus the eventual setting is ignored and user is warned. The setting is stored only in the volatile memory of the chip. You need to manually store it to the EEPROM of the chip via 'store_eeprom' sysfs entry. Signed-off-by: Tomas Novotny <tomas@novotny.cz> Signed-off-by: Jonathan Cameron <jic23@kernel.org> |