Merge tag 'android14-6.1.129_r00' into android14-6.1

This merges the android14-6.1.129_r00 tag into the android14-6.1 branch,
catching it up with the latest LTS releases.

It contains the following commits:

*   1bc4f0dcdc Merge 6.1.129 into android14-6.1-lts
|\
| * 3a83585836 Linux 6.1.129
| * 25ffe92294 x86/i8253: Disable PIT timer 0 when not in use
| * 552e7938b4 drm/amd/display: Add NULL pointer check for kzalloc
| * f81302decd f2fs: fix to wait dio completion
| * 1dc81fbe69 ARM: dts: dra7: Add bus_dma_limit for l4 cfg bus
| * 43590d25d6 selftests: rtnetlink: update netdevsim ipsec output format
| * ab2121f9e7 netdevsim: print human readable IP address
| * 9e9953f5e4 net: dsa: fix netdev_priv() dereference before check on non-DSA netdevice events
| * 55742de2cd parport_pc: add support for ASIX AX99100
| * 06c3423c62 serial: 8250_pci: add support for ASIX AX99100
* | 5c2815ea50 Revert "cgroup: fix race between fork and cgroup.kill"
* | f082ff3de7 Merge 0264d6b73e ("can: ems_pci: move ASIX AX99100 ids to pci_ids.h") into android14-6.1-lts
|\|
| * 0264d6b73e can: ems_pci: move ASIX AX99100 ids to pci_ids.h
| * 58c27fa7a6 nilfs2: protect access to buffers with no active references
| * 1929673702 nilfs2: do not force clear folio if buffer is referenced
| * 217114cf30 nilfs2: do not output warnings when clearing dirty buffers
| * 2a21bad996 i3c: master: cdns: Fix use after free vulnerability in cdns_i3c_master Driver Due to Race Condition
| * 731fd4b06c alpha: replace hardcoded stack offsets with autogenerated ones
| * c986a5fb15 mm: gup: fix infinite loop within __get_longterm_locked
| * 5b2608b5cf arm64: tegra: Fix typo in Tegra234 dce-fabric compatible
| * 6325eab6c1 iommu: Return right value in iommu_sva_bind_device()
| * e43e2461ab x86/static-call: Remove early_boot_irqs_disabled check to fix Xen PVH dom0
| * 8255da6dd4 kdb: Do not assume write() callback available
| * 95036d4c01 drm/v3d: Stop active perfmon if it is being destroyed
| * 042eebaed4 drm/tidss: Clear the interrupt status for interrupts being disabled
| * 43a54105af drm/tidss: Fix issue in irq handling causing irq-flood issue
| * e8af3632a7 ipv6: mcast: add RCU protection to mld_newpack()
| * a9319d800b ndisc: extend RCU protection in ndisc_send_skb()
| * 7e01abc34e openvswitch: use RCU protection in ovs_vport_cmd_fill_info()
| * f189654459 arp: use RCU protection in arp_xmit()
| * 784eb23762 neighbour: use RCU protection in __neigh_notify()
| * 9b4d091de5 neighbour: delete redundant judgment statements
| * 3c2d705f5a ndisc: use RCU protection in ndisc_alloc_skb()
| * 84212387ca ipv6: use RCU protection in ip6_default_advmss()
| * d13d8a3486 flow_dissector: use RCU protection to fetch dev_net()
| * 85a1d9b0b4 ipv4: icmp: convert to dev_net_rcu()
| * ea07480b23 ipv4: use RCU protection in __ip_rt_update_pmtu()
| * b1f7bdee57 net: ipv4: Cache pmtu for all packet paths if multipath enabled
| * 2e0b96d8ed ipv4: use RCU protection in inet_select_addr()
| * ba1848b75d ipv4: use RCU protection in rt_is_expired()
| * ffd8bed1b4 ipv4: use RCU protection in ipv4_default_advmss()
| * e2b01044d9 net: add dev_net_rcu() helper
| * 7bafb66f54 net: treat possible_net_t net pointer as an RCU one and add read_pnet_rcu()
| * 23dca5be79 ipv4: add RCU protection to ip4_dst_hoplimit()
| * 852805b6cb clocksource: Use migrate_disable() to avoid calling get_random_u32() in atomic context
| * 0bebe3e832 clocksource: Use pr_info() for "Checking clocksource synchronization" message
| * 791d0082c1 btrfs: fix hole expansion when writing at an offset beyond EOF
| * e190ae6413 mlxsw: Add return value check for mlxsw_sp_port_get_stats_raw()
| * 6888e6835b mmc: mtk-sd: Fix register settings for hs400(es) mode
| * 4e5a36ab66 arm64: Handle .ARM.attributes section in linker scripts
| * 285f023740 regmap-irq: Add missing kfree()
| * 27a39d006f partitions: mac: fix handling of bogus partition table
| * 1819802e29 gpio: stmpe: Check return value of stmpe_reg_read in stmpe_gpio_irq_sync_unlock
| * 4e3a60429a gpiolib: acpi: Add a quirk for Acer Nitro ANV14
| * 6b67893e34 alpha: align stack for page fault and user unaligned trap handlers
| * d470522c59 serial: 8250: Fix fifo underflow on flush
| * 28e51dd4f2 cgroup: fix race between fork and cgroup.kill
| * d7c1901476 efi: Avoid cold plugged memory for placing the kernel
| * 17d24ff755 alpha: make stack 16-byte aligned (most cases)
| * 44218221b6 can: j1939: j1939_sk_send_loop(): fix unable to send messages with data length zero
| * d79de85b48 can: c_can: fix unbalanced runtime PM disable in error path
| * 84b9ac5997 can: ctucanfd: handle skb allocation failure
| * ba105f7a64 USB: serial: option: drop MeiG Smart defines
| * aedb158645 USB: serial: option: fix Telit Cinterion FN990A name
| * ae25e7c2cb USB: serial: option: add Telit Cinterion FN990B compositions
| * 4f87d7a63e USB: serial: option: add MeiG Smart SLM828
| * 8ca7d88413 usb: cdc-acm: Fix handling of oversized fragments
| * 7828e9363a usb: cdc-acm: Check control transfer buffer size before access
| * fd128ae741 USB: cdc-acm: Fill in Renesas R-Car D3 USB Download mode quirk
| * c3720b04df USB: hub: Ignore non-compliant devices with too many configs or interfaces
| * 9f6860a9c1 usb: gadget: f_midi: fix MIDI Streaming descriptor lengths
| * e90b0bc51e USB: Add USB_QUIRK_NO_LPM quirk for sony xperia xz1 smartphone
| * 0ac7f61304 USB: quirks: add USB_QUIRK_NO_LPM quirk for Teclast dist
| * f7e2ded996 usb: core: fix pipe creation for get_bMaxPacketSize0
| * d8490c57b6 USB: pci-quirks: Fix HCCPARAMS register error for LS7A EHCI
| * d6a9106afb usb: dwc2: gadget: remove of_node reference upon udc_stop
| * 74af18a747 usb: gadget: udc: renesas_usb3: Fix compiler warning
* | 12b82de534 Merge db8686b24a ("usb: roles: set switch registered flag early on") into android14-6.1-lts
|\|
| * db8686b24a usb: roles: set switch registered flag early on
* | 897e9179dd Revert "of: reserved-memory: Fix using wrong number of cells to get property 'alignment'"
* | 97c6e8c639 Revert "pps: Fix a use-after-free"
* | 1a79d14d69 Merge a298df1bbe ("usb: dwc3: Fix timeout issue during controller enter/exit from halt state") into android14-6.1-lts
|\|
| * a298df1bbe usb: dwc3: Fix timeout issue during controller enter/exit from halt state
| * d00438789b perf/x86/intel: Ensure LBRs are disabled when a CPU is starting
| * 0105b41790 KVM: nSVM: Enter guest mode before initializing nested NPT MMU
| * 5393cf2231 KVM: x86: Reject Hyper-V's SEND_IPI hypercalls if local APIC isn't in-kernel
| * 3484ea3315 drm/amdgpu: avoid buffer overflow attach in smu_sys_set_pp_table()
| * 781a06fd26 batman-adv: Drop unmanaged ELP metric worker
| * 792a14c90d batman-adv: Ignore neighbor throughput metrics in error case
| * 7eb5dd2016 batman-adv: fix panic during interface removal
| * 40336ad6ec ASoC: Intel: bytcr_rt5640: Add DMI quirk for Vexia Edu Atla 10 tablet 5V
| * 1da2697307 orangefs: fix a oob in orangefs_debug_write
| * b47002ed65 x86/mm/tlb: Only trim the mm_cpumask once a second
| * 04bac40ad5 selftests: gpio: gpio-sim: Fix missing chip disablements
| * 0db813696d Grab mm lock before grabbing pt lock
| * f601bb7d53 vfio/pci: Enable iowrite64 and ioread64 for vfio pci
| * 8b1d868376 rtla/timerlat_top: Abort event processing on second signal
| * bb38fcfa38 rtla/timerlat_hist: Abort event processing on second signal
| * 5e7b6e4446 scsi: ufs: bsg: Set bsg_queue to NULL after removal
| * e86cc66b10 PCI: switchtec: Add Microchip PCI100X device IDs
| * d2eb7e8732 PCI/DPC: Quirk PIO log size for Intel Raptor Lake-P
| * 86307e443c media: vidtv: Fix a null-ptr-deref in vidtv_mux_stop_thread
| * a4dd6fc7ef media: cxd2841er: fix 64-bit division on gcc-9
| * 7bbbd311dd fbdev: omap: use threaded IRQ for LCD DMA
| * b9c5fb0739 RDMA/efa: Reset device on probe failure
| * ca2701997c x86/xen: allow larger contiguous memory regions in PV guests
| * 7a32e55815 xen: remove a confusing comment on auto-translated guest I/O
| * 099606a7b2 xen/swiotlb: relax alignment requirements
| * 6edce95922 gpio: bcm-kona: Add missing newline to dev_err format string
| * 1c1b7260c9 gpio: bcm-kona: Make sure GPIO bits are unlocked when requesting IRQ
| * a6d8655b9c gpio: bcm-kona: Fix GPIO lock/unlock for banks above bank 0
| * fae3c2825d drm/i915/selftests: avoid using uninitialized context
| * 99354bc51c cgroup: Remove steal time from usage_usec
| * 4ff25f0b18 arm64: cacheinfo: Avoid out-of-bounds write to cacheinfo array
| * 4512482e48 team: better TEAM_OPTION_TYPE_STRING validation
| * 79aea5e551 vxlan: check vxlan_vnigroup_init() return value
| * c7574740be vrf: use RCU protection in l3mdev_l3_out()
| * d77570ae43 ndisc: ndisc_send_redirect() must use dev_get_by_index_rcu()
| * 90056ece99 ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt
| * 436f48c864 HID: hid-thrustmaster: fix stack-out-of-bounds read in usb_check_int_endpoints()
| * 4e7113f591 HID: multitouch: Add NULL check in mt_input_configured
| * 457bdeffca pinctrl: cy8c95x0: Respect IRQ trigger settings from firmware
| * 38d345f612 NFSD: fix hang in nfsd4_shutdown_callback
| * 2e59b2b687 nfsd: clear acl_access/acl_default after releasing them
| * 0c7ba1d65c btrfs: avoid monopolizing a core when activating a swap file
| * 8c481939fb Revert "btrfs: avoid monopolizing a core when activating a swap file"
| * 91932db1d9 pps: Fix a use-after-free
* | 43908d99f2 Merge 09b288fb7f ("maple_tree: simplify split calculation") into android14-6.1-lts
|\|
| * 09b288fb7f maple_tree: simplify split calculation
| * c4720d0490 maple_tree: fix static analyser cppcheck issue
| * de5bd24197 tty: xilinx_uartps: split sysrq handling
| * b740d3c3cb mptcp: prevent excessive coalescing on receive
| * 22b0734c94 mptcp: pm: only set fullmesh for subflow endp
| * d6bba3ece9 cachefiles: Fix NULL pointer dereference in object->file
| * 918cf2616a ocfs2: check dir i_size in ocfs2_find_entry
| * b880f21f61 gpio: xilinx: remove excess kernel doc
| * 846d74f329 net/ncsi: use dev_set_mac_address() for Get MC MAC Address handling
| * ba26606471 MIPS: ftrace: Declare ftrace_get_parent_ra_addr() as static
| * 58d38d3245 io_uring/rw: commit provided buffer state on async
| * a1b17713b3 io_uring: fix io_req_prep_async with provided buffers
| * 233b210a67 io_uring: fix multishots with selected buffers
| * 30ab0f6c90 rtc: zynqmp: Fix optional clock name property
| * 5d1041c76d ptp: Ensure info->enable callback is always set
| * cd78038467 pinctrl: samsung: fix fwnode refcount cleanup if platform_get_irq_optional() fails
| * 3b88ea45a6 rtla/timerlat_top: Stop timerlat tracer on signal
| * b854ac0024 rtla/timerlat_hist: Stop timerlat tracer on signal
| * 6074e23ded rtla: Add trace_instance_stop
| * 463c1d66c0 rtla/osnoise: Distinguish missing workload option
| * 220b4a9012 net: phy: c45-tjaxx: add delay between MDIO write and read in soft_reset
| * 9dc1a3404c net/ncsi: wait for the last response to Deselect Package before configuring channel
* | ed4c442cd6 Merge c56ba3ea8e ("misc: fastrpc: Fix copy buffer page size") into android14-6.1-lts
|\|
| * c56ba3ea8e misc: fastrpc: Fix copy buffer page size
| * 9c37be4abf misc: fastrpc: Fix registered buffer page address
| * 894efd31d0 misc: fastrpc: Deregister device nodes properly in error scenarios
| * e56db83b32 mtd: onenand: Fix uninitialized retlen in do_otp_read()
| * 2e432c8948 irqchip/apple-aic: Only handle PMC interrupt as FIQ when configured so
| * 3faa17654d i3c: master: Fix missing 'ret' assignment in set_speed()
| * d5a461c315 NFC: nci: Add bounds checking in nci_hci_create_pipe()
| * 3d725abdfd mailbox: tegra-hsp: Clear mailbox before using message
| * f3d80f34f5 nilfs2: fix possible int overflows in nilfs_fiemap()
| * 6e143eb4ab ocfs2: handle a symlink read error correctly
| * fc477506c5 ocfs2: fix incorrect CPU endianness conversion causing mount failure
| * f8e05df84b pnfs/flexfiles: retry getting layout segment for reads
| * 805bf50521 selftests: mptcp: connect: -f: no reconnect
| * 1485932496 vfio/platform: check the bounds of read/write syscalls
| * 5688ad8098 io_uring/net: don't retry connect operation on EPOLLERR
| * 66d90453b4 nvmem: core: improve range check for nvmem_cell_write()
| * 573d939d61 nvmem: qcom-spmi-sdam: Set size in struct nvmem_config
| * 5d5b673b4d crypto: qce - unregister previously registered algos in error path
| * 480546e656 crypto: qce - fix goto jump in error path
| * a8f8cf8705 ata: libata-sff: Ensure that we cannot write outside the allocated buffer
| * 6582174806 mm: kmemleak: fix upper boundary check for physical address objects
| * bf7c1d3b69 media: uvcvideo: Remove redundant NULL assignment
| * e5799a44c5 media: uvcvideo: Fix event flags in uvc_ctrl_send_events
| * 26f7a4767c media: ccs: Fix cleanup order in ccs_probe()
| * 33da7da2c5 media: ccs: Fix CCS static data parsing for large block sizes
| * 2e33ca528d media: ov5640: fix get_light_freq on auto
| * 2818d755e6 media: mc: fix endpoint iteration
| * bb58ccba1f soc: qcom: smem_state: fix missing of_node_put in error path
| * 71c3926459 iio: light: as73211: fix channel handling in only-color triggered buffer
| * 07bca7b592 media: ccs: Clean up parsed CCS static data on parse failure
| * 621b80eb88 kfence: skip __GFP_THISNODE allocations on NUMA systems
| * aa2ed4ee8d rv: Reset per-task monitors also for idle tasks
| * fc440b631a ACPI: PRM: Remove unnecessary strict handler address checks
| * 48baba96ae xfs: Add error handling for xfs_reflink_cancel_cow_range
| * 95e1bd05da arm64: tegra: Disable Tegra234 sce-fabric node
| * b2eb8ceab5 crypto: qce - fix priority to be less than ARMv8 CE
| * 2355c1bdf1 arm64: dts: qcom: sm8450: Fix MPSS memory length
| * 14035ff0b0 arm64: dts: qcom: sm8350: Fix MPSS memory length
| * d645891777 arm64: dts: qcom: sm6350: Fix MPSS memory length
| * d867750edb arm64: dts: qcom: sm6350: Fix ADSP memory length
| * 0f82f6f155 x86/boot: Use '-std=gnu11' to fix build with GCC 15
| * e24fc5b7bc kbuild: Move -Wenum-enum-conversion to W=2
| * db2f0cc2e9 scsi: storvsc: Set correct data length for sending SCSI command without payload
| * 57c029cab0 scsi: qla2xxx: Move FCE Trace buffer allocation to user control
| * e1caac0036 nvme-pci: Add TUXEDO IBP Gen9 to Samsung sleep quirk
| * e2d8d55309 nvme-pci: Add TUXEDO InfinityFlex to Samsung sleep quirk
| * f51027ed9b PCI: endpoint: Finish virtual EP removal in pci_epf_remove_vepf()
| * 490b3a30aa arm64: tegra: Fix Tegra234 PCIe interrupt-map
| * d26408df0e ALSA: hda: Fix headset detection failure due to unstable sort
| * e83b3f494a ALSA: hda/realtek: Enable headset mic on Positivo C6400
| * 996ca83c46 Revert "media: uvcvideo: Require entities to have a non-zero unique ID"
| * 6c26619eff block: don't revert iter for -EIOCBQUEUED
| * b0dd4a661c mips/math-emu: fix emulation of the prefx instruction
| * 7428e565c4 dm-crypt: track tag_offset in convert_context
| * eaf019088c dm-crypt: don't update io->sector after kcryptd_crypt_write_io_submit()
| * 3a43f1d99b powerpc/pseries/eeh: Fix get PE state translation
| * b5a3ec35c7 MIPS: Loongson64: remove ROM Size unit in boardinfo
| * 77c97ed7c8 serial: sh-sci: Do not probe the serial port if its slot in sci_ports[] is in use
| * cf174b3c1b serial: sh-sci: Drop __initdata macro for port_cfg
| * 9c88b3a3fa soc: qcom: socinfo: Avoid out of bounds read of serial number
| * cf016dfd20 ASoC: acp: Support microphone from Lenovo Go S
* | 590a924310 Merge bde2043174 ("usb: gadget: f_tcm: Don't prepare BOT write request twice") into android14-6.1-lts
|\|
| * bde2043174 usb: gadget: f_tcm: Don't prepare BOT write request twice
| * c38aea9f67 usb: gadget: f_tcm: ep_autoconfig with fullspeed endpoint
| * c686d44fe4 usb: gadget: f_tcm: Decrement command ref count on cleanup
| * ff42148e63 usb: gadget: f_tcm: Translate error to sense
| * 4e51d6d093 wifi: brcmfmac: fix NULL pointer dereference in brcmf_txfinalize()
| * 5c34c430c0 wifi: rtlwifi: rtl8821ae: Fix media status report
| * 855be3006f HID: hid-sensor-hub: don't use stale platform-data on remove
| * 0e83ec8c8e of: reserved-memory: Fix using wrong number of cells to get property 'alignment'
| * 0515b1a75f of: Fix of_find_node_opts_by_path() handling of alias+path+options
* | 028c8a63f1 Merge d8d6db8e98 ("of: Correct child specifier used as input of the 2nd nexus node") into android14-6.1-lts
|\|
| * d8d6db8e98 of: Correct child specifier used as input of the 2nd nexus node
| * 92a3de55cf scsi: ufs: core: Fix the HIGH/LOW_TEMP Bit Definitions
| * 92ca4f40f6 efi: libstub: Use '-std=gnu11' to fix build with GCC 15
| * 431b6ef271 blk-cgroup: Fix class @block_class's subsystem refcount leakage
* | aa28806b5b Merge 99bf7c8414 ("clk: qcom: clk-rpmh: prevent integer overflow in recalc_rate") into android14-6.1-lts
|\|
| * 99bf7c8414 clk: qcom: clk-rpmh: prevent integer overflow in recalc_rate
| * abfc191797 clk: qcom: gcc-mdm9607: Fix cmd_rcgr offset for blsp1_uart6 rcg
| * 3daca90508 clk: qcom: dispcc-sm6350: Add missing parent_map for a clock
| * 39336edd14 clk: qcom: gcc-sm6350: Add missing parent_map for two clocks
| * d2331d5250 clk: qcom: clk-alpha-pll: fix alpha mode configuration
| * 60a2399cce clk: sunxi-ng: a100: enable MMC clock reparenting
* | 0a07f883ce Merge 7a58944173 ("Bluetooth: L2CAP: accept zero as a special value for MTU auto-selection") into android14-6.1-lts
|\|
| * 7a58944173 Bluetooth: L2CAP: accept zero as a special value for MTU auto-selection
| * 297ce7f544 Bluetooth: L2CAP: handle NULL sock pointer in l2cap_sock_alloc
| * 081ae90cb4 drm/i915: Drop 64bpp YUV formats from ICL+ SDR planes
| * 17f556e542 drm/komeda: Add check for komeda_get_layer_fourcc_list()
| * 3c81bcf663 drm/i915/guc: Debug print LRC state entries only if the context is pinned
* | 15e832da23 Merge 915697c2e6 ("Revert "drm/amd/display: Use HW lock mgr for PSR1"") into android14-6.1-lts
|\|
| * 915697c2e6 Revert "drm/amd/display: Use HW lock mgr for PSR1"
| * 4901639380 drm/amd/pm: Mark MM activity as unsupported
| * 760568c1f6 ksmbd: fix integer overflows on 32 bit systems
| * 7805d1e745 KVM: s390: vsie: fix some corner-cases when grabbing vsie pages
| * d817e51066 KVM: Explicitly verify target vCPU is online in kvm_get_vcpu()
* | f967d1da0e Merge 27cf74b92e ("arm64: dts: rockchip: increase gmac rx_delay on rk3399-puma") into android14-6.1-lts
|\|
| * 27cf74b92e arm64: dts: rockchip: increase gmac rx_delay on rk3399-puma
| * 43f19483ad drm/rockchip: cdn-dp: Use drm_connector_helper_hpd_irq_event()
| * 95506c7f33 binfmt_flat: Fix integer overflow bug on 32 bit systems
| * e999c3020a fs/proc: do_task_stat: Fix ESP not readable during coredump
| * b6cbef573c m68k: vga: Fix I/O defines
| * 2eb70a0b5b s390/futex: Fix FUTEX_OP_ANDN implementation
| * 7879a3e54c smb: client: change lease epoch type from unsigned int to __u16
| * c6b9eaeff4 drm/modeset: Handle tiled displays in pan_display_atomic.
| * aab59f1ca9 ALSA: hda/realtek: Enable Mute LED on HP Laptop 14s-fq1xxx
| * cd413f57e8 leds: lp8860: Write full EEPROM, not only half of it
| * 4e46560fa3 cpufreq: s3c64xx: Fix compilation warning
| * 24d7e1f9ca net: sched: Fix truncation of offloaded action statistics
| * 2750159f52 tun: revert fix group permission check
| * 7b79ca9a1d netem: Update sch->q.qlen before qdisc_tree_reduce_backlog()
| * 7998880cb4 ACPI: property: Fix return value for nval == 0 in acpi_data_prop_read()
| * 64934b8b8e x86/xen: add FRAME_END to xen_hypercall_hvm()
| * 522d726824 x86/xen: fix xen_hypercall_hvm() to not clobber %rbx
| * 667f61b349 net: rose: lock the socket in rose_bind()
| * 177c1b5246 net: atlantic: fix warning during hot unplug
| * 3d3cce89ae gpio: pca953x: Improve interrupt support
| * 1b87044469 udp: gso: do not drop small packets when PMTU reduces
| * fe466eeef3 tg3: Disable tg3 PCIe AER on system reboot
| * f8f7d4d16f gpu: drm_dp_cec: fix broken CEC adapter properties check
| * 8890f690c5 firmware: iscsi_ibft: fix ISCSI_IBFT Kconfig entry
| * 7b5aafd195 nvme: handle connectivity loss in nvme_set_queue_count
| * 99b549bba1 xfs: don't over-report free space or inodes in statvfs
| * d7d9c694d3 xfs: report realtime block quota limits on realtime directories
| * f0ed2d0abc gpio: xilinx: Convert gpio_lock to raw spinlock
| * 39255cac80 gpio: xilinx: Convert to immutable irq_chip
| * b0a199accf net/ncsi: fix locking in Get MAC Address handling
| * ae0cd71988 net/ncsi: Add NC-SI 1.2 Get MC MAC Address command
| * 7ae96eba35 usb: chipidea: ci_hdrc_imx: decrement device's refcount in .remove() and in the error path of .probe()
| * b2757f2523 usb: chipidea/ci_hdrc_imx: Convert to platform remove callback returning void
| * bce6adebc9 KVM: e500: always restore irqs
| * deead14da7 KVM: PPC: e500: Use __kvm_faultin_pfn() to handle page faults
| * d2004572fc KVM: PPC: e500: Mark "struct page" pfn accessed before dropping mmu_lock
| * 8b92e9cc04 KVM: PPC: e500: Mark "struct page" dirty in kvmppc_e500_shadow_map()
| * 86aca3233f platform/x86: acer-wmi: Ignore AC events
| * 28c35589a5 Input: allocate keycode for phone linking
| * 6d65d560c0 ASoC: amd: Add ACPI dependency to fix build error
| * b65ba76830 ASoC: soc-pcm: don't use soc_pcm_ret() on .prepare callback
| * 4f8b210823 platform/x86: int3472: Check for adev == NULL
* | a3fdfc6e1c ANDROID: GKI: virtual_device: add __drm_atomic_helper_plane_duplicate_state to the symbol list
* | 96d435eb13 Revert "exec: fix up /proc/pid/comm in the execveat(AT_EMPTY_PATH) case"
* | ac6e319e7c Merge b3847b6622 ("iommu/arm-smmu-v3: Clean up more on probe failure") into android14-6.1-lts
|\|
| * b3847b6622 iommu/arm-smmu-v3: Clean up more on probe failure
| * 6821918f45 x86/kexec: Allocate PGD for x86_64 transition page tables separately
| * 14fc53fb25 selftests/net/ipsec: Fix Null pointer dereference in rtattr_pack()
| * 5328b25bbd tipc: re-order conditions in tipc_crypto_key_rcv()
| * 3a78d7c76b mmc: sdhci-msm: Correctly set the load for the regulator
| * 0b5ccf9a4e net: wwan: iosm: Fix hibernation by re-binding the driver around it
| * 75e65b983c Bluetooth: MGMT: Fix slab-use-after-free Read in mgmt_remove_adv_monitor_sync
| * 87fc26b018 APEI: GHES: Have GHES honor the panic= setting
| * f2e5a46a27 i2c: Force ELAN06FA touchpad I2C bus freq to 100KHz
| * 7ce13d8b59 wifi: iwlwifi: avoid memory leak
| * af525a8b2a wifi: brcmfmac: Check the return value of of_property_read_string_index()
| * 67adfca904 net/mlx5: use do_aux_work for PHC overflow checks
| * 408c7704ce HID: Wacom: Add PCI Wacom device support
| * abf856bd8e mfd: lpc_ich: Add another Gemini Lake ISA bridge PCI device-id
| * a01c200fa7 tomoyo: don't emit warning in tomoyo_write_control()
| * ada9df08b3 wifi: brcmsmac: add gain range check to wlc_phy_iqcal_gainparams_nphy()
| * d795108824 mmc: core: Respect quirk_max_rate for non-UHS SDIO card
| * b2c0850a31 tun: fix group permission check
| * a0dec65f88 safesetid: check size of policy writes
| * 505899fb11 drm/bridge: it6505: fix HDCP CTS compare V matching
| * 2bdeb89b8a drm/bridge: it6505: fix HDCP encryption when R0 ready
| * 8c335d1441 drm/bridge: it6505: fix HDCP Bstatus check
| * 385b842b91 drm/bridge: it6505: Change definition MAX_HDCP_DOWN_STREAM_COUNT
| * 231ebd6ee9 drm/amd/display: Fix Mode Cutoff in DSC Passthrough to DP2.1 Monitor
| * 9a6d43844d printk: Fix signed integer overflow when defining LOG_BUF_LEN_MAX
| * b04b69819b drm/virtio: New fence for every plane update
| * 0f4fdc38f7 x86/amd_nb: Restrict init function to AMD-based systems
| * 448c419de6 lockdep: Fix upper limit for LOCKDEP_*_BITS configs
| * 1ebadf0c15 sched: Don't try to catch up excess steal time.
| * f8b7f725ca btrfs: convert BUG_ON in btrfs_reloc_cow_block() to proper error handling
| * db4223632a btrfs: fix data race when accessing the inode's disk_i_size at btrfs_drop_extents()
| * b45605fac3 exec: fix up /proc/pid/comm in the execveat(AT_EMPTY_PATH) case
| * 4dcd3360bc arm64/mm: Ensure adequate HUGE_MAX_HSTATE
| * 6ba4663ada btrfs: fix use-after-free when attempting to join an aborted transaction
| * e382b6946d pinctrl: stm32: fix array read out of bound
| * 62d33b9e68 s390: Add '-std=gnu11' to decompressor and purgatory CFLAGS
| * ce0ef98de0 ptp: Properly handle compat ioctls
| * ca3aa28ea6 btrfs: output the reason for open_ctree() failure
| * fde89fe11b media: imx-jpeg: Fix potential error pointer dereference in detach_pm()
| * 3311c5395e staging: media: max96712: fix kernel oops when removing module
| * f0c33e7d38 usb: gadget: f_tcm: Don't free command immediately
| * 9232719ac9 media: uvcvideo: Fix double free in error path
| * 2cf54928e7 remoteproc: core: Fix ida_free call while not allocated
* | fd1d84ca7a Revert "mptcp: handle fastopen disconnect correctly"
* | f6d414dac6 Merge 73e268b4be ("mptcp: handle fastopen disconnect correctly") into android14-6.1-lts
|\|
| * 73e268b4be mptcp: handle fastopen disconnect correctly
* | a32de01c74 Merge 3b5332d416 ("mptcp: consolidate suboption status") into android14-6.1-lts
|\|
| * 3b5332d416 mptcp: consolidate suboption status
* | 44b6a8ed8f Revert "usb: typec: tcpci: Prevent Sink disconnection before vPpsShutdown in SPR PPS"
* | 66c6868930 Merge 4953207927 ("usb: typec: tcpci: Prevent Sink disconnection before vPpsShutdown in SPR PPS") into android14-6.1-lts
|\|
| * 4953207927 usb: typec: tcpci: Prevent Sink disconnection before vPpsShutdown in SPR PPS
* | 6e376e10ea Merge 17d426628c ("usb: typec: tcpm: set SRC_SEND_CAPABILITIES timeout to PD_T_SENDER_RESPONSE") into android14-6.1-lts
|\|
| * 17d426628c usb: typec: tcpm: set SRC_SEND_CAPABILITIES timeout to PD_T_SENDER_RESPONSE
| * 64925ab46c usb: dwc3: core: Defer the probe until USB power supply ready
| * 32814861f1 usb: dwc3-am62: Fix an OF node leak in phy_syscon_pll_refclk()
* | 11cb0c5d29 Merge 2c3e83538f ("usb: gadget: f_tcm: Fix Get/SetInterface return value") into android14-6.1-lts
|\|
| * 2c3e83538f usb: gadget: f_tcm: Fix Get/SetInterface return value
* | c6490faa0a Merge 93a56dbe12 ("drivers/card_reader/rtsx_usb: Restore interrupt based detection") into android14-6.1-lts
|\|
| * 93a56dbe12 drivers/card_reader/rtsx_usb: Restore interrupt based detection
| * 4ff18870af usb: xhci: Fix NULL pointer dereference on certain command aborts
* | 9fb90380c1 Merge e10b392a74 ("net: usb: rtl8150: enable basic endpoint checking") into android14-6.1-lts
|\|
| * e10b392a74 net: usb: rtl8150: enable basic endpoint checking
| * 485997cc74 ALSA: usb-audio: Add delay quirk for iBasso DC07 Pro
| * 2d0ce53755 ktest.pl: Check kernelrelease return in get_version
| * df948b5ba6 drm/amd/display: fix double free issue during amdgpu module unload
| * 2e44c96083 nvme: fix metadata handling in nvme-passthrough
| * 2ac254343d netfilter: nf_tables: reject mismatching sum of field_len with set key length
| * 256a57b2f7 kbuild: switch from lz4c to lz4 for compression
| * 386aca2053 NFSD: Reset cb_seq_status after NFS4ERR_DELAY
| * de605097eb f2fs: Introduce linear search for dentries
| * 9a1889f5fe hexagon: Fix unbalanced spinlock in die()
| * 1803219423 hexagon: fix using plain integer as NULL pointer warning in cmpxchg
| * bdaa726c15 kconfig: fix memory leak in sym_warn_unmet_dep()
| * 261bafc8bf kconfig: WERROR unmet symbol dependency
| * ccc65c06b1 kconfig: deduplicate code in conf_read_simple()
| * d2a7e49ae2 kconfig: remove unused code for S_DEF_AUTO in conf_read_simple()
| * fc4f353d8f kconfig: require a space after '#' for valid input
| * 328e41aae2 kconfig: add warn-unknown-symbols sanity check
| * 5aa5075b61 kconfig: fix file name in warnings when loading KCONFIG_DEFCONFIG_LIST
| * cd995b7eee ASoC: rockchip: i2s_tdm: Re-add the set_sysclk callback
| * ff83cd07bf genksyms: fix memory leak when the same symbol is read from *.symref file
| * ce63da1e60 genksyms: fix memory leak when the same symbol is added from source
| * 24f62cee4e net: hsr: fix fill_frame_info() regression vs VLAN packets
| * ff93e43a34 net: sh_eth: Fix missing rtnl lock in suspend/resume path
| * d51d31057c bgmac: reduce max frame size to support just MTU 1500
| * c94ab07edc net: davicom: fix UAF in dm9000_drv_remove
| * cb1de9309a vxlan: Fix uninit-value in vxlan_vnifilter_dump()
| * d3c1025ed7 net: netdevsim: try to close UDP port harness races
| * f55c88e3ca net: rose: fix timer races against user threads
| * 2770b2c17b iavf: allow changing VLAN state without calling PF
| * e7fe27d6a2 PM: hibernate: Add error handling for syscore_suspend()
| * 57177c5f47 ipmr: do not call mr_mfc_uses_dev() for unres entries
| * 675916b5a9 net: fec: implement TSO descriptor cleanup
| * 796be7608a gpio: mxc: remove dead code after switch to DT-only
| * e876522659 net: hns3: fix oops when unload drivers paralleling
| * c3141c17ca regulator: core: Add missing newline character
| * e01b55f261 ubifs: skip dumping tnc tree when zroot is null
| * c72b7a474d rtc: pcf85063: fix potential OOB write in PCF85063 NVMEM read
| * ef0f73b174 dmaengine: ti: edma: fix OF node reference leaks in edma_driver
| * 2739c823dc xfrm: replay: Fix the update of replay_esn->oseq_hi for GSO
* | 015c802557 Merge ad8f71d64a ("tools/bootconfig: Fix the wrong format specifier") into android14-6.1-lts
|\|
| * ad8f71d64a tools/bootconfig: Fix the wrong format specifier
| * 21ef9203a4 NFSv4.2: mark OFFLOAD_CANCEL MOVEABLE
| * 6f13ade37a NFSv4.2: fix COPY_NOTIFY xdr buf size calculation
| * 249a19f158 serial: 8250: Adjust the timeout for FIFO mode
| * 65c6404403 module: Extend the preempt disabled section in dereference_symbol_descriptor().
| * 52368b31a4 ocfs2: mark dquot as inactive if failed to start trans while releasing dquot
| * 0baeb686a7 scsi: ufs: bsg: Delete bsg_dev when setting up bsg fails
| * 808e6898e0 scsi: mpt3sas: Set ioc->manu_pg11.EEDPTagMode directly to 1
| * 22389a1974 PCI: endpoint: pci-epf-test: Fix check for DMA MEMCPY test
| * b5d46ca8bd PCI: epf-test: Simplify DMA support checks
| * f12f548cc4 PCI: endpoint: pci-epf-test: Set dma_chan_rx pointer to NULL on error
| * 24576899c4 PCI: rcar-ep: Fix incorrect variable used when calling devm_request_mem_region()
| * 1dd01dc435 staging: media: imx: fix OF node leak in imx_media_add_of_subdevs()
| * 8f18d9e6f6 mtd: hyperbus: hbmc-am654: fix an OF node reference leak
| * 73bcd1bd3d mtd: hyperbus: hbmc-am654: Convert to platform remove callback returning void
| * 74a1181b78 media: uvcvideo: Propagate buf->error to userspace
| * dfecf44585 media: camif-core: Add check for clk_enable()
| * 0e00f92ccc media: mipi-csis: Add check for clk_enable()
| * 8fdb29ab86 media: i2c: ov9282: Correct the exposure offset
| * 86ba95110b media: i2c: imx412: Add missing newline to prints
| * 1161aa53fa media: marvell: Add check for clk_enable()
| * ee14a35b97 PCI: endpoint: Destroy the EPC device in devm_pci_epc_destroy()
| * fafd5f2dd7 media: lmedm04: Handle errors for lme2510_int_read
| * 04e42c7eb3 media: rc: iguanair: handle timeouts
| * 44d9c94b7a iommufd/iova_bitmap: Fix shift-out-of-bounds in iova_bitmap_offset_to_index()
| * 720653309d RDMA/rxe: Fix the warning "__rxe_cleanup+0x12c/0x170 [rdma_rxe]"
| * e28b030aec efi: sysfb_efi: fix W=1 warnings when EFI is not set
| * f1142d4e7a of: reserved-memory: Do not make kmemleak ignore freed address
| * 8b102f46ea RDMA/mlx5: Fix indirect mkey ODP page count
| * 5639324845 fbdev: omapfb: Fix an OF node leak in dss_of_port_get_parent_device()
| * df23e33009 ARM: dts: mediatek: mt7623: fix IR nodename
| * 6d309bdcbf arm64: dts: qcom: sm8250: Fix interrupt types of camss interrupts
| * 63378b32d8 arm64: dts: qcom: sdm845: Fix interrupt types of camss interrupts
| * 5aeb86d6eb dts: arm64: mediatek: mt8195: Remove MT8183 compatible for OVL
| * c0f8702aa2 arm64: dts: qcom: sc8280xp: Fix up remoteproc register space sizes
| * 5ec27cae0b arm64: dts: qcom: sm8150-microsoft-surface-duo: fix typos in da7280 properties
| * 51a2a74941 arm64: dts: qcom: sc7180-trogdor-pompom: rename 5v-choke thermal zone
| * 948ab28b32 arm64: dts: qcom: sc7180-*: Remove thermal zone polling delays
| * c2781867da arm64: dts: qcom: pm6150l: add temp sensor and thermal zone config
| * 4086557f09 arm64: dts: qcom: sc7180-trogdor-quackingstick: add missing avee-supply
| * a82c841556 arm64: dts: qcom: sc7180: Drop redundant disable in mdp
| * 63b1a12d54 arm64: dts: qcom: sc7180: Don't enable lpass clocks by default
| * ba1015f03c arm64: dts: qcom: sc7180-trogdor-wormdingler: use just "port" in panel
| * cb33bd2d74 arm64: dts: qcom: sc7180-trogdor-quackingstick: use just "port" in panel
| * cd528a7e26 arm64: dts: qcom: sc7180-idp: use just "port" in panel
| * 0260175d7d arm64: dts: qcom: sc7180: Add compat qcom,sc7180-dsi-ctrl
| * 23571bd282 arm64: dts: ti: k3-am62a: Remove duplicate GICR reg
| * aedfacb103 arm64: dts: ti: k3-am62: Remove duplicate GICR reg
| * d91c71aa96 arm64: dts: qcom: sm8450: correct sleep clock frequency
| * cd0547bdfe arm64: dts: qcom: sm8350: correct sleep clock frequency
| * 4ceac1c1cb arm64: dts: qcom: sm8250: correct sleep clock frequency
| * a806d35edf arm64: dts: qcom: sm6125: correct sleep clock frequency
| * c538832887 arm64: dts: qcom: sc7280: correct sleep clock frequency
| * 7a53245d1e arm64: dts: qcom: msm8994: correct sleep clock frequency
| * 8cc1606b03 arm64: dts: qcom: msm8916: correct sleep clock frequency
| * 3afc22ff5e arm64: dts: qcom: sm7225-fairphone-fp4: Drop extra qcom,msm-id value
| * 7e123a7ad5 arm64: dts: qcom: msm8994: Describe USB interrupts
| * c0e803316a arm64: dts: qcom: msm8996: Fix up USB3 interrupts
| * 220aabfba5 arm64: dts: qcom: msm8996-xiaomi-gemini: Fix LP5562 LED1 reg property
| * b7e29356b8 arm64: dts: mediatek: mt8183-kukui-jacuzzi: Drop pp3300_panel voltage settings
| * e9d07e91de memory: tegra20-emc: fix an OF node reference bug in tegra_emc_find_node_by_ram_code()
| * 6ac1fac004 RDMA/srp: Fix error handling in srp_add_port
| * 8c7b8994df arm64: dts: mediatek: mt8183: willow: Support second source touchscreen
| * ec5a482257 arm64: dts: mediatek: mt8183: kenzo: Support second source touchscreen
| * ac8ab6287a arm64: dts: mediatek: mt8173-evb: Fix MT6397 PMIC sub-node names
| * 66edee0acd arm64: dts: mediatek: mt8173-elm: Fix MT6397 PMIC sub-node names
| * 7dc582094c arm64: dts: mediatek: mt8195-demo: Drop regulator-compatible property
| * f9cc68128c arm64: dts: mediatek: mt8195-cherry: Drop regulator-compatible property
| * 61bd77ac1a arm64: dts: mediatek: mt8192-asurada: Drop regulator-compatible property
| * 660430ad74 arm64: dts: mediatek: mt8173-elm: Drop regulator-compatible property
| * 382655d224 arm64: dts: mediatek: mt8173-evb: Drop regulator-compatible property
| * 4422f452d0 rdma/cxgb4: Prevent potential integer overflow on 32bit
| * 2d4c46ad83 RDMA/mlx4: Avoid false error about access to uninitialized gids array
| * f192654731 arm64: dts: mediatek: mt8516: reserve 192 KiB for TF-A
| * abc154b1c1 arm64: dts: mediatek: mt8516: add i2c clock-div property
| * 67e913e65a arm64: dts: mediatek: mt8516: fix wdt irq type
| * bf9b6b6c27 arm64: dts: mediatek: mt8516: fix GICv2 range
| * 71efb31f8c arm64: dts: mt8183: set DMIC one-wire mode on Damu
| * aa874b5fbd ARM: at91: pm: change BU Power Switch to automatic mode
| * 49ad06896c soc: atmel: fix device_node release in atmel_soc_device_init()
| * 208e102a2f smb: client: fix oops due to unset link speed
| * 7000507bb0 padata: avoid UAF for reorder_work
| * c8c32dc774 padata: add pd get/put refcnt helper
| * 0ae2f332cf padata: fix UAF in padata_reorder
| * 6d1d30b94b ALSA: hda/realtek - Fixed headphone distorted sound on Acer Aspire A115-31 laptop
* | 3e716b1ee2 Revert "bpf: tcp: Mark bpf_load_hdr_opt() arg2 as read-write"
* | 9775060702 Merge 8f7cc7c763 ("bpf: tcp: Mark bpf_load_hdr_opt() arg2 as read-write") into android14-6.1-lts
|\|
| * 8f7cc7c763 bpf: tcp: Mark bpf_load_hdr_opt() arg2 as read-write
* | 0bc46e8fb4 Merge be42a09fe8 ("bpf: Send signals asynchronously if !preemptible") into android14-6.1-lts
|\|
| * be42a09fe8 bpf: Send signals asynchronously if !preemptible
| * db7b15a67f pinctrl: stm32: Add check for clk_enable()
| * a8d52de0a6 pinctrl: stm32: check devm_kasprintf() returned value
| * 1a1cfd1456 pinctrl: stm32: Add check for devm_kcalloc
| * 75285cb2b4 pinctrl: stm32: set default gpio line names using pin names
* | 0d704e39b1 Merge e397ad3f16 ("ASoC: Intel: avs: Fix theoretical infinite loop") into android14-6.1-lts
|\|
| * e397ad3f16 ASoC: Intel: avs: Fix theoretical infinite loop
| * 756e5e2d8b padata: fix sysfs store callback check
| * 1a36117e16 crypto: ixp4xx - fix OF node reference leaks in init_ixp_crypto()
| * dbacf8ffed crypto: hisilicon/sec2 - fix for aead invalid authsize
| * ff1de68f69 crypto: hisilicon/sec2 - fix for aead icv error
| * fdc596efd7 crypto: hisilicon/sec2 - optimize the error return process
| * d55edbe092 ktest.pl: Remove unused declarations in run_bisect_test function
| * 1c371a6ecd ASoC: renesas: rz-ssi: Use only the proper amount of dividers
| * 2a0dedfc10 ASoC: sun4i-spdif: Add clock multiplier settings
| * c512603824 libbpf: Fix segfault due to libelf functions not setting errno
| * 054e5c4ded tools/testing/selftests/bpf/test_tc_tunnel.sh: Fix wait for server bind
| * ef3929a80a libbpf: don't adjust USDT semaphore address if .stapsdt.base addr is missing
| * 9bdee49ad6 net/rose: prevent integer overflows in rose_setsockopt()
| * 25ccfe70dc tcp_cubic: fix incorrect HyStart round start detection
| * aea5cca681 net: ethernet: ti: am65-cpsw: fix freeing IRQ in am65_cpsw_nuss_remove_tx_chns()
| * 8b361a1fbc netfilter: nft_flow_offload: update tcp state flags under lock
| * deda09c054 net: sched: Disallow replacing of child qdisc from one parent to another
| * b1cb37a31a net: avoid race between device unregistration and ethnl ops
| * 349bb80fa0 net/mlxfw: Drop hard coded max FW flash image size
| * 5860abbf15 net: let net.core.dev_weight always be non-zero
| * a1a91f48ba selftests/landlock: Fix error message
| * 1bd57a6e37 pwm: stm32: Add check for clk_enable()
| * 99a549ed85 clk: analogbits: Fix incorrect calculation of vco rate delta
| * aa79401c91 wifi: cfg80211: adjust allocation of colocated AP data
| * 70d5f270b4 wifi: cfg80211: Handle specific BSSID in 6GHz scanning
| * f53b546a1f selftests: harness: fix printing of mismatch values in __EXPECT()
| * 7779f75156 selftests: timers: clocksource-switch: Adapt progress to kselftest framework
| * 86ed500813 cpufreq: ACPI: Fix max-frequency computation
| * 24ba636b0d wifi: mt76: mt7915: fix register mapping
| * fc2b9b4ea2 wifi: mt76: mt7921: fix using incorrect group cipher after disconnection.
| * 5d60977e36 wifi: mt76: mt76u_vendor_request: Do not print error messages when -EPROTO
| * 7d61212289 landlock: Handle weird files
| * f08f0d0392 net/smc: fix data error when recvmsg with MSG_PEEK flag
| * 325624d4e5 wifi: mac80211: Fix common size calculation for ML element
| * dfe9a04330 wifi: mac80211: prohibit deactivating all links
| * 03db657ab2 wifi: wlcore: fix unbalanced pm_runtime calls
| * 434fb6a246 samples/landlock: Fix possible NULL dereference in parse_path()
| * fa78395d95 mfd: syscon: Fix race in device_node_get_regmap()
| * 5481df0e05 mfd: syscon: Use scoped variables with memory allocators to simplify error paths
| * 166fd2aa73 mfd: syscon: Add of_syscon_register_regmap() API
| * dd955e4215 mfd: syscon: Remove extern from function prototypes
* | 759b090e5d Merge 220883fba3 ("HID: hid-thrustmaster: Fix warning in thrustmaster_probe by adding endpoint check") into android14-6.1-lts
|\|
| * 220883fba3 HID: hid-thrustmaster: Fix warning in thrustmaster_probe by adding endpoint check
| * 2d3767d322 clk: qcom: gcc-sdm845: Do not use shared clk_ops for QUPs
| * 9d965f4eda OPP: OF: Fix an OF node leak in _opp_add_static_v2()
| * 2802ed4ced ax25: rcu protect dev->ax25_ptr
| * 7ef350ae6d regulator: of: Implement the unwind path of of_regulator_match()
| * adff6ac889 team: prevent adding a device which is already a team device lower
| * a3fe76d73f clk: imx8mp: Fix clkout1/2 support
| * 1a2ac2b76e cpufreq: schedutil: Fix superfluous updates caused by need_freq_update
| * 78564038ad pwm: stm32-lp: Add check for clk_enable()
| * 2d9c5a72a9 inetpeer: do not get a refcount in inet_getpeer()
| * 557fc65e6a inetpeer: update inetpeer timestamp in inet_getpeer()
| * 78685e2346 inetpeer: remove create argument of inet_getpeer()
| * e5fcfa6262 inetpeer: remove create argument of inet_getpeer_v[46]()
| * ea1ea09154 leds: netxbig: Fix an OF node reference leak in netxbig_leds_get_of_pdata()
| * 6189035dbb dt-bindings: mfd: bd71815: Fix rsense and typos
| * 3ea492386b cpupower: fix TSC MHz calculation
| * 7667661aad ACPI: fan: cleanup resources in the error path of .probe()
| * f5a0060987 regulator: dt-bindings: mt6315: Drop regulator-compatible property
| * 2567d2fabb HID: multitouch: fix support for Goodix PID 0x01e9
| * 24f7bf4b28 wifi: rtlwifi: pci: wait for firmware loading before releasing memory
| * ee0b0d7baa wifi: rtlwifi: fix memory leaks and invalid access at probe error path
| * 283bdc0ce7 wifi: rtlwifi: destroy workqueue at rtl_deinit_core
| * 1e39b0486c wifi: rtlwifi: remove unused check_buddy_priv
| * c6181e4a77 wifi: rtlwifi: remove unused dualmac control leftovers
| * 209315423d wifi: rtlwifi: remove unused timer and related code
| * 8271457a47 dt-bindings: leds: class-multicolor: Fix path to color definitions
| * b9f931dd34 dt-bindings: mmc: controller: clarify the address-cells description
| * 1460ebbd48 spi: zynq-qspi: Add check for clk_enable()
| * 35d0137305 net_sched: sch_sfq: don't allow 1 packet limit
| * c49ac48fac net_sched: sch_sfq: handle bigger packets
| * ab3204c337 net_sched: sch_sfq: annotate data-races around q->perturb_period
| * ae68efdff7 wifi: wcn36xx: fix channel survey memory allocation size
| * 27834ca53e wifi: rtlwifi: usb: fix workqueue leak when probe fails
| * 82beaa3b37 wifi: rtlwifi: fix init_sw_vars leak when probe fails
| * 322052d690 wifi: rtlwifi: wait for firmware loading before releasing memory
| * ebe37758e2 wifi: rtlwifi: rtl8192se: rise completion of firmware loading as last step
| * 2e1f359a34 wifi: rtlwifi: do not complete firmware loading needlessly
| * acc6c67d9b wifi: ath11k: Fix unexpected return buffer manager error for WCN6750/WCN6855
| * 312a644503 ipmi: ipmb: Add check devm_kasprintf() returned value
* | ef5c5ad7df Merge 0f1719a2ba ("genirq: Make handle_enforce_irqctx() unconditionally available") into android14-6.1-lts
|\|
| * 0f1719a2ba genirq: Make handle_enforce_irqctx() unconditionally available
| * 1f617c4061 drm/bridge: it6505: Change definition of AUX_FIFO_MAX_SIZE
* | 309e9dd394 Revert "OPP: Rearrange entries in pm_opp.h"
* | 4fd8e25317 Revert "OPP: Introduce dev_pm_opp_find_freq_{ceil/floor}_indexed() APIs"
* | 44a6d4af33 Revert "OPP: Introduce dev_pm_opp_get_freq_indexed() API"
* | f7d6d8d971 Revert "OPP: Add dev_pm_opp_find_freq_exact_indexed()"
* | 6811b9303c Revert "OPP: Reuse dev_pm_opp_get_freq_indexed()"
* | f7d86656ca Revert "OPP: add index check to assert to avoid buffer overflow in _read_freq()"
* | 3e0043876d Revert "OPP: fix dev_pm_opp_find_bw_*() when bandwidth table not initialized"
* | 635b2890f4 Merge 8532fd078d ("OPP: fix dev_pm_opp_find_bw_*() when bandwidth table not initialized") into android14-6.1-lts
|\|
| * 8532fd078d OPP: fix dev_pm_opp_find_bw_*() when bandwidth table not initialized
| * 774dd6f0f0 OPP: add index check to assert to avoid buffer overflow in _read_freq()
| * e20fd4d3a4 OPP: Reuse dev_pm_opp_get_freq_indexed()
| * 7baa59f83f OPP: Add dev_pm_opp_find_freq_exact_indexed()
| * 7f73098bc6 OPP: Introduce dev_pm_opp_get_freq_indexed() API
| * 92fcb46659 OPP: Introduce dev_pm_opp_find_freq_{ceil/floor}_indexed() APIs
| * 4dff070117 OPP: Rearrange entries in pm_opp.h
* | 3df8fd8f21 Revert "sched/psi: Use task->psi_flags to clear in CPU migration"
* | 0b3a7df78d Revert "sched/fair: Fix value reported by hot tasks pulled in /proc/schedstat"
* | d4e5cb0cd9 Merge 0764df6b80 ("drm/rockchip: vop2: Check linear format for Cluster windows on rk3566/8") into android14-6.1-lts
|\|
| * 0764df6b80 drm/rockchip: vop2: Check linear format for Cluster windows on rk3566/8
| * a2373236e4 drm/rockchip: vop2: Fix the windows switch between different layers
| * 12511e5dc7 drm/rockchip: vop2: set bg dly and prescan dly at vop2_post_config
| * df0f8301de drm/rockchip: vop2: Set YUV/RGB overlay mode
| * bc7f844e66 drm/rockchip: vop2: Fix the mixer alpha setup for layer 0
| * 50b24e70ce drm/rockchip: vop2: Fix cluster windows alpha ctrl regsiters offset
| * ae522ad211 drm/amdgpu: Fix potential NULL pointer dereference in atomctrl_get_smc_sclk_range_table
| * bebf542e8d HID: core: Fix assumption that Resolution Multipliers must be in Logical Collections
| * 0720c5312b drm/etnaviv: Fix page property being used for non writecombine buffers
| * cd2f69b23f drm/msm/dp: set safe_to_exit_level before printing it
| * a18682ccd2 sched/fair: Fix value reported by hot tasks pulled in /proc/schedstat
| * 371e1a0e38 sched/psi: Use task->psi_flags to clear in CPU migration
| * 8ca3dbd974 afs: Fix the fallback handling for the YFS.RemoveFile2 RPC call
| * f3257a33b8 select: Fix unbalanced user_access_end()
| * 957f7da211 partitions: ldm: remove the initial kernel-doc notation
| * d65454446b selftests/powerpc: Fix argument order to timer_sub()
| * f09e580f94 nvme: Add error check for xa_store in nvme_get_effects_log
| * e90394a866 pstore/blk: trivial typo fixes
| * e7343fa337 nbd: don't allow reconnect after disconnect
| * a7da811215 block: retry call probe after request_module in blk_request_module
| * 1d71259013 fs: fix proc_handler for sysctl_nr_open
| * 1a443fb275 afs: Fix directory format encoding struct
| * b5ff136c67 afs: Fix EEXIST error returned from afs_rmdir() to be ENOTEMPTY
| * 522ca38492 powerpc/book3s64/hugetlb: Fix disabling hugetlb when fadump is active
* b3026e7cef Merge branch 'android14-6.1' into android14-6.1-lts

Change-Id: Icf0f2e87f08ce32ff045cc170c0f88cef5996496
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
Greg Kroah-Hartman
2025-03-12 16:14:17 +00:00
committed by Treehugger Robot
516 changed files with 4214 additions and 2130 deletions

View File

@@ -27,7 +27,7 @@ properties:
description: |
For multicolor LED support this property should be defined as either
LED_COLOR_ID_RGB or LED_COLOR_ID_MULTI which can be found in
include/linux/leds/common.h.
include/dt-bindings/leds/common.h.
enum: [ 8, 9 ]
required:

View File

@@ -50,15 +50,15 @@ properties:
minimum: 0
maximum: 1
rohm,charger-sense-resistor-ohms:
minimum: 10000000
maximum: 50000000
rohm,charger-sense-resistor-micro-ohms:
minimum: 10000
maximum: 50000
description: |
BD71827 and BD71828 have SAR ADC for measuring charging currents.
External sense resistor (RSENSE in data sheet) should be used. If
something other but 30MOhm resistor is used the resistance value
should be given here in Ohms.
default: 30000000
BD71815 has SAR ADC for measuring charging currents. External sense
resistor (RSENSE in data sheet) should be used. If something other
but a 30 mOhm resistor is used the resistance value should be given
here in micro Ohms.
default: 30000
regulators:
$ref: ../regulator/rohm,bd71815-regulator.yaml
@@ -67,7 +67,7 @@ properties:
gpio-reserved-ranges:
description: |
Usage of BD71828 GPIO pins can be changed via OTP. This property can be
Usage of BD71815 GPIO pins can be changed via OTP. This property can be
used to mark the pins which should not be configured for GPIO. Please see
the ../gpio/gpio.txt for more information.
@@ -113,7 +113,7 @@ examples:
gpio-controller;
#gpio-cells = <2>;
rohm,charger-sense-resistor-ohms = <10000000>;
rohm,charger-sense-resistor-micro-ohms = <10000>;
regulators {
buck1: buck1 {

View File

@@ -25,7 +25,7 @@ properties:
"#address-cells":
const: 1
description: |
The cell is the slot ID if a function subnode is used.
The cell is the SDIO function number if a function subnode is used.
"#size-cells":
const: 0

View File

@@ -31,10 +31,6 @@ properties:
$ref: "regulator.yaml#"
unevaluatedProperties: false
properties:
regulator-compatible:
pattern: "^vbuck[1-4]$"
additionalProperties: false
required:
@@ -52,7 +48,6 @@ examples:
regulators {
vbuck1 {
regulator-compatible = "vbuck1";
regulator-min-microvolt = <300000>;
regulator-max-microvolt = <1193750>;
regulator-enable-ramp-delay = <256>;
@@ -60,7 +55,6 @@ examples:
};
vbuck3 {
regulator-compatible = "vbuck3";
regulator-min-microvolt = <300000>;
regulator-max-microvolt = <1193750>;
regulator-enable-ramp-delay = <256>;

View File

@@ -54,6 +54,15 @@ KCONFIG_OVERWRITECONFIG
If you set KCONFIG_OVERWRITECONFIG in the environment, Kconfig will not
break symlinks when .config is a symlink to somewhere else.
KCONFIG_WARN_UNKNOWN_SYMBOLS
----------------------------
This environment variable makes Kconfig warn about all unrecognized
symbols in the config input.
KCONFIG_WERROR
--------------
If set, Kconfig treats warnings as errors.
`CONFIG_`
---------
If you set `CONFIG_` in the environment, Kconfig will prefix all symbols

View File

@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0
VERSION = 6
PATCHLEVEL = 1
SUBLEVEL = 128
SUBLEVEL = 129
EXTRAVERSION =
NAME = Curry Ramen

View File

@@ -1089,6 +1089,7 @@
drm_atomic_helper_dirtyfb
drm_atomic_helper_plane_destroy_state
drm_atomic_helper_plane_duplicate_state
__drm_atomic_helper_plane_duplicate_state
drm_atomic_helper_plane_reset
drm_connector_attach_edid_property
drm_connector_register

View File

@@ -42,6 +42,8 @@ struct pt_regs {
unsigned long trap_a0;
unsigned long trap_a1;
unsigned long trap_a2;
/* This makes the stack 16-byte aligned as GCC expects */
unsigned long __pad0;
/* These are saved by PAL-code: */
unsigned long ps;
unsigned long pc;

View File

@@ -32,7 +32,9 @@ void foo(void)
DEFINE(CRED_EGID, offsetof(struct cred, egid));
BLANK();
DEFINE(SP_OFF, offsetof(struct pt_regs, ps));
DEFINE(SIZEOF_PT_REGS, sizeof(struct pt_regs));
DEFINE(SWITCH_STACK_SIZE, sizeof(struct switch_stack));
DEFINE(PT_PTRACED, PT_PTRACED);
DEFINE(CLONE_VM, CLONE_VM);
DEFINE(CLONE_UNTRACED, CLONE_UNTRACED);

View File

@@ -15,10 +15,6 @@
.set noat
.cfi_sections .debug_frame
/* Stack offsets. */
#define SP_OFF 184
#define SWITCH_STACK_SIZE 320
.macro CFI_START_OSF_FRAME func
.align 4
.globl \func
@@ -199,8 +195,8 @@ CFI_END_OSF_FRAME entArith
CFI_START_OSF_FRAME entMM
SAVE_ALL
/* save $9 - $15 so the inline exception code can manipulate them. */
subq $sp, 56, $sp
.cfi_adjust_cfa_offset 56
subq $sp, 64, $sp
.cfi_adjust_cfa_offset 64
stq $9, 0($sp)
stq $10, 8($sp)
stq $11, 16($sp)
@@ -215,7 +211,7 @@ CFI_START_OSF_FRAME entMM
.cfi_rel_offset $13, 32
.cfi_rel_offset $14, 40
.cfi_rel_offset $15, 48
addq $sp, 56, $19
addq $sp, 64, $19
/* handle the fault */
lda $8, 0x3fff
bic $sp, $8, $8
@@ -228,7 +224,7 @@ CFI_START_OSF_FRAME entMM
ldq $13, 32($sp)
ldq $14, 40($sp)
ldq $15, 48($sp)
addq $sp, 56, $sp
addq $sp, 64, $sp
.cfi_restore $9
.cfi_restore $10
.cfi_restore $11
@@ -236,7 +232,7 @@ CFI_START_OSF_FRAME entMM
.cfi_restore $13
.cfi_restore $14
.cfi_restore $15
.cfi_adjust_cfa_offset -56
.cfi_adjust_cfa_offset -64
/* finish up the syscall as normal. */
br ret_from_sys_call
CFI_END_OSF_FRAME entMM
@@ -383,8 +379,8 @@ entUnaUser:
.cfi_restore $0
.cfi_adjust_cfa_offset -256
SAVE_ALL /* setup normal kernel stack */
lda $sp, -56($sp)
.cfi_adjust_cfa_offset 56
lda $sp, -64($sp)
.cfi_adjust_cfa_offset 64
stq $9, 0($sp)
stq $10, 8($sp)
stq $11, 16($sp)
@@ -400,7 +396,7 @@ entUnaUser:
.cfi_rel_offset $14, 40
.cfi_rel_offset $15, 48
lda $8, 0x3fff
addq $sp, 56, $19
addq $sp, 64, $19
bic $sp, $8, $8
jsr $26, do_entUnaUser
ldq $9, 0($sp)
@@ -410,7 +406,7 @@ entUnaUser:
ldq $13, 32($sp)
ldq $14, 40($sp)
ldq $15, 48($sp)
lda $sp, 56($sp)
lda $sp, 64($sp)
.cfi_restore $9
.cfi_restore $10
.cfi_restore $11
@@ -418,7 +414,7 @@ entUnaUser:
.cfi_restore $13
.cfi_restore $14
.cfi_restore $15
.cfi_adjust_cfa_offset -56
.cfi_adjust_cfa_offset -64
br ret_from_sys_call
CFI_END_OSF_FRAME entUna

View File

@@ -707,7 +707,7 @@ s_reg_to_mem (unsigned long s_reg)
static int unauser_reg_offsets[32] = {
R(r0), R(r1), R(r2), R(r3), R(r4), R(r5), R(r6), R(r7), R(r8),
/* r9 ... r15 are stored in front of regs. */
-56, -48, -40, -32, -24, -16, -8,
-64, -56, -48, -40, -32, -24, -16, /* padding at -8 */
R(r16), R(r17), R(r18),
R(r19), R(r20), R(r21), R(r22), R(r23), R(r24), R(r25), R(r26),
R(r27), R(r28), R(gp),

View File

@@ -78,8 +78,8 @@ __load_new_mm_context(struct mm_struct *next_mm)
/* Macro for exception fixup code to access integer registers. */
#define dpf_reg(r) \
(((unsigned long *)regs)[(r) <= 8 ? (r) : (r) <= 15 ? (r)-16 : \
(r) <= 18 ? (r)+10 : (r)-10])
(((unsigned long *)regs)[(r) <= 8 ? (r) : (r) <= 15 ? (r)-17 : \
(r) <= 18 ? (r)+11 : (r)-10])
asmlinkage void
do_page_fault(unsigned long address, unsigned long mmcsr,

View File

@@ -12,6 +12,7 @@
ranges = <0x00000000 0x4a000000 0x100000>, /* segment 0 */
<0x00100000 0x4a100000 0x100000>, /* segment 1 */
<0x00200000 0x4a200000 0x100000>; /* segment 2 */
dma-ranges;
segment@0 { /* 0x4a000000 */
compatible = "simple-pm-bus";
@@ -557,6 +558,7 @@
<0x0007e000 0x0017e000 0x001000>, /* ap 124 */
<0x00059000 0x00159000 0x001000>, /* ap 125 */
<0x0005a000 0x0015a000 0x001000>; /* ap 126 */
dma-ranges;
target-module@2000 { /* 0x4a102000, ap 27 3c.0 */
compatible = "ti,sysc";

View File

@@ -309,7 +309,7 @@
clock-names = "spi", "wrap";
};
cir: cir@10013000 {
cir: ir-receiver@10013000 {
compatible = "mediatek,mt7623-cir";
reg = <0 0x10013000 0 0x1000>;
interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_LOW>;

View File

@@ -590,7 +590,21 @@ static int at91_suspend_finish(unsigned long val)
return 0;
}
static void at91_pm_switch_ba_to_vbat(void)
/**
* at91_pm_switch_ba_to_auto() - Configure Backup Unit Power Switch
* to automatic/hardware mode.
*
* The Backup Unit Power Switch can be managed either by software or hardware.
* Enabling hardware mode allows the automatic transition of power between
* VDDANA (or VDDIN33) and VDDBU (or VBAT, respectively), based on the
* availability of these power sources.
*
* If the Backup Unit Power Switch is already in automatic mode, no action is
* required. If it is in software-controlled mode, it is switched to automatic
* mode to enhance safety and eliminate the need for toggling between power
* sources.
*/
static void at91_pm_switch_ba_to_auto(void)
{
unsigned int offset = offsetof(struct at91_pm_sfrbu_regs, pswbu);
unsigned int val;
@@ -601,24 +615,19 @@ static void at91_pm_switch_ba_to_vbat(void)
val = readl(soc_pm.data.sfrbu + offset);
/* Already on VBAT. */
if (!(val & soc_pm.sfrbu_regs.pswbu.state))
/* Already on auto/hardware. */
if (!(val & soc_pm.sfrbu_regs.pswbu.ctrl))
return;
val &= ~soc_pm.sfrbu_regs.pswbu.softsw;
val |= soc_pm.sfrbu_regs.pswbu.key | soc_pm.sfrbu_regs.pswbu.ctrl;
val &= ~soc_pm.sfrbu_regs.pswbu.ctrl;
val |= soc_pm.sfrbu_regs.pswbu.key;
writel(val, soc_pm.data.sfrbu + offset);
/* Wait for update. */
val = readl(soc_pm.data.sfrbu + offset);
while (val & soc_pm.sfrbu_regs.pswbu.state)
val = readl(soc_pm.data.sfrbu + offset);
}
static void at91_pm_suspend(suspend_state_t state)
{
if (soc_pm.data.mode == AT91_PM_BACKUP) {
at91_pm_switch_ba_to_vbat();
at91_pm_switch_ba_to_auto();
cpu_suspend(0, at91_suspend_finish);

View File

@@ -922,7 +922,7 @@
interrupt-controller;
#interrupt-cells = <2>;
clock: mt6397clock {
clock: clocks {
compatible = "mediatek,mt6397-clk";
#clock-cells = <1>;
};
@@ -934,11 +934,10 @@
#gpio-cells = <2>;
};
regulator: mt6397regulator {
regulators {
compatible = "mediatek,mt6397-regulator";
mt6397_vpca15_reg: buck_vpca15 {
regulator-compatible = "buck_vpca15";
regulator-name = "vpca15";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -948,7 +947,6 @@
};
mt6397_vpca7_reg: buck_vpca7 {
regulator-compatible = "buck_vpca7";
regulator-name = "vpca7";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -958,7 +956,6 @@
};
mt6397_vsramca15_reg: buck_vsramca15 {
regulator-compatible = "buck_vsramca15";
regulator-name = "vsramca15";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -967,7 +964,6 @@
};
mt6397_vsramca7_reg: buck_vsramca7 {
regulator-compatible = "buck_vsramca7";
regulator-name = "vsramca7";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -976,7 +972,6 @@
};
mt6397_vcore_reg: buck_vcore {
regulator-compatible = "buck_vcore";
regulator-name = "vcore";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -985,7 +980,6 @@
};
mt6397_vgpu_reg: buck_vgpu {
regulator-compatible = "buck_vgpu";
regulator-name = "vgpu";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -994,7 +988,6 @@
};
mt6397_vdrm_reg: buck_vdrm {
regulator-compatible = "buck_vdrm";
regulator-name = "vdrm";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1400000>;
@@ -1003,7 +996,6 @@
};
mt6397_vio18_reg: buck_vio18 {
regulator-compatible = "buck_vio18";
regulator-name = "vio18";
regulator-min-microvolt = <1620000>;
regulator-max-microvolt = <1980000>;
@@ -1012,18 +1004,15 @@
};
mt6397_vtcxo_reg: ldo_vtcxo {
regulator-compatible = "ldo_vtcxo";
regulator-name = "vtcxo";
regulator-always-on;
};
mt6397_va28_reg: ldo_va28 {
regulator-compatible = "ldo_va28";
regulator-name = "va28";
};
mt6397_vcama_reg: ldo_vcama {
regulator-compatible = "ldo_vcama";
regulator-name = "vcama";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
@@ -1031,18 +1020,15 @@
};
mt6397_vio28_reg: ldo_vio28 {
regulator-compatible = "ldo_vio28";
regulator-name = "vio28";
regulator-always-on;
};
mt6397_vusb_reg: ldo_vusb {
regulator-compatible = "ldo_vusb";
regulator-name = "vusb";
};
mt6397_vmc_reg: ldo_vmc {
regulator-compatible = "ldo_vmc";
regulator-name = "vmc";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
@@ -1050,7 +1036,6 @@
};
mt6397_vmch_reg: ldo_vmch {
regulator-compatible = "ldo_vmch";
regulator-name = "vmch";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
@@ -1058,7 +1043,6 @@
};
mt6397_vemc_3v3_reg: ldo_vemc3v3 {
regulator-compatible = "ldo_vemc3v3";
regulator-name = "vemc_3v3";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
@@ -1066,7 +1050,6 @@
};
mt6397_vgp1_reg: ldo_vgp1 {
regulator-compatible = "ldo_vgp1";
regulator-name = "vcamd";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
@@ -1074,7 +1057,6 @@
};
mt6397_vgp2_reg: ldo_vgp2 {
regulator-compatible = "ldo_vgp2";
regulator-name = "vcamio";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
@@ -1082,7 +1064,6 @@
};
mt6397_vgp3_reg: ldo_vgp3 {
regulator-compatible = "ldo_vgp3";
regulator-name = "vcamaf";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
@@ -1090,7 +1071,6 @@
};
mt6397_vgp4_reg: ldo_vgp4 {
regulator-compatible = "ldo_vgp4";
regulator-name = "vgp4";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
@@ -1098,7 +1078,6 @@
};
mt6397_vgp5_reg: ldo_vgp5 {
regulator-compatible = "ldo_vgp5";
regulator-name = "vgp5";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3000000>;
@@ -1106,7 +1085,6 @@
};
mt6397_vgp6_reg: ldo_vgp6 {
regulator-compatible = "ldo_vgp6";
regulator-name = "vgp6";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
@@ -1115,7 +1093,6 @@
};
mt6397_vibr_reg: ldo_vibr {
regulator-compatible = "ldo_vibr";
regulator-name = "vibr";
regulator-min-microvolt = <1300000>;
regulator-max-microvolt = <3300000>;
@@ -1123,7 +1100,7 @@
};
};
rtc: mt6397rtc {
rtc: rtc {
compatible = "mediatek,mt6397-rtc";
};

View File

@@ -307,11 +307,10 @@
interrupt-controller;
#interrupt-cells = <2>;
mt6397regulator: mt6397regulator {
regulators {
compatible = "mediatek,mt6397-regulator";
mt6397_vpca15_reg: buck_vpca15 {
regulator-compatible = "buck_vpca15";
regulator-name = "vpca15";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -320,7 +319,6 @@
};
mt6397_vpca7_reg: buck_vpca7 {
regulator-compatible = "buck_vpca7";
regulator-name = "vpca7";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -329,7 +327,6 @@
};
mt6397_vsramca15_reg: buck_vsramca15 {
regulator-compatible = "buck_vsramca15";
regulator-name = "vsramca15";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -338,7 +335,6 @@
};
mt6397_vsramca7_reg: buck_vsramca7 {
regulator-compatible = "buck_vsramca7";
regulator-name = "vsramca7";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -347,7 +343,6 @@
};
mt6397_vcore_reg: buck_vcore {
regulator-compatible = "buck_vcore";
regulator-name = "vcore";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -356,7 +351,6 @@
};
mt6397_vgpu_reg: buck_vgpu {
regulator-compatible = "buck_vgpu";
regulator-name = "vgpu";
regulator-min-microvolt = < 700000>;
regulator-max-microvolt = <1350000>;
@@ -365,7 +359,6 @@
};
mt6397_vdrm_reg: buck_vdrm {
regulator-compatible = "buck_vdrm";
regulator-name = "vdrm";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1400000>;
@@ -374,7 +367,6 @@
};
mt6397_vio18_reg: buck_vio18 {
regulator-compatible = "buck_vio18";
regulator-name = "vio18";
regulator-min-microvolt = <1620000>;
regulator-max-microvolt = <1980000>;
@@ -383,19 +375,16 @@
};
mt6397_vtcxo_reg: ldo_vtcxo {
regulator-compatible = "ldo_vtcxo";
regulator-name = "vtcxo";
regulator-always-on;
};
mt6397_va28_reg: ldo_va28 {
regulator-compatible = "ldo_va28";
regulator-name = "va28";
regulator-always-on;
};
mt6397_vcama_reg: ldo_vcama {
regulator-compatible = "ldo_vcama";
regulator-name = "vcama";
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <2800000>;
@@ -403,18 +392,15 @@
};
mt6397_vio28_reg: ldo_vio28 {
regulator-compatible = "ldo_vio28";
regulator-name = "vio28";
regulator-always-on;
};
mt6397_vusb_reg: ldo_vusb {
regulator-compatible = "ldo_vusb";
regulator-name = "vusb";
};
mt6397_vmc_reg: ldo_vmc {
regulator-compatible = "ldo_vmc";
regulator-name = "vmc";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
@@ -422,7 +408,6 @@
};
mt6397_vmch_reg: ldo_vmch {
regulator-compatible = "ldo_vmch";
regulator-name = "vmch";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
@@ -430,7 +415,6 @@
};
mt6397_vemc_3v3_reg: ldo_vemc3v3 {
regulator-compatible = "ldo_vemc3v3";
regulator-name = "vemc_3v3";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
@@ -438,7 +422,6 @@
};
mt6397_vgp1_reg: ldo_vgp1 {
regulator-compatible = "ldo_vgp1";
regulator-name = "vcamd";
regulator-min-microvolt = <1220000>;
regulator-max-microvolt = <3300000>;
@@ -446,7 +429,6 @@
};
mt6397_vgp2_reg: ldo_vgp2 {
regulator-compatible = "ldo_vgp2";
regulator-name = "vcamio";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <3300000>;
@@ -454,7 +436,6 @@
};
mt6397_vgp3_reg: ldo_vgp3 {
regulator-compatible = "ldo_vgp3";
regulator-name = "vcamaf";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
@@ -462,7 +443,6 @@
};
mt6397_vgp4_reg: ldo_vgp4 {
regulator-compatible = "ldo_vgp4";
regulator-name = "vgp4";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
@@ -470,7 +450,6 @@
};
mt6397_vgp5_reg: ldo_vgp5 {
regulator-compatible = "ldo_vgp5";
regulator-name = "vgp5";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3000000>;
@@ -478,7 +457,6 @@
};
mt6397_vgp6_reg: ldo_vgp6 {
regulator-compatible = "ldo_vgp6";
regulator-name = "vgp6";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
@@ -486,7 +464,6 @@
};
mt6397_vibr_reg: ldo_vibr {
regulator-compatible = "ldo_vibr";
regulator-name = "vibr";
regulator-min-microvolt = <1300000>;
regulator-max-microvolt = <3300000>;

View File

@@ -26,6 +26,10 @@
hid-descr-addr = <0x0001>;
};
&mt6358codec {
mediatek,dmic-mode = <1>; /* one-wire */
};
&qca_wifi {
qcom,ath10k-calibration-variant = "GO_DAMU";
};

View File

@@ -11,3 +11,18 @@
model = "Google kenzo sku17 board";
compatible = "google,juniper-sku17", "google,juniper", "mediatek,mt8183";
};
&i2c0 {
touchscreen@40 {
compatible = "hid-over-i2c";
reg = <0x40>;
pinctrl-names = "default";
pinctrl-0 = <&touchscreen_pins>;
interrupts-extended = <&pio 155 IRQ_TYPE_LEVEL_LOW>;
post-power-on-delay-ms = <70>;
hid-descr-addr = <0x0001>;
};
};

View File

@@ -6,6 +6,21 @@
/dts-v1/;
#include "mt8183-kukui-jacuzzi.dtsi"
&i2c0 {
touchscreen@40 {
compatible = "hid-over-i2c";
reg = <0x40>;
pinctrl-names = "default";
pinctrl-0 = <&touchscreen_pins>;
interrupts-extended = <&pio 155 IRQ_TYPE_LEVEL_LOW>;
post-power-on-delay-ms = <70>;
hid-descr-addr = <0x0001>;
};
};
&i2c2 {
trackpad@2c {
compatible = "hid-over-i2c";

View File

@@ -39,8 +39,6 @@
pp3300_panel: pp3300-panel {
compatible = "regulator-fixed";
regulator-name = "pp3300_panel";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
pinctrl-names = "default";
pinctrl-0 = <&pp3300_panel_pins>;

View File

@@ -901,7 +901,6 @@
regulators {
mt6315_6_vbuck1: vbuck1 {
regulator-compatible = "vbuck1";
regulator-name = "Vbcpu";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;
@@ -911,7 +910,6 @@
};
mt6315_6_vbuck3: vbuck3 {
regulator-compatible = "vbuck3";
regulator-name = "Vlcpu";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;
@@ -928,7 +926,6 @@
regulators {
mt6315_7_vbuck1: vbuck1 {
regulator-compatible = "vbuck1";
regulator-name = "Vgpu";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <800000>;

View File

@@ -843,7 +843,6 @@
regulators {
mt6315_6_vbuck1: vbuck1 {
regulator-compatible = "vbuck1";
regulator-name = "Vbcpu";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;
@@ -861,7 +860,6 @@
regulators {
mt6315_7_vbuck1: vbuck1 {
regulator-compatible = "vbuck1";
regulator-name = "Vgpu";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;

View File

@@ -120,7 +120,6 @@
richtek,vinovp-microvolt = <14500000>;
otg_vbus_regulator: usb-otg-vbus-regulator {
regulator-compatible = "usb-otg-vbus";
regulator-name = "usb-otg-vbus";
regulator-min-microvolt = <4425000>;
regulator-max-microvolt = <5825000>;
@@ -132,7 +131,6 @@
LDO_VIN3-supply = <&mt6360_buck2>;
mt6360_buck1: buck1 {
regulator-compatible = "BUCK1";
regulator-name = "mt6360,buck1";
regulator-min-microvolt = <300000>;
regulator-max-microvolt = <1300000>;
@@ -143,7 +141,6 @@
};
mt6360_buck2: buck2 {
regulator-compatible = "BUCK2";
regulator-name = "mt6360,buck2";
regulator-min-microvolt = <300000>;
regulator-max-microvolt = <1300000>;
@@ -154,7 +151,6 @@
};
mt6360_ldo1: ldo1 {
regulator-compatible = "LDO1";
regulator-name = "mt6360,ldo1";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3600000>;
@@ -163,7 +159,6 @@
};
mt6360_ldo2: ldo2 {
regulator-compatible = "LDO2";
regulator-name = "mt6360,ldo2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3600000>;
@@ -172,7 +167,6 @@
};
mt6360_ldo3: ldo3 {
regulator-compatible = "LDO3";
regulator-name = "mt6360,ldo3";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3600000>;
@@ -181,7 +175,6 @@
};
mt6360_ldo5: ldo5 {
regulator-compatible = "LDO5";
regulator-name = "mt6360,ldo5";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3600000>;
@@ -190,7 +183,6 @@
};
mt6360_ldo6: ldo6 {
regulator-compatible = "LDO6";
regulator-name = "mt6360,ldo6";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <2100000>;
@@ -199,7 +191,6 @@
};
mt6360_ldo7: ldo7 {
regulator-compatible = "LDO7";
regulator-name = "mt6360,ldo7";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <2100000>;

View File

@@ -2000,7 +2000,7 @@
};
ovl0: ovl@1c000000 {
compatible = "mediatek,mt8195-disp-ovl", "mediatek,mt8183-disp-ovl";
compatible = "mediatek,mt8195-disp-ovl";
reg = <0 0x1c000000 0 0x1000>;
interrupts = <GIC_SPI 636 IRQ_TYPE_LEVEL_HIGH 0>;
power-domains = <&spm MT8195_POWER_DOMAIN_VDOSYS0>;

View File

@@ -144,10 +144,10 @@
#size-cells = <2>;
ranges;
/* 128 KiB reserved for ARM Trusted Firmware (BL31) */
/* 192 KiB reserved for ARM Trusted Firmware (BL31) */
bl31_secmon_reserved: secmon@43000000 {
no-map;
reg = <0 0x43000000 0 0x20000>;
reg = <0 0x43000000 0 0x30000>;
};
};
@@ -206,7 +206,7 @@
compatible = "mediatek,mt8516-wdt",
"mediatek,mt6589-wdt";
reg = <0 0x10007000 0 0x1000>;
interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_FALLING>;
interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_LOW>;
#reset-cells = <1>;
};
@@ -269,7 +269,7 @@
interrupt-parent = <&gic>;
interrupt-controller;
reg = <0 0x10310000 0 0x1000>,
<0 0x10320000 0 0x1000>,
<0 0x1032f000 0 0x2000>,
<0 0x10340000 0 0x2000>,
<0 0x10360000 0 0x2000>;
interrupts = <GIC_PPI 9
@@ -345,6 +345,7 @@
reg = <0 0x11009000 0 0x90>,
<0 0x11000180 0 0x80>;
interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_LOW>;
clock-div = <2>;
clocks = <&topckgen CLK_TOP_I2C0>,
<&topckgen CLK_TOP_APDMA>;
clock-names = "main", "dma";
@@ -359,6 +360,7 @@
reg = <0 0x1100a000 0 0x90>,
<0 0x11000200 0 0x80>;
interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_LOW>;
clock-div = <2>;
clocks = <&topckgen CLK_TOP_I2C1>,
<&topckgen CLK_TOP_APDMA>;
clock-names = "main", "dma";
@@ -373,6 +375,7 @@
reg = <0 0x1100b000 0 0x90>,
<0 0x11000280 0 0x80>;
interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_LOW>;
clock-div = <2>;
clocks = <&topckgen CLK_TOP_I2C2>,
<&topckgen CLK_TOP_APDMA>;
clock-names = "main", "dma";

View File

@@ -47,7 +47,6 @@
};
&i2c0 {
clock-div = <2>;
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay";
@@ -156,7 +155,6 @@
};
&i2c2 {
clock-div = <2>;
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay";

View File

@@ -1249,7 +1249,7 @@
compatible = "nvidia,tegra234-sce-fabric";
reg = <0xb600000 0x40000>;
interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>;
status = "okay";
status = "disabled";
};
rce-fabric@be00000 {
@@ -1558,7 +1558,7 @@
};
dce-fabric@de00000 {
compatible = "nvidia,tegra234-sce-fabric";
compatible = "nvidia,tegra234-dce-fabric";
reg = <0xde00000 0x40000>;
interrupts = <GIC_SPI 381 IRQ_TYPE_LEVEL_HIGH>;
status = "okay";
@@ -1574,6 +1574,8 @@
#redistributor-regions = <1>;
#interrupt-cells = <3>;
interrupt-controller;
#address-cells = <0>;
};
smmu_iso: iommu@10000000{

View File

@@ -109,7 +109,7 @@
sleep_clk: sleep-clk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32768>;
clock-frequency = <32764>;
};
};

View File

@@ -33,7 +33,7 @@
sleep_clk: sleep-clk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32768>;
clock-frequency = <32764>;
clock-output-names = "sleep_clk";
};
};
@@ -434,6 +434,15 @@
#size-cells = <1>;
ranges;
interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "pwr_event",
"qusb2_phy",
"hs_phy_irq",
"ss_phy_irq";
clocks = <&gcc GCC_USB30_MASTER_CLK>,
<&gcc GCC_SYS_NOC_USB3_AXI_CLK>,
<&gcc GCC_USB30_SLEEP_CLK>,

View File

@@ -65,7 +65,7 @@
};
led@1 {
reg = <0>;
reg = <1>;
chan-name = "button-backlight1";
led-cur = /bits/ 8 <0x32>;
max-cur = /bits/ 8 <0xC8>;

View File

@@ -2968,9 +2968,14 @@
#size-cells = <1>;
ranges;
interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "hs_phy_irq", "ss_phy_irq";
interrupt-names = "pwr_event",
"qusb2_phy",
"hs_phy_irq",
"ss_phy_irq";
clocks = <&gcc GCC_SYS_NOC_USB3_AXI_CLK>,
<&gcc GCC_USB30_MASTER_CLK>,

View File

@@ -11,7 +11,7 @@
thermal-zones {
pm6150_thermal: pm6150-thermal {
polling-delay-passive = <100>;
polling-delay = <0>;
thermal-sensors = <&pm6150_temp>;
trips {

View File

@@ -5,6 +5,34 @@
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/spmi/spmi.h>
/ {
thermal-zones {
pm6150l-thermal {
thermal-sensors = <&pm6150l_temp>;
trips {
trip0 {
temperature = <95000>;
hysteresis = <0>;
type = "passive";
};
trip1 {
temperature = <115000>;
hysteresis = <0>;
type = "hot";
};
trip2 {
temperature = <125000>;
hysteresis = <0>;
type = "critical";
};
};
};
};
};
&spmi_bus {
pm6150l_lsid4: pmic@4 {
compatible = "qcom,pm6150l", "qcom,spmi-pmic";
@@ -12,6 +40,13 @@
#address-cells = <1>;
#size-cells = <0>;
pm6150l_temp: temp-alarm@2400 {
compatible = "qcom,spmi-temp-alarm";
reg = <0x2400>;
interrupts = <0x4 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
#thermal-sensor-cells = <0>;
};
pm6150l_adc: adc@3100 {
compatible = "qcom,spmi-adc5";
reg = <0x3100>;

View File

@@ -306,14 +306,9 @@
reset-gpios = <&pm6150l_gpio 3 GPIO_ACTIVE_HIGH>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel0_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
port {
panel0_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
};
};
@@ -333,10 +328,6 @@
vdds-supply = <&vreg_l4a_0p8>;
};
&mdp {
status = "okay";
};
&mdss {
status = "okay";
};

View File

@@ -26,7 +26,6 @@
thermal-zones {
skin_temp_thermal: skin-temp-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&pm6150_adc_tm 1>;
sustainable-power = <965>;

View File

@@ -43,7 +43,6 @@
thermal-zones {
skin_temp_thermal: skin-temp-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&pm6150_adc_tm 1>;
sustainable-power = <965>;

View File

@@ -12,14 +12,11 @@
/ {
thermal-zones {
5v-choke-thermal {
polling-delay-passive = <0>;
polling-delay = <250>;
choke-5v-thermal {
thermal-sensors = <&pm6150_adc_tm 1>;
trips {
5v-choke-crit {
choke-5v-crit {
temperature = <125000>;
hysteresis = <1000>;
type = "critical";

View File

@@ -60,19 +60,15 @@
pinctrl-names = "default";
pinctrl-0 = <&lcd_rst>;
avdd-supply = <&ppvar_lcd>;
avee-supply = <&ppvar_lcd>;
pp1800-supply = <&v1p8_disp>;
pp3300-supply = <&pp3300_dx_edp>;
backlight = <&backlight>;
rotation = <270>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
port {
panel_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
};
};

View File

@@ -50,7 +50,6 @@
thermal-zones {
skin_temp_thermal: skin-temp-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&pm6150_adc_tm 1>;
sustainable-power = <574>;
@@ -124,14 +123,9 @@
backlight = <&backlight>;
rotation = <270>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
port {
panel_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
};
};

View File

@@ -20,9 +20,6 @@
/ {
thermal-zones {
charger_thermal: charger-thermal {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm6150_adc_tm 0>;
trips {
@@ -777,6 +774,10 @@ hp_i2c: &i2c9 {
};
};
&lpasscc {
status = "okay";
};
&lpass_cpu {
status = "okay";
@@ -802,7 +803,7 @@ hp_i2c: &i2c9 {
};
};
&mdp {
&lpass_hm {
status = "okay";
};

View File

@@ -2937,8 +2937,6 @@
interrupt-parent = <&mdss>;
interrupts = <0>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
@@ -2985,7 +2983,8 @@
};
dsi0: dsi@ae94000 {
compatible = "qcom,mdss-dsi-ctrl";
compatible = "qcom,sc7180-dsi-ctrl",
"qcom,mdss-dsi-ctrl";
reg = <0 0x0ae94000 0 0x400>;
reg-names = "dsi_ctrl";
@@ -3576,6 +3575,8 @@
power-domains = <&lpass_hm LPASS_CORE_HM_GDSCR>;
#clock-cells = <1>;
#power-domain-cells = <1>;
status = "reserved"; /* Controlled by ADSP */
};
lpass_cpu: lpass@62d87000 {
@@ -3621,13 +3622,14 @@
clock-names = "iface", "bi_tcxo";
#clock-cells = <1>;
#power-domain-cells = <1>;
status = "reserved"; /* Controlled by ADSP */
};
};
thermal-zones {
cpu0_thermal: cpu0-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 1>;
sustainable-power = <1052>;
@@ -3676,7 +3678,6 @@
cpu1_thermal: cpu1-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 2>;
sustainable-power = <1052>;
@@ -3725,7 +3726,6 @@
cpu2_thermal: cpu2-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 3>;
sustainable-power = <1052>;
@@ -3774,7 +3774,6 @@
cpu3_thermal: cpu3-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 4>;
sustainable-power = <1052>;
@@ -3823,7 +3822,6 @@
cpu4_thermal: cpu4-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 5>;
sustainable-power = <1052>;
@@ -3872,7 +3870,6 @@
cpu5_thermal: cpu5-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 6>;
sustainable-power = <1052>;
@@ -3921,7 +3918,6 @@
cpu6_thermal: cpu6-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 9>;
sustainable-power = <1425>;
@@ -3962,7 +3958,6 @@
cpu7_thermal: cpu7-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 10>;
sustainable-power = <1425>;
@@ -4003,7 +3998,6 @@
cpu8_thermal: cpu8-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 11>;
sustainable-power = <1425>;
@@ -4044,7 +4038,6 @@
cpu9_thermal: cpu9-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 12>;
sustainable-power = <1425>;
@@ -4085,7 +4078,6 @@
aoss0-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 0>;
@@ -4106,7 +4098,6 @@
cpuss0-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 7>;
@@ -4126,7 +4117,6 @@
cpuss1-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 8>;
@@ -4146,7 +4136,6 @@
gpuss0-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 13>;
@@ -4174,7 +4163,6 @@
gpuss1-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens0 14>;
@@ -4202,7 +4190,6 @@
aoss1-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 0>;
@@ -4223,7 +4210,6 @@
cwlan-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 1>;
@@ -4244,7 +4230,6 @@
audio-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 2>;
@@ -4265,7 +4250,6 @@
ddr-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 3>;
@@ -4286,7 +4270,6 @@
q6-hvx-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 4>;
@@ -4307,7 +4290,6 @@
camera-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 5>;
@@ -4328,7 +4310,6 @@
mdm-core-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 6>;
@@ -4349,7 +4330,6 @@
mdm-dsp-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 7>;
@@ -4370,7 +4350,6 @@
npu-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 8>;
@@ -4391,7 +4370,6 @@
video-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&tsens1 9>;

View File

@@ -79,7 +79,7 @@
sleep_clk: sleep-clk {
compatible = "fixed-clock";
clock-frequency = <32000>;
clock-frequency = <32764>;
#clock-cells = <0>;
};
};

View File

@@ -1119,7 +1119,7 @@
remoteproc_adsp: remoteproc@3000000 {
compatible = "qcom,sc8280xp-adsp-pas";
reg = <0 0x03000000 0 0x100>;
reg = <0 0x03000000 0 0x10000>;
interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
<&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
@@ -1806,7 +1806,7 @@
remoteproc_nsp0: remoteproc@1b300000 {
compatible = "qcom,sc8280xp-nsp0-pas";
reg = <0 0x1b300000 0 0x100>;
reg = <0 0x1b300000 0 0x10000>;
interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_LEVEL_HIGH>,
<&smp2p_nsp0_in 0 IRQ_TYPE_EDGE_RISING>,
@@ -1937,7 +1937,7 @@
remoteproc_nsp1: remoteproc@21300000 {
compatible = "qcom,sc8280xp-nsp1-pas";
reg = <0 0x21300000 0 0x100>;
reg = <0 0x21300000 0 0x10000>;
interrupts-extended = <&intc GIC_SPI 887 IRQ_TYPE_LEVEL_HIGH>,
<&smp2p_nsp1_in 0 IRQ_TYPE_EDGE_RISING>,

View File

@@ -4234,16 +4234,16 @@
"vfe1",
"vfe_lite";
interrupts = <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 477 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 478 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 479 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 448 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>;
interrupts = <GIC_SPI 464 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 466 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 468 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 477 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 478 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 479 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 448 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 465 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 467 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 469 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "csid0",
"csid1",
"csid2",

View File

@@ -27,7 +27,7 @@
sleep_clk: sleep-clk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32000>;
clock-frequency = <32764>;
clock-output-names = "sleep_clk";
};
};

View File

@@ -855,7 +855,7 @@
adsp: remoteproc@3000000 {
compatible = "qcom,sm6350-adsp-pas";
reg = <0 0x03000000 0 0x100>;
reg = <0x0 0x03000000 0x0 0x10000>;
interrupts-extended = <&pdc 6 IRQ_TYPE_LEVEL_HIGH>,
<&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
@@ -923,7 +923,7 @@
mpss: remoteproc@4080000 {
compatible = "qcom,sm6350-mpss-pas";
reg = <0x0 0x04080000 0x0 0x4040>;
reg = <0x0 0x04080000 0x0 0x10000>;
interrupts-extended = <&intc GIC_SPI 136 IRQ_TYPE_EDGE_RISING>,
<&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,

View File

@@ -20,7 +20,7 @@
chassis-type = "handset";
/* required for bootloader to select correct board */
qcom,msm-id = <434 0x10000>, <459 0x10000>;
qcom,msm-id = <459 0x10000>;
qcom,board-id = <8 32>;
aliases {

View File

@@ -376,8 +376,8 @@
pinctrl-0 = <&da7280_intr_default>;
dlg,actuator-type = "LRA";
dlg,dlg,const-op-mode = <1>;
dlg,dlg,periodic-op-mode = <1>;
dlg,const-op-mode = <1>;
dlg,periodic-op-mode = <1>;
dlg,nom-microvolt = <2000000>;
dlg,abs-max-microvolt = <2000000>;
dlg,imax-microamp = <129000>;

View File

@@ -84,7 +84,7 @@
sleep_clk: sleep-clk {
compatible = "fixed-clock";
clock-frequency = <32768>;
clock-frequency = <32764>;
#clock-cells = <0>;
};
};
@@ -3291,20 +3291,20 @@
"vfe_lite0",
"vfe_lite1";
interrupts = <GIC_SPI 477 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 478 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 479 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 448 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>;
interrupts = <GIC_SPI 477 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 478 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 479 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 448 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 86 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 89 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 464 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 466 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 468 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 359 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 465 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 467 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 469 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 360 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "csiphy0",
"csiphy1",
"csiphy2",

View File

@@ -34,7 +34,7 @@
sleep_clk: sleep-clk {
compatible = "fixed-clock";
clock-frequency = <32000>;
clock-frequency = <32764>;
#clock-cells = <0>;
};
@@ -1641,7 +1641,7 @@
mpss: remoteproc@4080000 {
compatible = "qcom,sm8350-mpss-pas";
reg = <0x0 0x04080000 0x0 0x4040>;
reg = <0x0 0x04080000 0x0 0x10000>;
interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_LEVEL_HIGH>,
<&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>,

View File

@@ -33,7 +33,7 @@
sleep_clk: sleep-clk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32000>;
clock-frequency = <32764>;
};
};
@@ -2265,7 +2265,7 @@
remoteproc_mpss: remoteproc@4080000 {
compatible = "qcom,sm8450-mpss-pas";
reg = <0x0 0x04080000 0x0 0x4040>;
reg = <0x0 0x04080000 0x0 0x10000>;
interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_EDGE_RISING>,
<&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>,

View File

@@ -147,7 +147,7 @@
snps,reset-active-low;
snps,reset-delays-us = <0 10000 50000>;
tx_delay = <0x10>;
rx_delay = <0x10>;
rx_delay = <0x23>;
status = "okay";
};

View File

@@ -23,7 +23,6 @@
interrupt-controller;
reg = <0x00 0x01800000 0x00 0x10000>, /* GICD */
<0x00 0x01880000 0x00 0xc0000>, /* GICR */
<0x00 0x01880000 0x00 0xc0000>, /* GICR */
<0x01 0x00000000 0x00 0x2000>, /* GICC */
<0x01 0x00010000 0x00 0x1000>, /* GICH */
<0x01 0x00020000 0x00 0x2000>; /* GICV */

View File

@@ -18,7 +18,6 @@
compatible = "arm,gic-v3";
reg = <0x00 0x01800000 0x00 0x10000>, /* GICD */
<0x00 0x01880000 0x00 0xc0000>, /* GICR */
<0x00 0x01880000 0x00 0xc0000>, /* GICR */
<0x01 0x00000000 0x00 0x2000>, /* GICC */
<0x01 0x00010000 0x00 0x1000>, /* GICH */
<0x01 0x00020000 0x00 0x2000>; /* GICV */

View File

@@ -87,16 +87,18 @@ int populate_cache_leaves(unsigned int cpu)
unsigned int level, idx;
enum cache_type type;
struct cpu_cacheinfo *this_cpu_ci = get_cpu_cacheinfo(cpu);
struct cacheinfo *this_leaf = this_cpu_ci->info_list;
struct cacheinfo *infos = this_cpu_ci->info_list;
for (idx = 0, level = 1; level <= this_cpu_ci->num_levels &&
idx < this_cpu_ci->num_leaves; idx++, level++) {
idx < this_cpu_ci->num_leaves; level++) {
type = get_cache_type(level);
if (type == CACHE_TYPE_SEPARATE) {
ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
if (idx + 1 >= this_cpu_ci->num_leaves)
break;
ci_leaf_init(&infos[idx++], CACHE_TYPE_DATA, level);
ci_leaf_init(&infos[idx++], CACHE_TYPE_INST, level);
} else {
ci_leaf_init(this_leaf++, type, level);
ci_leaf_init(&infos[idx++], type, level);
}
}
return 0;

View File

@@ -38,6 +38,7 @@ SECTIONS
*/
/DISCARD/ : {
*(.note.GNU-stack .note.gnu.property)
*(.ARM.attributes)
}
.note : { *(.note.*) } :text :note

View File

@@ -182,6 +182,7 @@ SECTIONS
/DISCARD/ : {
*(.interp .dynamic)
*(.dynsym .dynstr .hash .gnu.hash)
*(.ARM.attributes)
}
. = KIMAGE_VADDR;

View File

@@ -544,6 +544,18 @@ pte_t huge_ptep_clear_flush(struct vm_area_struct *vma,
static int __init hugetlbpage_init(void)
{
/*
* HugeTLB pages are supported on maximum four page table
* levels (PUD, CONT PMD, PMD, CONT PTE) for a given base
* page size, corresponding to hugetlb_add_hstate() calls
* here.
*
* HUGE_MAX_HSTATE should at least match maximum supported
* HugeTLB page sizes on the platform. Any new addition to
* supported HugeTLB page sizes will also require changing
* HUGE_MAX_HSTATE as well.
*/
BUILD_BUG_ON(HUGE_MAX_HSTATE < 4);
if (pud_sect_supported())
hugetlb_add_hstate(PUD_SHIFT - PAGE_SHIFT);

View File

@@ -56,7 +56,7 @@ static inline unsigned long __xchg(unsigned long x, volatile void *ptr,
__typeof__(ptr) __ptr = (ptr); \
__typeof__(*(ptr)) __old = (old); \
__typeof__(*(ptr)) __new = (new); \
__typeof__(*(ptr)) __oldval = 0; \
__typeof__(*(ptr)) __oldval = (__typeof__(*(ptr))) 0; \
\
asm volatile( \
"1: %0 = memw_locked(%1);\n" \

View File

@@ -195,8 +195,10 @@ int die(const char *str, struct pt_regs *regs, long err)
printk(KERN_EMERG "Oops: %s[#%d]:\n", str, ++die.counter);
if (notify_die(DIE_OOPS, str, regs, err, pt_cause(regs), SIGSEGV) ==
NOTIFY_STOP)
NOTIFY_STOP) {
spin_unlock_irq(&die.lock);
return 1;
}
print_modules();
show_regs(regs);

View File

@@ -9,7 +9,7 @@
*/
#ifndef CONFIG_PCI
#include <asm/raw_io.h>
#include <asm/io.h>
#include <asm/kmap.h>
/*
@@ -29,9 +29,9 @@
#define inw_p(port) 0
#define outb_p(port, val) do { } while (0)
#define outw(port, val) do { } while (0)
#define readb raw_inb
#define writeb raw_outb
#define writew raw_outw
#define readb __raw_readb
#define writeb __raw_writeb
#define writew __raw_writew
#endif /* CONFIG_PCI */
#endif /* _ASM_M68K_VGA_H */

View File

@@ -248,7 +248,7 @@ int ftrace_disable_ftrace_graph_caller(void)
#define S_R_SP (0xafb0 << 16) /* s{d,w} R, offset(sp) */
#define OFFSET_MASK 0xffff /* stack offset range: 0 ~ PT_SIZE */
unsigned long ftrace_get_parent_ra_addr(unsigned long self_ra, unsigned long
static unsigned long ftrace_get_parent_ra_addr(unsigned long self_ra, unsigned long
old_parent_ra, unsigned long parent_ra_addr, unsigned long fp)
{
unsigned long sp, ip, tmp;

View File

@@ -21,13 +21,11 @@ static ssize_t boardinfo_show(struct kobject *kobj,
"BIOS Info\n"
"Vendor\t\t\t: %s\n"
"Version\t\t\t: %s\n"
"ROM Size\t\t: %d KB\n"
"Release Date\t\t: %s\n",
strsep(&tmp_board_manufacturer, "-"),
eboard->name,
strsep(&tmp_bios_vendor, "-"),
einter->description,
einter->size,
especial->special_name);
}
static struct kobj_attribute boardinfo_attr = __ATTR(boardinfo, 0444,

View File

@@ -1660,7 +1660,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx,
break;
}
case 0x3:
case 0x7:
if (MIPSInst_FUNC(ir) != pfetch_op)
return SIGILL;

View File

@@ -15,6 +15,15 @@
extern bool hugetlb_disabled;
static inline bool hugepages_supported(void)
{
if (hugetlb_disabled)
return false;
return HPAGE_SHIFT != 0;
}
#define hugepages_supported hugepages_supported
void __init hugetlbpage_init_defaultsize(void);
int slice_is_hugepage_only_range(struct mm_struct *mm, unsigned long addr,

View File

@@ -242,7 +242,7 @@ static inline int tlbe_is_writable(struct kvm_book3e_206_tlb_entry *tlbe)
return tlbe->mas7_3 & (MAS3_SW|MAS3_UW);
}
static inline void kvmppc_e500_ref_setup(struct tlbe_ref *ref,
static inline bool kvmppc_e500_ref_setup(struct tlbe_ref *ref,
struct kvm_book3e_206_tlb_entry *gtlbe,
kvm_pfn_t pfn, unsigned int wimg)
{
@@ -252,11 +252,7 @@ static inline void kvmppc_e500_ref_setup(struct tlbe_ref *ref,
/* Use guest supplied MAS2_G and MAS2_E */
ref->flags |= (gtlbe->mas2 & MAS2_ATTRIB_MASK) | wimg;
/* Mark the page accessed */
kvm_set_pfn_accessed(pfn);
if (tlbe_is_writable(gtlbe))
kvm_set_pfn_dirty(pfn);
return tlbe_is_writable(gtlbe);
}
static inline void kvmppc_e500_ref_release(struct tlbe_ref *ref)
@@ -326,6 +322,7 @@ static inline int kvmppc_e500_shadow_map(struct kvmppc_vcpu_e500 *vcpu_e500,
{
struct kvm_memory_slot *slot;
unsigned long pfn = 0; /* silence GCC warning */
struct page *page = NULL;
unsigned long hva;
int pfnmap = 0;
int tsize = BOOK3E_PAGESZ_4K;
@@ -337,6 +334,7 @@ static inline int kvmppc_e500_shadow_map(struct kvmppc_vcpu_e500 *vcpu_e500,
unsigned int wimg = 0;
pgd_t *pgdir;
unsigned long flags;
bool writable = false;
/* used to check for invalidations in progress */
mmu_seq = kvm->mmu_invalidate_seq;
@@ -446,7 +444,7 @@ static inline int kvmppc_e500_shadow_map(struct kvmppc_vcpu_e500 *vcpu_e500,
if (likely(!pfnmap)) {
tsize_pages = 1UL << (tsize + 10 - PAGE_SHIFT);
pfn = gfn_to_pfn_memslot(slot, gfn);
pfn = __kvm_faultin_pfn(slot, gfn, FOLL_WRITE, NULL, &page);
if (is_error_noslot_pfn(pfn)) {
if (printk_ratelimit())
pr_err("%s: real page not found for gfn %lx\n",
@@ -481,7 +479,6 @@ static inline int kvmppc_e500_shadow_map(struct kvmppc_vcpu_e500 *vcpu_e500,
if (pte_present(pte)) {
wimg = (pte_val(pte) >> PTE_WIMGE_SHIFT) &
MAS2_WIMGE_MASK;
local_irq_restore(flags);
} else {
local_irq_restore(flags);
pr_err_ratelimited("%s: pte not present: gfn %lx,pfn %lx\n",
@@ -490,8 +487,9 @@ static inline int kvmppc_e500_shadow_map(struct kvmppc_vcpu_e500 *vcpu_e500,
goto out;
}
}
kvmppc_e500_ref_setup(ref, gtlbe, pfn, wimg);
local_irq_restore(flags);
writable = kvmppc_e500_ref_setup(ref, gtlbe, pfn, wimg);
kvmppc_e500_setup_stlbe(&vcpu_e500->vcpu, gtlbe, tsize,
ref, gvaddr, stlbe);
@@ -499,11 +497,8 @@ static inline int kvmppc_e500_shadow_map(struct kvmppc_vcpu_e500 *vcpu_e500,
kvmppc_mmu_flush_icache(pfn);
out:
kvm_release_faultin_page(kvm, page, !!ret, writable);
spin_unlock(&kvm->mmu_lock);
/* Drop refcount on page, so that mmu notifiers can clear it */
kvm_release_pfn_clean(pfn);
return ret;
}

View File

@@ -580,8 +580,10 @@ static int pseries_eeh_get_state(struct eeh_pe *pe, int *delay)
switch(rets[0]) {
case 0:
result = EEH_STATE_MMIO_ACTIVE |
EEH_STATE_DMA_ACTIVE;
result = EEH_STATE_MMIO_ACTIVE |
EEH_STATE_DMA_ACTIVE |
EEH_STATE_MMIO_ENABLED |
EEH_STATE_DMA_ENABLED;
break;
case 1:
result = EEH_STATE_RESET_ACTIVE |

View File

@@ -21,7 +21,7 @@ KBUILD_AFLAGS_DECOMPRESSOR := $(CLANG_FLAGS) -m64 -D__ASSEMBLY__
ifndef CONFIG_AS_IS_LLVM
KBUILD_AFLAGS_DECOMPRESSOR += $(if $(CONFIG_DEBUG_INFO),$(aflags_dwarf))
endif
KBUILD_CFLAGS_DECOMPRESSOR := $(CLANG_FLAGS) -m64 -O2 -mpacked-stack
KBUILD_CFLAGS_DECOMPRESSOR := $(CLANG_FLAGS) -m64 -O2 -mpacked-stack -std=gnu11
KBUILD_CFLAGS_DECOMPRESSOR += -DDISABLE_BRANCH_PROFILING -D__NO_FORTIFY
KBUILD_CFLAGS_DECOMPRESSOR += -fno-delete-null-pointer-checks -msoft-float -mbackchain
KBUILD_CFLAGS_DECOMPRESSOR += -fno-asynchronous-unwind-tables

View File

@@ -44,7 +44,7 @@ static inline int arch_futex_atomic_op_inuser(int op, int oparg, int *oval,
break;
case FUTEX_OP_ANDN:
__futex_atomic_op("lr %2,%1\nnr %2,%5\n",
ret, oldval, newval, uaddr, oparg);
ret, oldval, newval, uaddr, ~oparg);
break;
case FUTEX_OP_XOR:
__futex_atomic_op("lr %2,%1\nxr %2,%5\n",

View File

@@ -1331,8 +1331,14 @@ static struct vsie_page *get_vsie_page(struct kvm *kvm, unsigned long addr)
page = radix_tree_lookup(&kvm->arch.vsie.addr_to_page, addr >> 9);
rcu_read_unlock();
if (page) {
if (page_ref_inc_return(page) == 2)
return page_to_virt(page);
if (page_ref_inc_return(page) == 2) {
if (page->index == addr)
return page_to_virt(page);
/*
* We raced with someone reusing + putting this vsie
* page before we grabbed it.
*/
}
page_ref_dec(page);
}
@@ -1362,15 +1368,20 @@ static struct vsie_page *get_vsie_page(struct kvm *kvm, unsigned long addr)
kvm->arch.vsie.next++;
kvm->arch.vsie.next %= nr_vcpus;
}
radix_tree_delete(&kvm->arch.vsie.addr_to_page, page->index >> 9);
if (page->index != ULONG_MAX)
radix_tree_delete(&kvm->arch.vsie.addr_to_page,
page->index >> 9);
}
page->index = addr;
/* double use of the same address */
/* Mark it as invalid until it resides in the tree. */
page->index = ULONG_MAX;
/* Double use of the same address or allocation failure. */
if (radix_tree_insert(&kvm->arch.vsie.addr_to_page, addr >> 9, page)) {
page_ref_dec(page);
mutex_unlock(&kvm->arch.vsie.mutex);
return NULL;
}
page->index = addr;
mutex_unlock(&kvm->arch.vsie.mutex);
vsie_page = page_to_virt(page);
@@ -1463,7 +1474,9 @@ void kvm_s390_vsie_destroy(struct kvm *kvm)
vsie_page = page_to_virt(page);
release_gmap_shadow(vsie_page);
/* free the radix tree entry */
radix_tree_delete(&kvm->arch.vsie.addr_to_page, page->index >> 9);
if (page->index != ULONG_MAX)
radix_tree_delete(&kvm->arch.vsie.addr_to_page,
page->index >> 9);
__free_page(page);
}
kvm->arch.vsie.page_count = 0;

View File

@@ -21,7 +21,7 @@ UBSAN_SANITIZE := n
KASAN_SANITIZE := n
KCSAN_SANITIZE := n
KBUILD_CFLAGS := -fno-strict-aliasing -Wall -Wstrict-prototypes
KBUILD_CFLAGS := -std=gnu11 -fno-strict-aliasing -Wall -Wstrict-prototypes
KBUILD_CFLAGS += -Wno-pointer-sign -Wno-sign-compare
KBUILD_CFLAGS += -fno-zero-initialized-in-bss -fno-builtin -ffreestanding
KBUILD_CFLAGS += -c -MD -Os -m64 -msoft-float -fno-common

View File

@@ -34,6 +34,7 @@ targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma \
# avoid errors with '-march=i386', and future flags may depend on the target to
# be valid.
KBUILD_CFLAGS := -m$(BITS) -O2 $(CLANG_FLAGS)
KBUILD_CFLAGS += -std=gnu11
KBUILD_CFLAGS += -fno-strict-aliasing -fPIE
KBUILD_CFLAGS += -Wundef
KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING

View File

@@ -4582,8 +4582,11 @@ static void intel_pmu_cpu_starting(int cpu)
init_debug_store_on_cpu(cpu);
/*
* Deal with CPUs that don't clear their LBRs on power-up.
* Deal with CPUs that don't clear their LBRs on power-up, and that may
* even boot with LBRs enabled.
*/
if (!static_cpu_has(X86_FEATURE_ARCH_LBR) && x86_pmu.lbr_nr)
msr_clear_bit(MSR_IA32_DEBUGCTLMSR, DEBUGCTLMSR_LBR_BIT);
intel_pmu_lbr_reset();
cpuc->lbr_sel = NULL;

View File

@@ -16,6 +16,7 @@
# define PAGES_NR 4
#endif
# define KEXEC_CONTROL_PAGE_SIZE 4096
# define KEXEC_CONTROL_CODE_MAX_SIZE 2048
#ifndef __ASSEMBLY__
@@ -44,7 +45,6 @@ struct kimage;
/* Maximum address we can use for the control code buffer */
# define KEXEC_CONTROL_MEMORY_LIMIT TASK_SIZE
# define KEXEC_CONTROL_PAGE_SIZE 4096
/* The native architecture */
# define KEXEC_ARCH KEXEC_ARCH_386
@@ -59,9 +59,6 @@ struct kimage;
/* Maximum address we can use for the control pages */
# define KEXEC_CONTROL_MEMORY_LIMIT (MAXMEM-1)
/* Allocate one page for the pdp and the second for the code */
# define KEXEC_CONTROL_PAGE_SIZE (4096UL + 4096UL)
/* The native architecture */
# define KEXEC_ARCH KEXEC_ARCH_X86_64
#endif
@@ -146,6 +143,19 @@ struct kimage_arch {
};
#else
struct kimage_arch {
/*
* This is a kimage control page, as it must not overlap with either
* source or destination address ranges.
*/
pgd_t *pgd;
/*
* The virtual mapping of the control code page itself is used only
* during the transition, while the current kernel's pages are all
* in place. Thus the intermediate page table pages used to map it
* are not control pages, but instead just normal pages obtained
* with get_zeroed_page(). And have to be tracked (below) so that
* they can be freed.
*/
p4d_t *p4d;
pud_t *pud;
pmd_t *pmd;

View File

@@ -33,6 +33,8 @@ typedef struct {
*/
atomic64_t tlb_gen;
unsigned long next_trim_cpumask;
#ifdef CONFIG_MODIFY_LDT_SYSCALL
struct rw_semaphore ldt_usr_sem;
struct ldt_struct *ldt;

View File

@@ -106,6 +106,7 @@ static inline int init_new_context(struct task_struct *tsk,
mm->context.ctx_id = atomic64_inc_return(&last_mm_ctx_id);
atomic64_set(&mm->context.tlb_gen, 0);
mm->context.next_trim_cpumask = jiffies + HZ;
#ifdef CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS
if (cpu_feature_enabled(X86_FEATURE_OSPKE)) {

View File

@@ -357,7 +357,8 @@
#define MSR_IA32_PASID_VALID BIT_ULL(31)
/* DEBUGCTLMSR bits (others vary by model): */
#define DEBUGCTLMSR_LBR (1UL << 0) /* last branch recording */
#define DEBUGCTLMSR_LBR_BIT 0 /* last branch recording */
#define DEBUGCTLMSR_LBR (1UL << DEBUGCTLMSR_LBR_BIT)
#define DEBUGCTLMSR_BTF_SHIFT 1
#define DEBUGCTLMSR_BTF (1UL << 1) /* single-step on branches */
#define DEBUGCTLMSR_BUS_LOCK_DETECT (1UL << 2)

View File

@@ -208,6 +208,7 @@ struct flush_tlb_info {
unsigned int initiating_cpu;
u8 stride_shift;
u8 freed_tables;
u8 trim_cpumask;
};
void flush_tlb_local(void);

View File

@@ -519,6 +519,10 @@ static __init void fix_erratum_688(void)
static __init int init_amd_nbs(void)
{
if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD &&
boot_cpu_data.x86_vendor != X86_VENDOR_HYGON)
return 0;
amd_cache_northbridges();
amd_cache_gart();

View File

@@ -8,6 +8,7 @@
#include <linux/timex.h>
#include <linux/i8253.h>
#include <asm/hypervisor.h>
#include <asm/apic.h>
#include <asm/hpet.h>
#include <asm/time.h>
@@ -39,9 +40,15 @@ static bool __init use_pit(void)
bool __init pit_timer_init(void)
{
if (!use_pit())
if (!use_pit()) {
/*
* Don't just ignore the PIT. Ensure it's stopped, because
* VMMs otherwise steal CPU time just to pointlessly waggle
* the (masked) IRQ.
*/
clockevent_i8253_disable();
return false;
}
clockevent_i8253_init(true);
global_clock_event = &i8253_clockevent;
return true;

View File

@@ -149,7 +149,8 @@ static void free_transition_pgtable(struct kimage *image)
image->arch.pte = NULL;
}
static int init_transition_pgtable(struct kimage *image, pgd_t *pgd)
static int init_transition_pgtable(struct kimage *image, pgd_t *pgd,
unsigned long control_page)
{
pgprot_t prot = PAGE_KERNEL_EXEC_NOENC;
unsigned long vaddr, paddr;
@@ -160,7 +161,7 @@ static int init_transition_pgtable(struct kimage *image, pgd_t *pgd)
pte_t *pte;
vaddr = (unsigned long)relocate_kernel;
paddr = __pa(page_address(image->control_code_page)+PAGE_SIZE);
paddr = control_page;
pgd += pgd_index(vaddr);
if (!pgd_present(*pgd)) {
p4d = (p4d_t *)get_zeroed_page(GFP_KERNEL);
@@ -219,7 +220,7 @@ static void *alloc_pgt_page(void *data)
return p;
}
static int init_pgtable(struct kimage *image, unsigned long start_pgtable)
static int init_pgtable(struct kimage *image, unsigned long control_page)
{
struct x86_mapping_info info = {
.alloc_pgt_page = alloc_pgt_page,
@@ -228,12 +229,12 @@ static int init_pgtable(struct kimage *image, unsigned long start_pgtable)
.kernpg_flag = _KERNPG_TABLE_NOENC,
};
unsigned long mstart, mend;
pgd_t *level4p;
int result;
int i;
level4p = (pgd_t *)__va(start_pgtable);
clear_page(level4p);
image->arch.pgd = alloc_pgt_page(image);
if (!image->arch.pgd)
return -ENOMEM;
if (cc_platform_has(CC_ATTR_GUEST_MEM_ENCRYPT)) {
info.page_flag |= _PAGE_ENC;
@@ -247,8 +248,8 @@ static int init_pgtable(struct kimage *image, unsigned long start_pgtable)
mstart = pfn_mapped[i].start << PAGE_SHIFT;
mend = pfn_mapped[i].end << PAGE_SHIFT;
result = kernel_ident_mapping_init(&info,
level4p, mstart, mend);
result = kernel_ident_mapping_init(&info, image->arch.pgd,
mstart, mend);
if (result)
return result;
}
@@ -263,8 +264,8 @@ static int init_pgtable(struct kimage *image, unsigned long start_pgtable)
mstart = image->segment[i].mem;
mend = mstart + image->segment[i].memsz;
result = kernel_ident_mapping_init(&info,
level4p, mstart, mend);
result = kernel_ident_mapping_init(&info, image->arch.pgd,
mstart, mend);
if (result)
return result;
@@ -274,15 +275,19 @@ static int init_pgtable(struct kimage *image, unsigned long start_pgtable)
* Prepare EFI systab and ACPI tables for kexec kernel since they are
* not covered by pfn_mapped.
*/
result = map_efi_systab(&info, level4p);
result = map_efi_systab(&info, image->arch.pgd);
if (result)
return result;
result = map_acpi_tables(&info, level4p);
result = map_acpi_tables(&info, image->arch.pgd);
if (result)
return result;
return init_transition_pgtable(image, level4p);
/*
* This must be last because the intermediate page table pages it
* allocates will not be control pages and may overlap the image.
*/
return init_transition_pgtable(image, image->arch.pgd, control_page);
}
static void load_segments(void)
@@ -299,14 +304,14 @@ static void load_segments(void)
int machine_kexec_prepare(struct kimage *image)
{
unsigned long start_pgtable;
unsigned long control_page;
int result;
/* Calculate the offsets */
start_pgtable = page_to_pfn(image->control_code_page) << PAGE_SHIFT;
control_page = page_to_pfn(image->control_code_page) << PAGE_SHIFT;
/* Setup the identity mapped 64bit page table */
result = init_pgtable(image, start_pgtable);
result = init_pgtable(image, control_page);
if (result)
return result;
@@ -353,13 +358,12 @@ void machine_kexec(struct kimage *image)
#endif
}
control_page = page_address(image->control_code_page) + PAGE_SIZE;
control_page = page_address(image->control_code_page);
__memcpy(control_page, relocate_kernel, KEXEC_CONTROL_CODE_MAX_SIZE);
page_list[PA_CONTROL_PAGE] = virt_to_phys(control_page);
page_list[VA_CONTROL_PAGE] = (unsigned long)control_page;
page_list[PA_TABLE_PAGE] =
(unsigned long)__pa(page_address(image->control_code_page));
page_list[PA_TABLE_PAGE] = (unsigned long)__pa(image->arch.pgd);
if (image->type == KEXEC_TYPE_DEFAULT)
page_list[PA_SWAP_PAGE] = (page_to_pfn(image->swap_page)
@@ -578,8 +582,7 @@ static void kexec_mark_crashkres(bool protect)
/* Don't touch the control code page used in crash_kexec().*/
control = PFN_PHYS(page_to_pfn(kexec_crash_image->control_code_page));
/* Control code page is located in the 2nd page. */
kexec_mark_range(crashk_res.start, control + PAGE_SIZE - 1, protect);
kexec_mark_range(crashk_res.start, control - 1, protect);
control += KEXEC_CONTROL_PAGE_SIZE;
kexec_mark_range(control, crashk_res.end, protect);
}

View File

@@ -173,7 +173,6 @@ EXPORT_SYMBOL_GPL(arch_static_call_transform);
noinstr void __static_call_update_early(void *tramp, void *func)
{
BUG_ON(system_state != SYSTEM_BOOTING);
BUG_ON(!early_boot_irqs_disabled);
BUG_ON(static_call_initialized);
__text_gen_insn(tramp, JMP32_INSN_OPCODE, tramp, func, JMP32_INSN_SIZE);
sync_core();

View File

@@ -1915,6 +1915,9 @@ static u64 kvm_hv_send_ipi(struct kvm_vcpu *vcpu, struct kvm_hv_hcall *hc)
u32 vector;
bool all_cpus;
if (!lapic_in_kernel(vcpu))
return HV_STATUS_INVALID_HYPERCALL_INPUT;
if (hc->code == HVCALL_SEND_IPI) {
if (!hc->fast) {
if (unlikely(kvm_read_guest(kvm, hc->ingpa, &send_ipi,
@@ -2518,7 +2521,8 @@ int kvm_get_hv_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid2 *cpuid,
ent->eax |= HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED;
ent->eax |= HV_X64_APIC_ACCESS_RECOMMENDED;
ent->eax |= HV_X64_RELAXED_TIMING_RECOMMENDED;
ent->eax |= HV_X64_CLUSTER_IPI_RECOMMENDED;
if (!vcpu || lapic_in_kernel(vcpu))
ent->eax |= HV_X64_CLUSTER_IPI_RECOMMENDED;
ent->eax |= HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED;
if (evmcs_ver)
ent->eax |= HV_X64_ENLIGHTENED_VMCS_RECOMMENDED;

View File

@@ -5150,7 +5150,7 @@ void kvm_init_shadow_npt_mmu(struct kvm_vcpu *vcpu, unsigned long cr0,
union kvm_mmu_page_role root_role;
/* NPT requires CR0.PG=1. */
WARN_ON_ONCE(cpu_role.base.direct);
WARN_ON_ONCE(cpu_role.base.direct || !cpu_role.base.guest_mode);
root_role = cpu_role.base;
root_role.level = kvm_mmu_get_tdp_level(vcpu);

View File

@@ -619,6 +619,11 @@ static void nested_vmcb02_prepare_control(struct vcpu_svm *svm,
u32 pause_count12;
u32 pause_thresh12;
nested_svm_transition_tlb_flush(vcpu);
/* Enter Guest-Mode */
enter_guest_mode(vcpu);
/*
* Filled at exit: exit_code, exit_code_hi, exit_info_1, exit_info_2,
* exit_int_info, exit_int_info_err, next_rip, insn_len, insn_bytes.
@@ -717,11 +722,6 @@ static void nested_vmcb02_prepare_control(struct vcpu_svm *svm,
}
}
nested_svm_transition_tlb_flush(vcpu);
/* Enter Guest-Mode */
enter_guest_mode(vcpu);
/*
* Merge guest and host intercepts - must be called with vcpu in
* guest-mode to take effect.

View File

@@ -878,9 +878,36 @@ done:
nr_invalidate);
}
static bool tlb_is_not_lazy(int cpu, void *data)
static bool should_flush_tlb(int cpu, void *data)
{
return !per_cpu(cpu_tlbstate_shared.is_lazy, cpu);
struct flush_tlb_info *info = data;
/* Lazy TLB will get flushed at the next context switch. */
if (per_cpu(cpu_tlbstate_shared.is_lazy, cpu))
return false;
/* No mm means kernel memory flush. */
if (!info->mm)
return true;
/* The target mm is loaded, and the CPU is not lazy. */
if (per_cpu(cpu_tlbstate.loaded_mm, cpu) == info->mm)
return true;
/* In cpumask, but not the loaded mm? Periodically remove by flushing. */
if (info->trim_cpumask)
return true;
return false;
}
static bool should_trim_cpumask(struct mm_struct *mm)
{
if (time_after(jiffies, READ_ONCE(mm->context.next_trim_cpumask))) {
WRITE_ONCE(mm->context.next_trim_cpumask, jiffies + HZ);
return true;
}
return false;
}
DEFINE_PER_CPU_SHARED_ALIGNED(struct tlb_state_shared, cpu_tlbstate_shared);
@@ -914,7 +941,7 @@ STATIC_NOPV void native_flush_tlb_multi(const struct cpumask *cpumask,
if (info->freed_tables)
on_each_cpu_mask(cpumask, flush_tlb_func, (void *)info, true);
else
on_each_cpu_cond_mask(tlb_is_not_lazy, flush_tlb_func,
on_each_cpu_cond_mask(should_flush_tlb, flush_tlb_func,
(void *)info, 1, cpumask);
}
@@ -965,6 +992,7 @@ static struct flush_tlb_info *get_flush_tlb_info(struct mm_struct *mm,
info->freed_tables = freed_tables;
info->new_tlb_gen = new_tlb_gen;
info->initiating_cpu = smp_processor_id();
info->trim_cpumask = 0;
return info;
}
@@ -1007,6 +1035,7 @@ void flush_tlb_mm_range(struct mm_struct *mm, unsigned long start,
* flush_tlb_func_local() directly in this case.
*/
if (cpumask_any_but(mm_cpumask(mm), cpu) < nr_cpu_ids) {
info->trim_cpumask = should_trim_cpumask(mm);
flush_tlb_multi(mm_cpumask(mm), info);
} else if (mm == this_cpu_read(cpu_tlbstate.loaded_mm)) {
lockdep_assert_irqs_enabled();

View File

@@ -97,6 +97,51 @@ static pud_t level3_user_vsyscall[PTRS_PER_PUD] __page_aligned_bss;
*/
static DEFINE_SPINLOCK(xen_reservation_lock);
/* Protected by xen_reservation_lock. */
#define MIN_CONTIG_ORDER 9 /* 2MB */
static unsigned int discontig_frames_order = MIN_CONTIG_ORDER;
static unsigned long discontig_frames_early[1UL << MIN_CONTIG_ORDER] __initdata;
static unsigned long *discontig_frames __refdata = discontig_frames_early;
static bool discontig_frames_dyn;
static int alloc_discontig_frames(unsigned int order)
{
unsigned long *new_array, *old_array;
unsigned int old_order;
unsigned long flags;
BUG_ON(order < MIN_CONTIG_ORDER);
BUILD_BUG_ON(sizeof(discontig_frames_early) != PAGE_SIZE);
new_array = (unsigned long *)__get_free_pages(GFP_KERNEL,
order - MIN_CONTIG_ORDER);
if (!new_array)
return -ENOMEM;
spin_lock_irqsave(&xen_reservation_lock, flags);
old_order = discontig_frames_order;
if (order > discontig_frames_order || !discontig_frames_dyn) {
if (!discontig_frames_dyn)
old_array = NULL;
else
old_array = discontig_frames;
discontig_frames = new_array;
discontig_frames_order = order;
discontig_frames_dyn = true;
} else {
old_array = new_array;
}
spin_unlock_irqrestore(&xen_reservation_lock, flags);
free_pages((unsigned long)old_array, old_order - MIN_CONTIG_ORDER);
return 0;
}
/*
* Note about cr3 (pagetable base) values:
*
@@ -766,6 +811,7 @@ void xen_mm_pin_all(void)
{
struct page *page;
spin_lock(&init_mm.page_table_lock);
spin_lock(&pgd_lock);
list_for_each_entry(page, &pgd_list, lru) {
@@ -776,6 +822,7 @@ void xen_mm_pin_all(void)
}
spin_unlock(&pgd_lock);
spin_unlock(&init_mm.page_table_lock);
}
static void __init xen_mark_pinned(struct mm_struct *mm, struct page *page,
@@ -797,6 +844,9 @@ static void __init xen_after_bootmem(void)
SetPagePinned(virt_to_page(level3_user_vsyscall));
#endif
xen_pgd_walk(&init_mm, xen_mark_pinned, FIXADDR_TOP);
if (alloc_discontig_frames(MIN_CONTIG_ORDER))
BUG();
}
static void xen_unpin_page(struct mm_struct *mm, struct page *page,
@@ -872,6 +922,7 @@ void xen_mm_unpin_all(void)
{
struct page *page;
spin_lock(&init_mm.page_table_lock);
spin_lock(&pgd_lock);
list_for_each_entry(page, &pgd_list, lru) {
@@ -883,6 +934,7 @@ void xen_mm_unpin_all(void)
}
spin_unlock(&pgd_lock);
spin_unlock(&init_mm.page_table_lock);
}
static void xen_activate_mm(struct mm_struct *prev, struct mm_struct *next)
@@ -2177,10 +2229,6 @@ void __init xen_init_mmu_ops(void)
memset(dummy_mapping, 0xff, PAGE_SIZE);
}
/* Protected by xen_reservation_lock. */
#define MAX_CONTIG_ORDER 9 /* 2MB */
static unsigned long discontig_frames[1<<MAX_CONTIG_ORDER];
#define VOID_PTE (mfn_pte(0, __pgprot(0)))
static void xen_zap_pfn_range(unsigned long vaddr, unsigned int order,
unsigned long *in_frames,
@@ -2297,24 +2345,25 @@ int xen_create_contiguous_region(phys_addr_t pstart, unsigned int order,
unsigned int address_bits,
dma_addr_t *dma_handle)
{
unsigned long *in_frames = discontig_frames, out_frame;
unsigned long *in_frames, out_frame;
unsigned long flags;
int success;
unsigned long vstart = (unsigned long)phys_to_virt(pstart);
/*
* Currently an auto-translated guest will not perform I/O, nor will
* it require PAE page directories below 4GB. Therefore any calls to
* this function are redundant and can be ignored.
*/
if (unlikely(order > discontig_frames_order)) {
if (!discontig_frames_dyn)
return -ENOMEM;
if (unlikely(order > MAX_CONTIG_ORDER))
return -ENOMEM;
if (alloc_discontig_frames(order))
return -ENOMEM;
}
memset((void *) vstart, 0, PAGE_SIZE << order);
spin_lock_irqsave(&xen_reservation_lock, flags);
in_frames = discontig_frames;
/* 1. Zap current PTEs, remembering MFNs. */
xen_zap_pfn_range(vstart, order, in_frames, NULL);
@@ -2338,12 +2387,12 @@ int xen_create_contiguous_region(phys_addr_t pstart, unsigned int order,
void xen_destroy_contiguous_region(phys_addr_t pstart, unsigned int order)
{
unsigned long *out_frames = discontig_frames, in_frame;
unsigned long *out_frames, in_frame;
unsigned long flags;
int success;
unsigned long vstart;
if (unlikely(order > MAX_CONTIG_ORDER))
if (unlikely(order > discontig_frames_order))
return;
vstart = (unsigned long)phys_to_virt(pstart);
@@ -2351,6 +2400,8 @@ void xen_destroy_contiguous_region(phys_addr_t pstart, unsigned int order)
spin_lock_irqsave(&xen_reservation_lock, flags);
out_frames = discontig_frames;
/* 1. Find start MFN of contiguous extent. */
in_frame = virt_to_mfn(vstart);

View File

@@ -110,8 +110,8 @@ SYM_FUNC_START(xen_hypercall_hvm)
pop %ebx
pop %eax
#else
lea xen_hypercall_amd(%rip), %rbx
cmp %rax, %rbx
lea xen_hypercall_amd(%rip), %rcx
cmp %rax, %rcx
#ifdef CONFIG_FRAME_POINTER
pop %rax /* Dummy pop. */
#endif
@@ -125,6 +125,7 @@ SYM_FUNC_START(xen_hypercall_hvm)
pop %rcx
pop %rax
#endif
FRAME_END
/* Use correct hypercall function. */
jz xen_hypercall_amd
jmp xen_hypercall_intel

View File

@@ -924,6 +924,7 @@ static void blkcg_fill_root_iostats(void)
blkg_iostat_set(&blkg->iostat.cur, &tmp);
u64_stats_update_end_irqrestore(&blkg->iostat.sync, flags);
}
class_dev_iter_exit(&iter);
}
static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)

View File

@@ -601,11 +601,12 @@ static ssize_t blkdev_read_iter(struct kiocb *iocb, struct iov_iter *to)
file_accessed(iocb->ki_filp);
ret = blkdev_direct_IO(iocb, to);
if (ret >= 0) {
if (ret > 0) {
iocb->ki_pos += ret;
count -= ret;
}
iov_iter_revert(to, count - iov_iter_count(to));
if (ret != -EIOCBQUEUED)
iov_iter_revert(to, count - iov_iter_count(to));
if (ret < 0 || !count)
goto reexpand;
}

View File

@@ -740,7 +740,7 @@ static ssize_t disk_badblocks_store(struct device *dev,
}
#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD
void blk_request_module(dev_t devt)
static bool blk_probe_dev(dev_t devt)
{
unsigned int major = MAJOR(devt);
struct blk_major_name **n;
@@ -750,14 +750,26 @@ void blk_request_module(dev_t devt)
if ((*n)->major == major && (*n)->probe) {
(*n)->probe(devt);
mutex_unlock(&major_names_lock);
return;
return true;
}
}
mutex_unlock(&major_names_lock);
return false;
}
if (request_module("block-major-%d-%d", MAJOR(devt), MINOR(devt)) > 0)
/* Make old-style 2.4 aliases work */
request_module("block-major-%d", MAJOR(devt));
void blk_request_module(dev_t devt)
{
int error;
if (blk_probe_dev(devt))
return;
error = request_module("block-major-%d-%d", MAJOR(devt), MINOR(devt));
/* Make old-style 2.4 aliases work */
if (error > 0)
error = request_module("block-major-%d", MAJOR(devt));
if (!error)
blk_probe_dev(devt);
}
#endif /* CONFIG_BLOCK_LEGACY_AUTOLOAD */

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-or-later
/**
/*
* ldm - Part of the Linux-NTFS project.
*
* Copyright (C) 2001,2002 Richard Russon <ldm@flatcap.org>

View File

@@ -51,13 +51,25 @@ int mac_partition(struct parsed_partitions *state)
}
secsize = be16_to_cpu(md->block_size);
put_dev_sector(sect);
/*
* If the "block size" is not a power of 2, things get weird - we might
* end up with a partition straddling a sector boundary, so we wouldn't
* be able to read a partition entry with read_part_sector().
* Real block sizes are probably (?) powers of two, so just require
* that.
*/
if (!is_power_of_2(secsize))
return -1;
datasize = round_down(secsize, 512);
data = read_part_sector(state, datasize / 512, &sect);
if (!data)
return -1;
partoffset = secsize % 512;
if (partoffset + sizeof(*part) > datasize)
if (partoffset + sizeof(*part) > datasize) {
put_dev_sector(sect);
return -1;
}
part = (struct mac_partition *) (data + partoffset);
if (be16_to_cpu(part->signature) != MAC_PARTITION_MAGIC) {
put_dev_sector(sect);
@@ -110,8 +122,8 @@ int mac_partition(struct parsed_partitions *state)
int i, l;
goodness++;
l = strlen(part->name);
if (strcmp(part->name, "/") == 0)
l = strnlen(part->name, sizeof(part->name));
if (strncmp(part->name, "/", sizeof(part->name)) == 0)
goodness++;
for (i = 0; i <= l - 4; ++i) {
if (strncasecmp(part->name + i, "root",

View File

@@ -155,8 +155,6 @@ static unsigned long ghes_estatus_pool_size_request;
static struct ghes_estatus_cache *ghes_estatus_caches[GHES_ESTATUS_CACHES_SIZE];
static atomic_t ghes_estatus_cache_alloced;
static int ghes_panic_timeout __read_mostly = 30;
static void __iomem *ghes_map(u64 pfn, enum fixed_addresses fixmap_idx)
{
phys_addr_t paddr;
@@ -858,14 +856,16 @@ static void __ghes_panic(struct ghes *ghes,
struct acpi_hest_generic_status *estatus,
u64 buf_paddr, enum fixed_addresses fixmap_idx)
{
const char *msg = GHES_PFX "Fatal hardware error";
__ghes_print_estatus(KERN_EMERG, ghes->generic, estatus);
ghes_clear_estatus(ghes, estatus, buf_paddr, fixmap_idx);
/* reboot to log the error! */
if (!panic_timeout)
panic_timeout = ghes_panic_timeout;
panic("Fatal hardware error!");
pr_emerg("%s but panic disabled\n", msg);
panic(msg);
}
static int ghes_proc(struct ghes *ghes)

View File

@@ -366,19 +366,25 @@ static int acpi_fan_probe(struct platform_device *pdev)
result = sysfs_create_link(&pdev->dev.kobj,
&cdev->device.kobj,
"thermal_cooling");
if (result)
if (result) {
dev_err(&pdev->dev, "Failed to create sysfs link 'thermal_cooling'\n");
goto err_unregister;
}
result = sysfs_create_link(&cdev->device.kobj,
&pdev->dev.kobj,
"device");
if (result) {
dev_err(&pdev->dev, "Failed to create sysfs link 'device'\n");
goto err_end;
goto err_remove_link;
}
return 0;
err_remove_link:
sysfs_remove_link(&pdev->dev.kobj, "thermal_cooling");
err_unregister:
thermal_cooling_device_unregister(cdev);
err_end:
if (fan->acpi4)
acpi_fan_delete_attributes(device);

View File

@@ -263,9 +263,7 @@ static acpi_status acpi_platformrt_space_handler(u32 function,
if (!handler || !module)
goto invalid_guid;
if (!handler->handler_addr ||
!handler->static_data_buffer_addr ||
!handler->acpi_param_buffer_addr) {
if (!handler->handler_addr) {
buffer->prm_status = PRM_HANDLER_ERROR;
return AE_OK;
}

View File

@@ -1128,8 +1128,6 @@ static int acpi_data_prop_read(const struct acpi_device_data *data,
}
break;
}
if (nval == 0)
return -EINVAL;
if (obj->type == ACPI_TYPE_BUFFER) {
if (proptype != DEV_PROP_U8)
@@ -1153,9 +1151,11 @@ static int acpi_data_prop_read(const struct acpi_device_data *data,
ret = acpi_copy_property_array_uint(items, (u64 *)val, nval);
break;
case DEV_PROP_STRING:
ret = acpi_copy_property_array_string(
items, (char **)val,
min_t(u32, nval, obj->package.count));
nval = min_t(u32, nval, obj->package.count);
if (nval == 0)
return -ENODATA;
ret = acpi_copy_property_array_string(items, (char **)val, nval);
break;
default:
ret = -EINVAL;

View File

@@ -658,7 +658,7 @@ static void ata_pio_sector(struct ata_queued_cmd *qc)
{
struct ata_port *ap = qc->ap;
struct page *page;
unsigned int offset;
unsigned int offset, count;
if (!qc->cursg) {
qc->curbytes = qc->nbytes;
@@ -674,25 +674,27 @@ static void ata_pio_sector(struct ata_queued_cmd *qc)
page = nth_page(page, (offset >> PAGE_SHIFT));
offset %= PAGE_SIZE;
trace_ata_sff_pio_transfer_data(qc, offset, qc->sect_size);
/* don't overrun current sg */
count = min(qc->cursg->length - qc->cursg_ofs, qc->sect_size);
trace_ata_sff_pio_transfer_data(qc, offset, count);
/*
* Split the transfer when it splits a page boundary. Note that the
* split still has to be dword aligned like all ATA data transfers.
*/
WARN_ON_ONCE(offset % 4);
if (offset + qc->sect_size > PAGE_SIZE) {
if (offset + count > PAGE_SIZE) {
unsigned int split_len = PAGE_SIZE - offset;
ata_pio_xfer(qc, page, offset, split_len);
ata_pio_xfer(qc, nth_page(page, 1), 0,
qc->sect_size - split_len);
ata_pio_xfer(qc, nth_page(page, 1), 0, count - split_len);
} else {
ata_pio_xfer(qc, page, offset, qc->sect_size);
ata_pio_xfer(qc, page, offset, count);
}
qc->curbytes += qc->sect_size;
qc->cursg_ofs += qc->sect_size;
qc->curbytes += count;
qc->cursg_ofs += count;
if (qc->cursg_ofs == qc->cursg->length) {
qc->cursg = sg_next(qc->cursg);

View File

@@ -1059,6 +1059,7 @@ err_alloc:
kfree(d->wake_buf);
kfree(d->mask_buf_def);
kfree(d->mask_buf);
kfree(d->main_status_buf);
kfree(d->status_buf);
kfree(d->status_reg_buf);
if (d->virt_buf) {
@@ -1139,6 +1140,7 @@ void regmap_del_irq_chip(int irq, struct regmap_irq_chip_data *d)
kfree(d->wake_buf);
kfree(d->mask_buf_def);
kfree(d->mask_buf);
kfree(d->main_status_buf);
kfree(d->status_reg_buf);
kfree(d->status_buf);
if (d->config_buf) {

Some files were not shown because too many files have changed in this diff Show More