mirror of
https://github.com/hardkernel/linux.git
synced 2026-03-25 20:10:23 +09:00
Merge tag 'android14-5.15.144_r00' into branch 'android14-5.15'
This merges the commits up to 5.15.144 LTS into the android14-5.15 branch. Included in here are the following commits: *39420ad9b4ANDROID: GKI: fix crc issue in include/net/addrconf.h *856eb60eabRevert "cred: switch to using atomic_long_t" *3355035c72ANDROID: GKI: fix build error with mm/memory_hotplug.c and v5.15.144 *caae297a7bMerge 5.15.144 into android14-5.15-lts |\ | *1d146b1875Linux 5.15.144 | *4c11798482r8152: fix the autosuspend doesn't work | *aa3cc80e8er8152: remove rtl_vendor_mode function | *07ba21627er8152: avoid to change cfg for all devices | *fa5f992dcfpowerpc/ftrace: Fix stack teardown in ftrace_no_trace | *4624f5f298powerpc/ftrace: Create a dummy stackframe to fix stack unwind | *410c05b60cRDMA/irdma: Prevent zero-length STAG registration | *93e765523bUSB: gadget: core: adjust uevent timing on gadget unbind | *529f020f7bring-buffer: Do not try to put back write_stamp | *b8d59ea203ring-buffer: Fix a race in rb_time_cmpxchg() for 32 bit archs | *fb63b1f994ring-buffer: Fix writing to the buffer with max_data_size | *e9587314fdring-buffer: Have saved event hold the entire event | *8ed7d2800fring-buffer: Do not update before stamp when switching sub-buffers | *547937457ftracing: Update snapshot buffer on resize if it is allocated | *97e70d6698ring-buffer: Fix memory leak of free page | *f94942885edrm/amdgpu/sdma5.2: add begin/end_use ring callbacks | *8175dad2adteam: Fix use-after-free when an option instance allocation fails | *c2134ed532arm64: mm: Always make sw-dirty PTEs hw-dirty in pte_modify | *1bc91916e8ext4: prevent the normalized size from exceeding EXT_MAX_BLOCKS | *1a4da77ef6soundwire: stream: fix NULL pointer dereference for multi_link | *5a95499843btrfs: do not allow non subvolume root targets for snapshot | *7b427d8cb7perf: Fix perf_event_validate_size() lockdep splat | *27714a22a1HID: hid-asus: add const to read-only outgoing usb buffer | *11c17f4276net: usb: qmi_wwan: claim interface 4 for ZTE MF290 | *ca15561c99asm-generic: qspinlock: fix queued_spin_value_unlocked() implementation | *0a3f27d9adHID: multitouch: Add quirk for HONOR GLO-GXXX touchpad | *41759fab26HID: hid-asus: reset the backlight brightness level on resume | *9f093e15faHID: add ALWAYS_POLL quirk for Apple kb | *61fc877f7cHID: glorious: fix Glorious Model I HID report | *23b08531d8platform/x86: intel_telemetry: Fix kernel doc descriptions | *7020385effbcache: avoid NULL checking to c->root in run_cache_set() | *f891bbf13abcache: add code comments for bch_btree_node_get() and __bch_btree_node_alloc() | *8758b0532fbcache: remove redundant assignment to variable cur_idx | *d38288af6fbcache: avoid oversize memory allocation by small stripe_size | *252c2a4795blk-cgroup: bypass blkcg_deactivate_policy after destroying | *8146f7a880blk-throttle: fix lockdep warning of "cgroup_mutex or RCU read lock required!" | *b7d82e5dbestmmac: dwmac-loongson: Add architecture dependency | *46412b2fb1usb: aqc111: check packet for fixup for true limit | *fe13b6a6dddrm/mediatek: Add spinlock for setting vblank event in atomic_begin | *6f709907eaPCI: loongson: Limit MRRS to 256 | *4f4a9fc6b0Revert "PCI: acpiphp: Reassign resources on bridge if necessary" | *2d099b274eALSA: hda/realtek: Apply mute LED quirk for HP15-db | *0239375ecbALSA: hda/hdmi: add force-connect quirks for ASUSTeK Z170 variants | *d6df72b2f5ALSA: hda/hdmi: add force-connect quirk for NUC5CPYB | *45f53ca306fuse: dax: set fc->dax to NULL in fuse_dax_conn_free() | *f21b7610d5cred: switch to using atomic_long_t | *3a14286402net: atlantic: fix double free in ring reinit logic | *5b87ac25e8appletalk: Fix Use-After-Free in atalk_ioctl | *de73f41fd6net: stmmac: Handle disabled MDIO busses from devicetree | *6f3b49a415net: stmmac: use dev_err_probe() for reporting mdio bus registration failure | *90715e0a4cdpaa2-switch: fix size of the dma_unmap | *444339f3aavsock/virtio: Fix unsigned integer wrap around in virtio_transport_has_space() | *a5ab70a9c5sign-file: Fix incorrect return values check | *8eec2dcc4bstmmac: dwmac-loongson: Make sure MDIO is initialized before use | *abb40550adnet: ena: Fix XDP redirection error | *5d45225702net: ena: Fix xdp drops handling due to multibuf packets | *39082715bdnet: ena: Destroy correct number of xdp queues upon failure | *e2b48f9480net: Remove acked SYN flag from packet in the transmit queue correctly | *d3b174db0cqed: Fix a potential use-after-free in qed_cxt_tables_alloc | *3f1f6a94d8net/rose: Fix Use-After-Free in rose_ioctl | *3bb41dc361atm: Fix Use-After-Free in do_vcc_ioctl | *db400b1f8bocteontx2-af: Update RSS algorithm index | *e0676d37bbocteontx2-pf: Fix promisc mcam entry action | *86f50bb2a4octeontx2-af: fix a use-after-free in rvu_nix_register_reporters | *af7a772166net: fec: correct queue selection | *3c4dcfbff1net: vlan: introduce skb_vlan_eth_hdr() | *fe779dbb42atm: solos-pci: Fix potential deadlock on &tx_queue_lock | *e16f961f8batm: solos-pci: Fix potential deadlock on &cli_queue_lock | *d525bbd9ddqca_spi: Fix reset behavior | *4ec0e0e65bqca_debug: Fix ethtool -G iface tx behavior | *173fc3212cqca_debug: Prevent crash on TX ring changes | *9846d8c8c3net: ipv6: support reporting otherwise unknown prefix flags in RTM_NEWPREFIX | *77443956e6HID: lenovo: Restrict detection of patched firmware only to USB cptkbd | *d37f44beefafs: Fix refcount underflow from error handling race | *a69d8ee03cksmbd: fix memory leak in smb2_lock() | *fd0d9b1674MIPS: Loongson64: Handle more memory types passed from firmware | *d9a9d8effdmemblock: allow to specify flags with memblock_add_node() | *49e0fcb522mm/memory_hotplug: handle memblock_add_node() failures in add_memory_resource() | *5b77f41fb7netfilter: nf_tables: fix 'exist' matching on bigendian arches | *3d4ad03bf1r8152: add vendor/device ID pair for ASUS USB-C2500 | *404ce6ee69r8152: add vendor/device ID pair for D-Link DUB-E250 | *ca75274b17r8152: add USB device driver for config selection | *f5494d96bcperf/x86/uncore: Don't WARN_ON_ONCE() for a broken discovery table * |64f66ea8bdRevert "drop_monitor: Require 'CAP_SYS_ADMIN' when joining "events" group" * |6059359859Revert "perf/core: Add a new read format to get a number of lost samples" * |63d0d92b34Revert "perf: Fix perf_event_validate_size()" * |d0ce536133Revert "hrtimers: Push pending hrtimers away from outgoing CPU earlier" * |f74b382205Merge 5.15.143 into android14-5.15-lts |\| | *d0fc081c62Linux 5.15.143 | *2eba64dcbfdevcoredump: Send uevent once devcd is ready | *97a9a7cf7fdevcoredump : Serialize devcd_del work | *e5071ae7d8smb: client: fix potential NULL deref in parse_dfs_referrals() | *d2bafe84ddcifs: Fix non-availability of dedup breaking generic/304 | *c7a0a26518Revert "btrfs: add dmesg output for first mount and last unmount of a filesystem" | *1ed694fec5MIPS: Loongson64: Enable DMA noncoherent support | *a71b6a6152MIPS: Loongson64: Reserve vgabios memory on boot | *72bdf34450KVM: SVM: Update EFER software model on CR0 trap for SEV-ES | *15a8088786KVM: s390/mm: Properly reset no-dat | *19e1052646x86/CPU/AMD: Check vendor in the AMD microcode callback | *e5731380b7serial: 8250_omap: Add earlycon support for the AM654 UART controller | *17c2ed9a99serial: 8250: 8250_omap: Do not start RX DMA on THRI interrupt | *8718c0ab94serial: 8250: 8250_omap: Clear UART_HAS_RHR_IT_DIS bit | *9bf8bc456fserial: sc16is7xx: address RX timeout interrupt errata | *87ac270412ARM: PL011: Fix DMA support | *9402252ddausb: typec: class: fix typec_altmode_put_partner to put plugs | *e24f2b219fRevert "xhci: Loosen RPM as default policy to cover for AMD xHC 1.1" | *742ecc1b1cparport: Add support for Brainboxes IX/UC/PX parallel cards | *86240d91ecusb: gadget: f_hid: fix report descriptor allocation | *f7a0cab502drm/amdgpu: correct the amdgpu runtime dereference usage count | *091c77c287drm/amd/amdgpu: Fix warnings in amdgpu/amdgpu_display.c | *324df6ecdagpiolib: sysfs: Fix error handling on failed export | *ebc7597ce9perf: Fix perf_event_validate_size() | *00f8c6dc82perf/core: Add a new read format to get a number of lost samples | *4aed524081arm64: dts: mt8183: kukui: Fix underscores in node names | *1e64d6ddbdarm64: dts: mediatek: add missing space before { | *6276d125aaarm64: dts: mediatek: mt8183: Move thermal-zones to the root node | *a6b7222bbdarm64: dts: mediatek: align thermal zone node names with dtschema | *ab9ac2cb57tools headers UAPI: Sync linux/perf_event.h with the kernel sources | *dc52117cd7docs/process/howto: Replace C89 with C11 | *7aed508668platform/x86: asus-wmi: Fix kbd_dock_devid tablet-switch reporting | *e65128616fnetfilter: nft_set_pipapo: skip inactive elements during set walk | *bcedd497b3io_uring/af_unix: disable sending io_uring over sockets | *c5a09d1631mm: fix oops when filemap_map_pmd() without prealloc_pte | *c755e7cdacr8169: fix rtl8125b PAUSE frames blasting when suspended | *9234835fcctracing: Stop current tracer when resizing buffer | *5a9cbf8242tracing: Set actual size after ring buffer resize | *40a36f08a1ring-buffer: Force absolute timestamp on discard of event | *0ccca12b7dmisc: mei: client.c: fix problem of return '-EOVERFLOW' in mei_cl_write | *271b563063misc: mei: client.c: return negative error code in mei_cl_write | *4511b3650ecoresight: etm4x: Remove bogous __exit annotation for some functions | *192352bd4bcoresight: etm4x: Make etm4_remove_dev() return void | *318a206633kallsyms: Make kallsyms_on_each_symbol generally available | *61b68b6089binder: fix memory leaks of spam and pending work | *1665a875adarm64: dts: mediatek: mt8183: Fix unit address for scp reserved memory | *dca1bfdb40arm64: dts: mediatek: mt8173-evb: Fix regulator-fixed node names | *d052b5ade2arm64: dts: mediatek: mt8183-kukui-jacuzzi: fix dsi unnecessary cells properties | *e37aa92644arm64: dts: mediatek: mt7622: fix memory node warning check | *d849cf64c5platform/surface: aggregator: fix recv_buf() return value | *d91fb1b7b7regmap: fix bogus error on regcache_sync success | *d08a96e5ffpacket: Move reference count in packet_sock to atomic_long_t | *c86b76896ftracing: Fix a possible race when disabling buffered events | *e733a6f844tracing: Fix incomplete locking when disabling buffered events | *fb0219bf96tracing: Disable snapshot buffer when stopping instance tracers | *9e41d92e28tracing: Always update snapshot buffer size | *ac3ccec33bcheckstack: fix printed address | *762b0d529cnilfs2: prevent WARNING in nilfs_sufile_set_segment_usage() | *fd85766c7cnilfs2: fix missing error check for sb_set_blocksize call | *4bbf011bd6ALSA: hda/realtek: Enable headset on Lenovo M90 Gen5 | *e5571507a1ALSA: pcm: fix out-of-bounds in snd_pcm_state_names | *f82e39f75cALSA: usb-audio: Add Pioneer DJM-450 mixer controls | *ea3291cb90io_uring: fix mutex_unlock with unreferenced ctx | *09f9d1fbafnvme-pci: Add sleep quirk for Kingston drives | *7e765ec2f1kprobes: consistent rcu api usage for kretprobe holder | *f531138926md: don't leave 'MD_RECOVERY_FROZEN' in error path of md_set_readonly() | *4a52acc910md: introduce md_ro_state | *940a7bcd4friscv: fix misaligned access handling of C.SWSP and C.SDSP | *6e2f71188fARM: dts: imx28-xea: Pass the 'model' property | *976eb17307ARM: dts: imx7: Declare timers compatible with fsl,imx6dl-gpt | *cb2034c02fARM: imx: Check return value of devm_kasprintf in imx_mmdc_perf_init | *800aabe1edscsi: be2iscsi: Fix a memleak in beiscsi_init_wrb_handle() | *48987eef55tracing: Fix a warning when allocating buffered events fails | *6daed3710cARM: dts: imx6ul-pico: Describe the Ethernet PHY clock | *2ea7438af1arm64: dts: imx8mp: imx8mq: Add parkmode-disable-ss-quirk on DWC3 | *8a21980df0arm64: dts: imx8mq: drop usb3-resume-missing-cas from usb | *0511a9c56eRDMA/irdma: Avoid free the non-cqp_request scratch | *b7b24a7ffcRDMA/core: Fix umem iterator when PAGE_SIZE is greater then HCA pgsz | *9d2854cc25ASoC: wm_adsp: fix memleak in wm_adsp_buffer_populate | *1d31ea4df8hwmon: (nzxt-kraken2) Fix error handling path in kraken2_probe() | *9deab0c35ehwmon: (acpi_power_meter) Fix 4.29 MW bug | *8ef49679a2RDMA/bnxt_re: Correct module description string | *0b21a39bf1RDMA/rtrs-clt: Remove the warnings for req in_use check | *6cef8ca191RDMA/rtrs-clt: Fix the max_send_wr setting | *855b433468RDMA/rtrs-srv: Destroy path files after making sure no IOs in-flight | *7df9d0d064RDMA/rtrs-srv: Free srv_mr iu only when always_invalidate is true | *00e54da50bRDMA/rtrs-srv: Check return values while processing info request | *59cab0ae48RDMA/rtrs-clt: Start hb after path_up | *7f0460db1bRDMA/rtrs-srv: Do not unconditionally enable irq | *18556be80barm64: dts: rockchip: Expand reg size of vdec node for RK3399 | *583dec140dRDMA/irdma: Add wait for suspend on SQD | *f78b8b7f5bRDMA/irdma: Do not modify to SQD on error | *7547977224RDMA/hns: Fix unnecessary err return when using invalid congest control algorithm | *01c13d8a95tee: optee: Fix supplicant based device enumeration | *d3d254e63edrop_monitor: Require 'CAP_SYS_ADMIN' when joining "events" group | *30d4881a75net: add missing kdoc for struct genl_multicast_group::flags | *5299bca8c6psample: Require 'CAP_NET_ADMIN' when joining "packets" group | *81b0c3d282bpf: sockmap, updating the sg structure should also update curr | *0d4e0afdd6tcp: do not accept ACK of bytes we never sent | *38bae9cda8netfilter: xt_owner: Fix for unsafe access of sk->sk_socket | *9de311e5d1netfilter: nf_tables: validate family when identifying table via handle | *cf5f113c41netfilter: nf_tables: bail out on mismatching dynset and set expressions | *219c6b5584octeontx2-af: Update Tx link register range | *4fe599a7cdnet: hns: fix fake link up on xge port | *a5c2f9f7f8ipv4: ip_gre: Avoid skb_pull() failure in ipgre_xmit() | *c8aca57e23ionic: Fix dim work handling in split interrupt mode | *04022c185eionic: fix snprintf format length warning | *246bc719efnet: bnxt: fix a potential use-after-free in bnxt_init_tc | *b14d6d404ci40e: Fix unexpected MFS warning message | *6113cba29focteontx2-af: fix a use-after-free in rvu_npa_register_reporters | *e047a1fc12net: stmmac: fix FPE events losing | *75c53a4c43arcnet: restoring support for multiple Sohard Arcnet cards | *789fed5702platform/mellanox: Check devm_hwmon_device_register_with_groups() return value | *a24071448eplatform/mellanox: Add null pointer checks for devm_kasprintf() | *45171e5eb7mlxbf-bootctl: correctly identify secure boot with development keys | *401d9bab51r8152: Add RTL8152_INACCESSIBLE to r8153_aldps_en() | *5b9bf02f1cr8152: Add RTL8152_INACCESSIBLE to r8153_pre_firmware_1() | *0a53ed0b00r8152: Add RTL8152_INACCESSIBLE to r8156b_wait_loading_flash() | *a637801347r8152: Add RTL8152_INACCESSIBLE checks to more loops | *00beca907ar8152: Rename RTL8152_UNPLUG to RTL8152_INACCESSIBLE | *89c619b1b6hv_netvsc: rndis_filter needs to select NLS | *f258a0bed3octeontx2-af: Check return value of nix_get_nixlf before using nixlf | *51e7868e5docteontx2-pf: Add missing mutex lock in otx2_get_pauseparam | *a239affd93ipv6: fix potential NULL deref in fib6_add() | *9008af83efplatform/x86: wmi: Skip blocks with zero instances | *29783a17a3platform/x86: wmi: Allow duplicate GUIDs for drivers that use struct wmi_driver | *0f06d9bd2eof: dynamic: Fix of_reconfig_get_state_change() return value documentation | *5dd9a481daplatform/x86: asus-wmi: Move i8042 filter install to shared asus-wmi code | *450f8c95a5platform/x86: asus-wmi: Simplify tablet-mode-switch handling | *f277c14b6dplatform/x86: asus-wmi: Simplify tablet-mode-switch probing | *36ede14746platform/x86: asus-wmi: Add support for ROG X13 tablet mode | *e8aed5133fplatform/x86: asus-wmi: Adjust tablet/lidflip handling to use enum | *bfac5cc5a6drm/amdgpu: correct chunk_ptr to a pointer to chunk. | *94e5ed1620kconfig: fix memory leak from range properties | *c5ab980acftg3: Increment tx_dropped in tg3_tso_bug() | *d188dcb9dbtg3: Move the [rt]x_dropped counters to tg3_napi | *8bb930c3a1netfilter: ipset: fix race condition between swap/destroy and kernel side add/del/test | *89a057818di2c: designware: Fix corrupted memory seen in the ISR | *6fcbcc6c8ehrtimers: Push pending hrtimers away from outgoing CPU earlier | *ef93d88531vdpa/mlx5: preserve CVQ vringh index * |85771dd52fRevert "mmc: core: add helpers mmc_regulator_enable/disable_vqmmc" * |f136d211baRevert "mmc: sdhci-sprd: Fix vqmmc not shutting down after the card was pulled" * |e678cdb6e0Merge 5.15.142 into android14-5.15-lts |\| | *8a1d809b05Linux 5.15.142 | *4d9bd1b108iomap: update ki_pos a little later in iomap_dio_complete | *6ed02493efr8169: fix deadlock on RTL8125 in jumbo mtu mode | *0249024aa4r8169: disable ASPM in case of tx timeout | *8912dbddb2mmc: sdhci-sprd: Fix vqmmc not shutting down after the card was pulled | *68156ce252mmc: core: add helpers mmc_regulator_enable/disable_vqmmc | *9807860f6aiommu/vt-d: Make context clearing consistent with context mapping | *7960f2cf43iommu/vt-d: Omit devTLB invalidation requests when TES=0 | *cfd842b71dcpufreq: imx6q: Don't disable 792 Mhz OPP unnecessarily | *f0b6880658cpufreq: imx6q: don't warn for disabling a non-existing frequency | *bb08df40d4smb3: fix caching of ctime on setxattr | *15b4158c87fs: add ctime accessors infrastructure | *db78835b68fbdev: stifb: Make the STI next font pointer a 32-bit signed offset | *711ee151a3ASoC: SOF: sof-pci-dev: Fix community key quirk detection | *81952f82e3ASoC: SOF: sof-pci-dev: don't use the community key on APL Chromebooks | *fa0a570d84ASoC: SOF: sof-pci-dev: add parameter to override topology filename | *0d38d659a9ASoC: SOF: sof-pci-dev: use community key on all Up boards | *f3db01e4d0ASoC: Intel: Move soc_intel_is_foo() helpers to a generic header | *b4329a3a93smb3: fix touch -h of symlink | *b60187f610selftests/resctrl: Move _GNU_SOURCE define into Makefile | *072c17d400selftests/resctrl: Add missing SPDX license to Makefile | *1e9973aea2perf intel-pt: Fix async branch flags | *0a6b5321dcnet: ravb: Stop DMA in case of failures on ravb_open() | *a4515a2f5bnet: ravb: Start TX queues after HW initialization succeeded | *2ba0a8330dnet: ravb: Use pm_runtime_resume_and_get() | *5823191fb2net: ravb: Check return value of reset_control_deassert() | *24681e92e5ravb: Fix races between ravb_tx_timeout_work() and net related ops | *9750941783r8169: prevent potential deadlock in rtl8169_close | *6662506928Revert "workqueue: remove unused cancel_work()" | *2587d8fe14octeontx2-pf: Fix adding mbox work queue entry when num_vfs > 64 | *54260f1483net: stmmac: xgmac: Disable FPE MMC interrupts | *9af4884b8aocteontx2-af: Fix possible buffer overflow | *f4499f0fc1selftests/net: ipsec: fix constant out of range | *8454f0e090uapi: propagate __struct_group() attributes to the container union | *0bf95654e9dpaa2-eth: increase the needed headroom to account for alignment | *c4a00c47a1ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet | *64c27b7b23usb: config: fix iteration issue in 'usb_get_bos_descriptor()' | *e704db8ea6USB: core: Change configuration warnings to notices | *bec3ae2938hv_netvsc: fix race of netvsc and VF register_netdevice | *69732d2151rcu: Avoid tracing a few functions executed in stop machine | *02caa78cbcvlan: move dev_put into vlan_dev_uninit | *8428011818vlan: introduce vlan_dev_free_egress_priority | *a8604a90e1Input: xpad - add HyperX Clutch Gladiate Support | *875eeda481btrfs: make error messages more clear when getting a chunk map | *47693835edbtrfs: send: ensure send_fd is writable | *36b98806d2btrfs: fix off-by-one when checking chunk map includes logical address | *0ffd9d356ebtrfs: ref-verify: fix memory leaks in btrfs_ref_tree_mod() | *a480eb262bbtrfs: add dmesg output for first mount and last unmount of a filesystem | *2e931b3306parisc: Drop the HP-UX ENOSYM and EREMOTERELEASE error codes | *f0d0522234powerpc: Don't clobber f0/vs0 during fp|altivec register save | *d48f9008e8iommu/vt-d: Add MTL to quirk list to skip TE disabling | *0c7fa41e3ebcache: revert replacing IS_ERR_OR_NULL with IS_ERR | *c986cb72ebdm verity: don't perform FEC for failed readahead IO | *9a2590b400dm-verity: align struct dm_verity_fec_io properly | *61a982f9a5ALSA: hda/realtek: Add supported ALC257 for ChromeOS | *5fe4d96502ALSA: hda/realtek: Headset Mic VREF to 100% | *4ed5ad0522ALSA: hda: Disable power-save on KONTRON SinglePC | *a757936847mmc: block: Be sure to wait while busy in CQE error recovery | *8dfdd6038emmc: block: Do not lose cache flush during CQE error recovery | *129984dc9bmmc: block: Retry commands in CQE error recovery | *85afaefa95mmc: cqhci: Fix task clearing in CQE error recovery | *ceec823199mmc: cqhci: Warn of halt or task clear failure | *9edc063598mmc: cqhci: Increase recovery halt timeout | *4438293822firewire: core: fix possible memory leak in create_units() | *b20f71c809pinctrl: avoid reload of p state in list iteration * |94a8600a0dRevert "HID: core: store the unique system identifier in hid_device" * |e7ef5ffab6Revert "HID: fix HID device resource race between HID core and debugging support" * |b410f8d071Merge 5.15.141 into android14-5.15-lts |\| | *9b91d36ba3Linux 5.15.141 | *313a34d1c0io_uring: fix off-by one bvec index | *49ae2e4e8eUSB: dwc3: qcom: fix wakeup after probe deferral | *eb17fb4b16USB: dwc3: qcom: fix software node leak on probe errors | *98f0e9b627usb: dwc3: set the dma max_seg_size | *1a3dcb1d81usb: dwc3: Fix default mode initialization | *a22702a818USB: dwc2: write HCINT with INTMASK applied | *1134fde920usb: typec: tcpm: Skip hard reset when in error recovery | *64830d0415USB: serial: option: don't claim interface 4 for ZTE MF290 | *9611cbc6a1USB: serial: option: fix FM101R-GL defines | *a8d80b1fbaUSB: serial: option: add Fibocom L7xx modules | *de8c6fce8dusb: cdnsp: Fix deadlock issue during using NCM gadget | *dd0cc4b69fbcache: fixup lock c->root error | *a912742d84bcache: fixup init dirty data errors | *137660f844bcache: prevent potential division by zero error | *f7077ce8d9bcache: check return value from btree_node_alloc_replacement() | *1eed010921dm-delay: fix a race between delay_presuspend and delay_bio | *d181a7a1d5hv_netvsc: Mark VF as slave before exposing it to user-mode | *97683466e2hv_netvsc: Fix race of register_netdevice_notifier and VF register | *3841921018USB: serial: option: add Luat Air72*U series products | *6062c527d0s390/dasd: protect device queue against concurrent access | *35b5d86e43io_uring/fs: consider link->flags when getting path for LINKAT | *2bb75a2c34bcache: fixup multi-threaded bch_sectors_dirty_init() wake-up race | *6f09318fd9md: fix bi_status reporting in md_end_clone_io | *72ecb9753cbcache: replace a mistaken IS_ERR() by IS_ERR_OR_NULL() in btree_gc_coalesce() | *e09ba90f1aswiotlb-xen: provide the "max_mapping_size" method | *0f05021e93ACPI: resource: Skip IRQ override on ASUS ExpertBook B1402CVA | *f95e9f7afeproc: sysctl: prevent aliased sysctls from getting passed to init | *3f3880fc01ext4: make sure allocate pending entry not fail | *e33eb49975ext4: fix slab-use-after-free in ext4_es_insert_extent() | *859893f619ext4: using nofail preallocation in ext4_es_insert_extent() | *048e7f38b3ext4: using nofail preallocation in ext4_es_insert_delayed_block() | *580b9dd6abext4: using nofail preallocation in ext4_es_remove_extent() | *66bc78a295ext4: use pre-allocated es in __es_remove_extent() | *b1995ba626ext4: use pre-allocated es in __es_insert_extent() | *edec12712aext4: factor out __es_alloc_extent() and __es_free_extent() | *e82d05cf5cext4: add a new helper to check if es must be kept | *612edd4888media: qcom: camss: Fix csid-gen2 for test pattern generator | *ceb5276d8cmedia: qcom: camss: Fix set CSI2_RX_CFG1_VC_MODE when VC is greater than 3 | *f001e6f626media: camss: sm8250: Virtual channels for CSID | *9fb81ca7aamedia: camss: Replace hard coded value with parameter | *8ef9b32f20MIPS: KVM: Fix a build warning about variable set but not used | *6ddaca6b20lockdep: Fix block chain corruption | *61747778a8USB: dwc3: qcom: fix ACPI platform device leak | *0274728899USB: dwc3: qcom: fix resource leaks on probe deferral | *e26c6febacnvmet: nul-terminate the NQNs passed in the connect command | *b5d50c6a60afs: Fix file locking on R/O volumes to operate in local mode | *84ebfbed3aafs: Return ENOENT if no cell DNS record can be found | *6aeac88a45net: axienet: Fix check for partial TX checksum | *293acba841amd-xgbe: propagate the correct speed and duplex status | *b3874cc25aamd-xgbe: handle the corner-case during tx completion | *e949dbc28camd-xgbe: handle corner-case during sfp hotplug | *01a8b94726octeontx2-pf: Fix ntuple rule creation to direct packet to VF with higher Rx queue than its PF | *fcc4a03ad3arm/xen: fix xen_vcpu_info allocation alignment | *90072af9efnet/smc: avoid data corruption caused by decline | *66c023469bnet: usb: ax88179_178a: fix failed operations during ax88179_reset | *ba81c5228eipv4: Correct/silence an endian warning in __ip_do_redirect | *364406d4c1HID: fix HID device resource race between HID core and debugging support | *52badc06b1HID: core: store the unique system identifier in hid_device | *221be624a5drm/rockchip: vop: Fix color for RGB888/BGR888 format on VOP full | *b0c835fd7data: pata_isapnp: Add missing error check for devm_ioport_map() | *9754a498aaocteontx2-pf: Fix memory leak during interface down | *be41c0c4a6wireguard: use DEV_STATS_INC() | *f163a6d17adrm/panel: simple: Fix Innolux G101ICE-L01 timings | *608de3a587drm/panel: simple: Fix Innolux G101ICE-L01 bus flags | *18bd108a13drm/panel: auo,b101uan08.3: Fine tune the panel power sequence | *9fe5718d3fdrm/panel: boe-tv101wum-nl6: Fine tune the panel power sequence | *c8a49336e1afs: Make error on cell lookup failure consistent with OpenAFS | *ac239fccf5afs: Fix afs_server_list to be cleaned up with RCU * |8ab21f766fRevert "ASoC: soc-card: Add storage for PCI SSID" * |32edfbff66Revert "net: inet: Remove count from inet_listen_hashbucket" * |483e9067b5Revert "net: inet: Open code inet_hash2 and inet_unhash2" * |5452f4e5b7Revert "net: inet: Retire port only listening_hash" * |477db4af14Revert "net: set SOCK_RCU_FREE before inserting socket into hashtable" * |f1033c5081Revert "tracing: Have trace_event_file have ref counters" * |97d68eeaacRevert "workqueue: Provide one lock class key per work_on_cpu() callsite" * |bb657d6d5eMerge 5.15.140 into android14-5.15-lts |\| | *a78d278e01Linux 5.15.140 | *947c9e12dddriver core: Release all resources during unbind before updating device links | *5a434d5c38Input: xpad - add VID for Turtle Beach controllers | *cbc7c29dfftracing: Have trace_event_file have ref counters | *1dcf90c9fapowerpc/powernv: Fix fortify source warnings in opal-prd.c | *3d7912710eio_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid | *595b051c83drm/amd/display: Change the DMCUB mailbox memory location from FB to inbox | *a2a6e97c4bdrm/amdgpu: fix error handling in amdgpu_bo_list_get() | *e380992c47drm/amdgpu: don't use ATRM for external devices | *4ff985b881drm/i915: Fix potential spectre vulnerability | *ea0c4d5ec5drm/amd/pm: Handle non-terminated overdrive commands. | *9ce842d776ext4: add missed brelse in update_backups | *ce19c20064ext4: remove gdb backup copy for meta bg in setup_new_flex_group_blocks | *ac45d8e34bext4: correct the start block of counting reserved clusters | *8f9842c4b9ext4: correct return value of ext4_convert_meta_bg | *8798d3b272ext4: correct offset of gdb backup in non meta_bg group to update_backups | *8a3bb38bfdext4: apply umask if ACL support is disabled | *d5c380149bRevert "net: r8169: Disable multicast filter for RTL8168H and RTL8107E" | *6ad3d8594dmedia: qcom: camss: Fix missing vfe_lite clocks check | *e0376cf069media: qcom: camss: Fix VFE-17x vfe_disable_output() | *8f733387d1media: qcom: camss: Fix vfe_get() error jump | *841fc648fbmedia: qcom: camss: Fix pm_domain_on sequence in probe | *4c9c43f79ammc: sdhci-pci-gli: GL9750: Mask the replay timer timeout of AER | *72bf271c5ar8169: fix network lost after resume on DASH systems | *468e3ebf47mm: kmem: drop __GFP_NOFAIL when allocating objcg vectors | *0387978fdammc: sdhci-pci-gli: A workaround to allow GL9750 to enter ASPM L1.2 | *070b3ccb9briscv: kprobes: allow writing to x0 | *cd0e9f475anfsd: fix file memleak on client_opens_release | *114c9d732cmedia: ccs: Correctly initialise try compose rectangle | *6c8aeeb2c5media: venus: hfi: add checks to handle capabilities from firmware | *cdeb0a4cf3media: venus: hfi: fix the check to handle session buffer requirement | *7d62570f75media: venus: hfi_parser: Add check to keep the number of codecs within range | *d0d831e7d6media: sharp: fix sharp encoding | *6003733c8fmedia: lirc: drop trailing space from scancode transmit | *e4088d7d8ff2fs: avoid format-overflow warning | *12055238d0i2c: i801: fix potential race in i801_block_transaction_byte_by_byte | *336e6db5c1net: phylink: initialize carrier state at creation | *d8cb287d31net: dsa: lan9303: consequently nested-lock physical MDIO | *656262cb0fnet: ethtool: Fix documentation of ethtool_sprintf() | *acca20cc16s390/ap: fix AP bus crash on early config change callback invocation | *019b7d42a4i2c: designware: Disable TX_EMPTY irq while waiting for block length byte | *c6e89348fdsbsa_gwdt: Calculate timeout with 64-bit math | *132670ae9flsm: fix default return value for inode_getsecctx | *223196b506lsm: fix default return value for vm_enough_memory | *06d320ca17Revert "i2c: pxa: move to generic GPIO recovery" | *ddec3d04f8Revert ncsi: Propagate carrier gain/loss events to the NCSI controller | *ad0b74d0f3powerpc/pseries/ddw: simplify enable_ddw() | *b3e993de40arm64: dts: qcom: ipq6018: Fix tcsr_mutex register size | *b99ac20612arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO | *aaf0a07d60ksmbd: fix slab out of bounds write in smb_inherit_dacl() | *1c701423bbBluetooth: btusb: Add 0bda:b85b for Fn-Link RTL8852BE | *36a573b325Bluetooth: btusb: Add RTW8852BE device 13d3:3570 to device tables | *c4976160a0bluetooth: Add device 13d3:3571 to device tables | *603e77e9e8bluetooth: Add device 0bda:887b to device tables | *e9bb966c50Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x0cb8:0xc559 | *cf642ee641cpufreq: stats: Fix buffer overflow detection in trans_stats() | *63e09cdfe9regmap: Ensure range selector registers are updated after cache sync | *0c49e74e95tty: serial: meson: fix hard LOCKUP on crtscts mode | *6f26b6a61bserial: meson: Use platform_get_irq() to get the interrupt | *450fa8bf80ALSA: hda/realtek - Enable internal speaker of ASUS K6500ZC | *cc549ba50bALSA: hda/realtek - Add Dell ALC295 to pin fall back table | *767c988771ALSA: info: Fix potential deadlock at disconnection | *09022ae662xhci: Enable RPM on controllers that support low-power states | *68574fe2e4parisc/pgtable: Do not drop upper 5 address bits of physical address | *ea7593c18fparisc: Prevent booting 64-bit kernels on PA1.x machines | *2c9092e8b2i3c: master: svc: fix SDA keep low when polling IBIWON timeout happen | *da754f92fci3c: master: svc: fix check wrong status register in irq handler | *5ba77b6b45i3c: master: svc: fix ibi may not return mandatory data byte | *e0a70ed4a5i3c: master: svc: fix wrong data return when IBI happen during start frame | *7383675abai3c: master: svc: fix race condition in ibi work thread | *cc7efd1054i3c: master: cdns: Fix reading status register | *d3c6a08c2bmtd: cfi_cmdset_0001: Byte swap OTP info | *a466808812mm/memory_hotplug: use pfn math in place of direct struct page manipulation | *792a796085mm/cma: use nth_page() in place of direct struct page manipulation | *9b59fc3122s390/cmma: fix detection of DAT pages | *45bb94aab8dmaengine: stm32-mdma: correct desc prep when channel running | *91659b77e9mcb: fix error handling for different scenarios when parsing | *534790fde8tracing: Have the user copy of synthetic event address use correct context | *f6237afabci2c: core: Run atomic i2c xfer when !preemptible | *931aa7154bkernel/reboot: emergency_restart: Set correct system_state | *7a3424c3b7quota: explicitly forbid quota files from being encrypted | *47f5098321jbd2: fix potential data lost in recovering journal raced with synchronizing fs bdev | *f13e1ea456ASoC: codecs: wsa-macro: fix uninitialized stack variables with name prefix | *28436d8092selftests/resctrl: Reduce failures due to outliers in MBA/MBM tests | *6ce63598a1selftests/resctrl: Remove duplicate feature check from CMT test | *e90efe17fcnetfilter: nf_tables: split async and sync catchall in two functions | *0d9506c766netfilter: nf_tables: remove catchall element in GC sync path | *96fc7a50a2PCI: keystone: Don't discard .probe() callback | *e0d394df98PCI: keystone: Don't discard .remove() callback | *f4f1266716KEYS: trusted: Rollback init_trusted() consistently | *c407ff72fbgenirq/generic_chip: Make irq_remove_generic_chip() irqdomain aware | *bc8a14e3c6mmc: meson-gx: Remove setting of CMD_CFG_ERROR | *3a51e6b4dawifi: ath11k: fix htt pktlog locking | *426e718ce9wifi: ath11k: fix dfs radar event locking | *e9d84413b1wifi: ath11k: fix temperature event locking | *5ff849948cima: detect changes to the backing overlay file | *4584a421a6ima: annotate iint mutex to avoid lockdep false positive warnings | *4049576c63ACPI: FPDT: properly handle invalid FPDT subtables | *628e76e684firmware: qcom_scm: use 64-bit calling convention only when client is 64-bit | *6eb8c191e3btrfs: don't arbitrarily slow down delalloc if we're committing | *0b99626b28rcu: kmemleak: Ignore kmemleak false positives when RCU-freeing objects | *71f5344f47PM: hibernate: Clean up sync_read handling in snapshot_write_next() | *57dbc0eb8aPM: hibernate: Use __get_safe_page() rather than touching the list | *87a30633b5arm64: dts: qcom: ipq6018: Fix hwlock index for SMEM | *ebaee06a72rcu/tree: Defer setting of jiffies during stall reset | *057d1034d0svcrdma: Drop connection after an RDMA Read error | *541b3757fdwifi: wilc1000: use vmm_table as array in wilc struct | *b156f62f19PCI: exynos: Don't discard .remove() callback | *f887967210PCI/ASPM: Fix L1 substate handling in aspm_attr_store_common() | *467864d55bmmc: sdhci_am654: fix start loop index for TAP value parsing | *ef34a97bb9mmc: vub300: fix an error code | *36adb6204cclk: qcom: ipq6018: drop the CLK_SET_RATE_PARENT flag from PLL clocks | *090b167b2cclk: qcom: ipq8074: drop the CLK_SET_RATE_PARENT flag from PLL clocks | *18640a1818clk: socfpga: Fix undefined behavior bug in struct stratix10_clock_data | *4d17b54c9bparisc/pdc: Add width field to struct pdc_model | *936c9c10efarm64: Restrict CPU_BIG_ENDIAN to GNU as or LLVM IAS 15.x or newer | *8b24bb54bfACPI: resource: Do IRQ override on TongFang GMxXGxx | *5619c34d3cwatchdog: move softlockup_panic back to early_param | *a6c3a1fe09PCI/sysfs: Protect driver's D3cold preference from user space | *01975bee0ahvc/xen: fix event channel handling for secondary consoles | *cfd543c108hvc/xen: fix error path in xen_hvc_init() to always register frontend driver | *730e08cb91hvc/xen: fix console unplug | *fa0b93a3detty/sysrq: replace smp_processor_id() with get_cpu() | *92e6c0f00daudit: don't WARN_ON_ONCE(!current->mm) in audit_exe_compare() | *e29c095f1aaudit: don't take task_lock() in audit_exe_compare() code path | *5eb6519f48KVM: x86: Ignore MSR_AMD64_TW_CFG access | *1c49ef7041KVM: x86: hyper-v: Don't auto-enable stimer on write from user-space | *fe6b461c37x86/cpu/hygon: Fix the CPU topology evaluation for real | *3a2adf48d8crypto: x86/sha - load modules based on CPU features | *be079aa71ascsi: qla2xxx: Fix system crash due to bad pointer access | *6ba3569f78scsi: megaraid_sas: Increase register read retry rount from 3 to 30 for selected registers | *6a33b58100scsi: mpt3sas: Fix loop logic | *3c5aede46cbpf: Fix precision tracking for BPF_ALU | BPF_TO_BE | BPF_END | *403470431bbpf: Fix check_stack_write_fixed_off() to correctly spill imm | *ba115f6c3arandstruct: Fix gcc-plugin performance mode to stay in group | *2771fac438powerpc/perf: Fix disabling BHRB and instruction sampling | *7e450cc9admedia: venus: hfi: add checks to perform sanity on queue pointers | *1566e8be73i915/perf: Fix NULL deref bugs with drm_dbg() calls | *35c17257efxfs: Fix unreferenced object reported by kmemleak in xfs_sysfs_init() | *5db146322bxfs: fix memory leak in xfs_errortag_init | *c540284d84xfs: fix exception caused by unexpected illegal bestcount in leaf dir | *5212d586e7xfs: avoid a UAF when log intent item recovery fails | *ba179cc121xfs: fix inode reservation space for removing transaction | *b7847653a2xfs: Fix false ENOSPC when performing direct write on a delalloc extent in cow fork | *92d38b87e8xfs: add missing cmap->br_state = XFS_EXT_NORM update | *8d0baec78exfs: fix intermittent hang during quotacheck | *76545c0e88xfs: don't leak memory when attr fork loading fails | *eb888caf27xfs: fix use-after-free in xattr node block inactivation | *4cb3842967xfs: flush inode gc workqueue before clearing agi bucket | *188594c64axfs: prevent a UAF when log IO errors race with unmount | *921c962158xfs: use invalidate_lock to check the state of mmap_lock | *efd194800bxfs: convert buf_cancel_table allocation to kmalloc_array | *074fee1869xfs: don't leak xfs_buf_cancel structures when recovery fails | *b8effd31a8xfs: refactor buffer cancellation table allocation | *4968c2aa6acifs: fix check of rc in function generate_smb3signingkey | *8d725bf0d1cifs: spnego: add ';' in HOST_KEY_LEN | *21accf1491tools/power/turbostat: Enable the C-state Pre-wake printing | *0045c1ff7atools/power/turbostat: Fix a knl bug | *5bcce23f38macvlan: Don't propagate promisc change to lower dev in passthru | *7574b5e65enet/mlx5e: Check return value of snprintf writing to fw_version buffer for representors | *55553c5b53net/mlx5e: Reduce the size of icosq_str | *51655fd357net/mlx5e: Fix pedit endianness | *a990dd7410net/mlx5e: Refactor mod header management API | *39f95b1d0dnet/mlx5e: Move mod hdr allocation to a single place | *c0f37a3715net/mlx5e: Remove incorrect addition of action fwd flag | *6974fd92d5net/mlx5e: fix double free of encap_header in update funcs | *f3c4a70442net/mlx5e: fix double free of encap_header | *931e9e8e30net: stmmac: fix rx budget limit check | *b8b514b2a6netfilter: nf_tables: fix pointer math issue in nft_byteorder_eval() | *25da0f5821netfilter: nf_tables: add and use BE register load-store helpers | *a48f6be5bdnetfilter: nf_tables: use the correct get/put helpers | *7d3901bf3bnetfilter: nf_conntrack_bridge: initialize err to 0 | *75bcfc188aaf_unix: fix use-after-free in unix_stream_read_actor() | *0b480c654enet: ethernet: cortina: Fix MTU max setting | *097588e20cnet: ethernet: cortina: Handle large frames | *f9269b274cnet: ethernet: cortina: Fix max RX frame define | *53064e8239bonding: stop the device in bond_setup_by_slave() | *cda210a4bdptp: annotate data-race around q->head and q->tail | *b67d16b237xen/events: fix delayed eoi list handling | *8531a4194eppp: limit MRU to 64K | *9ae82308d1tipc: Fix kernel-infoleak due to uninitialized TLV value | *359c65daf6net: hns3: fix VF wrong speed and duplex issue | *406be003d6net: hns3: fix VF reset fail issue | *cfc131b078net: hns3: fix variable may not initialized problem in hns3_init_mac_addr() | *070581829cnet: hns3: fix incorrect capability bit display for copper port | *a3c65cf785net: hns3: add barrier in vf mailbox reply process | *e671d82037net: hns3: add byte order conversion for PF to VF mailbox message | *bb0f14257cnet: hns3: refine the definition for struct hclge_pf_to_vf_msg | *1d8f66d406net: hns3: fix add VLAN fail issue | *4b3b2541d4tty: Fix uninit-value access in ppp_sync_receive() | *1f64cad3acipvlan: add ipvlan_route_v6_outbound() helper | *6c71b9b177net: set SOCK_RCU_FREE before inserting socket into hashtable | *427165421cnet: inet: Retire port only listening_hash | *be1ceb8b7cnet: inet: Open code inet_hash2 and inet_unhash2 | *bb9bcf47fbnet: inet: Remove count from inet_listen_hashbucket | *de634368e0mptcp: listen diag dump support | *870f438acamptcp: diag: switch to context structure | *be020f658cgfs2: Silence "suspicious RCU usage in gfs2_permission" warning | *194454afa6SUNRPC: Fix RPC client cleaned up the freed pipefs dentries | *319ed0cba1NFSv4.1: fix SP4_MACH_CRED protection for pnfs IO | *809684f5b3SUNRPC: Add an IS_ERR() check back to where it was | *46d6b76807SUNRPC: ECONNRESET might require a rebind | *a7032d4d64media: cec: meson: always include meson sub-directory in Makefile | *16e78f2851media: cadence: csi2rx: Unregister v4l2 async notifier | *20c2ca9abbsched/core: Optimize in_task() and in_interrupt() a bit | *9894c58c17tracing/perf: Add interrupt_context_level() helper | *48fef664d7tracing: Reuse logic from perf's get_recursion_context() | *670b3e902fwifi: iwlwifi: Use FW rate for non-data frames | *a7ee519e80pwm: Fix double shift bug | *7054366cd0drm/amdgpu: fix software pci_unplug on some chips | *e48a5e78d0drm/qxl: prevent memory leak | *0835e7f296ASoC: ti: omap-mcbsp: Fix runtime PM underflow warnings | *38ada2f304i2c: dev: copy userspace array safely | *610244988fkgdb: Flush console before entering kgdb on panic | *4e497f1acddrm/amd/display: Avoid NULL dereference of timing generator | *5e0b788fb9media: imon: fix access to invalid resource for the second interface | *ae6bcafe1fmedia: ccs: Fix driver quirk struct documentation | *d01b0ad79emedia: cobalt: Use FIELD_GET() to extract Link Width | *03ce0655bfgfs2: fix an oops in gfs2_permission | *5bfda356e9gfs2: ignore negated quota changes | *16631907d0media: vivid: avoid integer overflow | *09cd8b561amedia: gspca: cpia1: shift-out-of-bounds in set_flicker | *39c71357e6i3c: master: mipi-i3c-hci: Fix a kernel panic for accessing DAT_data. | *72775cad7fvirtio-blk: fix implicit overflow on virtio_max_dma_size | *f7f3bdb225i2c: sun6i-p2wi: Prevent potential division by zero | *d23ad76f24i3c: mipi-i3c-hci: Fix out of bounds access in hci_dma_irq_handler | *e6fbad3cc89p: v9fs_listxattr: fix %s null argument warning | *a18be976be9p/trans_fd: Annotate data-racy writes to file::f_flags | *2cc5e191d6usb: gadget: f_ncm: Always set current gadget in ncm_bind() | *6c80f48912tty: vcc: Add check for kstrdup() in vcc_probe() | *2ff61106d6exfat: support handle zero-size directory | *c86a3007a6HID: Add quirk for Dell Pro Wireless Keyboard and Mouse KM5221W | *3453f945afPCI: Use FIELD_GET() in Sapphire RX 5600 XT Pulse quirk | *0a93a0f99amisc: pci_endpoint_test: Add Device ID for R-Car S4-8 PCIe controller | *03dbd6a9eaPCI: Disable ATS for specific Intel IPU E2000 devices | *a9a0b34448PCI: Extract ATS disabling to a helper function | *fe511d2441PCI: Use FIELD_GET() to extract Link Width | *56d78b5495scsi: libfc: Fix potential NULL pointer dereference in fc_lport_ptp_setup() | *37a51e7f36atm: iphase: Do PCI error checks on own line | *f05ae00106PCI: tegra194: Use FIELD_GET()/FIELD_PREP() with Link Width fields | *631a96e9ebALSA: hda: Fix possible null-ptr-deref when assigning a stream | *1c805b9cd2ARM: 9320/1: fix stack depot IRQ stack filter | *8d25ec69f8HID: lenovo: Detect quirk-free fw on cptkbd and stop applying workaround | *64f062baf2jfs: fix array-index-out-of-bounds in diAlloc | *da3da5e1e6jfs: fix array-index-out-of-bounds in dbFindLeaf | *1f74d33699fs/jfs: Add validity check for db_maxag and db_agpref | *5f148b1697fs/jfs: Add check for negative db_l2nbperpage | *e1d1f79b19scsi: ibmvfc: Remove BUG_ON in the case of an empty event pool | *f0bfc8a556scsi: hisi_sas: Set debugfs_dir pointer to NULL after removing debugfs | *5904dee707RDMA/hfi1: Use FIELD_GET() to extract Link Width | *546c1796adcrypto: pcrypt - Fix hungtask for PADATA_RESET | *bc443a199fASoC: soc-card: Add storage for PCI SSID | *9f2082067cselftests/efivarfs: create-read: fix a resource leak | *428cad17f5arm64: dts: ls208xa: use a pseudo-bus to constrain usb dma size | *174f62a0aadrm/amdgpu: Fix a null pointer access when the smc_rreg pointer is NULL | *3f7a400d5edrm/amdkfd: Fix shift out-of-bounds issue | *300589d551drm/panel: st7703: Pick different reset sequence | *eaa03ea366drm/amdgpu/vkms: fix a possible null pointer dereference | *84c923d898drm/panel/panel-tpo-tpg110: fix a possible null pointer dereference | *2381f6b628drm/panel: fix a possible null pointer dereference | *c11cf5e117drm/amdgpu: Fix potential null pointer derefernce | *a237675aa1drm/amd: Fix UBSAN array-index-out-of-bounds for Polaris and Tonga | *acdb6830dedrm/amd: Fix UBSAN array-index-out-of-bounds for SMU7 | *829ce8e995drm/msm/dp: skip validity check for DP CTS EDID checksum | *689b33b94fdrm: vmwgfx_surface.c: copy user-array safely | *22260dabcfkernel: watch_queue: copy user-array safely | *d4f2c09d46kernel: kexec: copy user-array safely | *24b17d530cstring.h: add array-wrappers for (v)memdup_user() | *3a3a6dc9a3drm/amd/display: use full update for clip size increase of large plane source | *7d43cdd22cdrm/amdkfd: Fix a race condition of vram buffer unref in svm code | *eea81424c5drm/komeda: drop all currently held locks if deadlock happens | *812886866bplatform/x86: thinkpad_acpi: Add battery quirk for Thinkpad X120e | *ba70887698Bluetooth: Fix double free in hci_conn_cleanup | *f9de14bde5Bluetooth: btusb: Add date->evt_skb is NULL check | *a43cf6acf0wifi: ath10k: Don't touch the CE interrupt registers after power up | *6f42bd2433net: annotate data-races around sk->sk_dst_pending_confirm | *19ab5fd264net: annotate data-races around sk->sk_tx_queue_mapping | *f3be63f7a8wifi: ath10k: fix clang-specific fortify warning | *02a0547b8dwifi: ath9k: fix clang-specific fortify warnings | *cf353904a8bpf: Detect IP == ksym.end as part of BPF program | *c29a89b23fatl1c: Work around the DMA RX overflow issue | *21a0f310a9wifi: mac80211: don't return unset power in ieee80211_get_tx_power() | *3073e38086wifi: mac80211_hwsim: fix clang-specific fortify warning | *e8e55fa444x86/mm: Drop the 4 MB restriction on minimal NUMA node memory size | *f9d3ba62e8workqueue: Provide one lock class key per work_on_cpu() callsite | *0a5b512d52clocksource/drivers/timer-atmel-tcb: Fix initialization on SAM9 hardware | *465b88c087clocksource/drivers/timer-imx-gpt: Fix potential memory leak | *fd0df3f871perf/core: Bail out early if the request AUX area is out of bound | *e89d0ed45alocking/ww_mutex/test: Fix potential workqueue corruption * |16ec5b05fbANDROID: GKI: db845c: Update symbols list and ABI on devm_mipi_dsi_attach * |611f83ca0eRevert "mfd: core: Un-constify mfd_cell.of_reg" * |7e088094c8Revert "inet: shrink struct flowi_common" * |99e8e6c9c4Revert "arm64/arm: xen: enlighten: Fix KPTI checks" * |cfaf15fcafMerge 5.15.139 into android14-5.15-lts |\| | *2a910f4af5Linux 5.15.139 | *3443337acdbtrfs: use u64 for buffer sizes in the tree search ioctls | *f9f5e8cecbRevert "mmc: core: Capture correct oemid-bits for eMMC cards" | *824829c2c6tracing/kprobes: Fix the order of argument descriptions | *560680f745fbdev: fsl-diu-fb: mark wr_reg_wa() static | *8e4b510fe9fbdev: imsttfb: fix a resource leak in probe | *3648582181fbdev: imsttfb: Fix error path of imsttfb_probe() | *30959f9f45spi: spi-zynq-qspi: add spi-mem to driver kconfig dependencies | *9cf044cc36ASoC: hdmi-codec: register hpd callback on component probe | *705e5a28ecdrm/syncobj: fix DRM_SYNCOBJ_WAIT_FLAGS_WAIT_AVAILABLE | *0ca05fae27netfilter: nat: fix ipv6 nat redirect with mapped and scoped addresses | *1652f57f02netfilter: nft_redir: use `struct nf_nat_range2` throughout and deduplicate eval call-backs | *d28c17abe0netfilter: xt_recent: fix (increase) ipv6 literal buffer length | *f30567fcbci2c: iproc: handle invalid slave state | *38f5ac54b9r8169: respect userspace disabling IFF_MULTICAST | *fd01115b03blk-core: use pr_warn_ratelimited() in bio_check_ro() | *b801487109block: remove unneeded return value of bio_check_ro() | *d8d94d6b3btg3: power down device only on SYSTEM_POWER_OFF | *5ea06a23f8net/smc: put sk reference if close work was canceled | *884606f828net/smc: allow cdc msg send rather than drop it with NULL sndbuf_desc | *a62af7146dnet/smc: fix dangling sock under state SMC_APPFINCLOSEWAIT | *866606826fselftests: pmtu.sh: fix result checking | *2d117ac1b8net: stmmac: xgmac: Enable support for multiple Flexible PPS outputs | *95a99ac112Fix termination state for idr_for_each_entry_ul() | *70ef755f12net: r8169: Disable multicast filter for RTL8168H and RTL8107E | *0dad0e75d6dccp/tcp: Call security_inet_conn_request() after setting IPv6 addresses. | *c340713bdfdccp: Call security_inet_conn_request() after setting IPv4 addresses. | *d1b7e6562aocteontx2-pf: Fix holes in error code | *f60297ef59octeontx2-pf: Fix error codes | *794d360b1dinet: shrink struct flowi_common | *8943083bbbbpf: Check map->usercnt after timer->timer is assigned | *3907b89cd1tipc: Change nla_policy for bearer-related names to NLA_NUL_STRING | *a1a485e45dhsr: Prevent use after free in prp_create_tagged_frame() | *352887b3edllc: verify mac len before reading mac header | *303766bb92Input: synaptics-rmi4 - fix use after free in rmi_unregister_function() | *741e4c15d7pwm: brcmstb: Utilize appropriate clock APIs in suspend/resume | *895ac9a21fpwm: sti: Reduce number of allocations and drop usage of chip_data | *db64ddddeeregmap: prevent noinc writes from clobbering cache | *004d400253media: dvb-usb-v2: af9035: fix missing unlock | *a0beda1847media: cedrus: Fix clock/reset sequence | *980be4c3b0media: vidtv: mux: Add check and kfree for kstrdup | *d17269fb91media: vidtv: psi: Add check for kstrdup | *db89f551b7media: s3c-camif: Avoid inappropriate kfree() | *51c94256a8media: bttv: fix use after free error due to btv->timeout timer | *d3937f9e25media: i2c: max9286: Fix some redundant of_node_put() calls | *9d060f2fc4pcmcia: ds: fix possible name leak in error path in pcmcia_device_add() | *24e9df588epcmcia: ds: fix refcount leak in pcmcia_device_add() | *24e73ab542pcmcia: cs: fix possible hung task and memory leak pccardd() | *b3eaa0d43crtc: pcf85363: fix wrong mask/val parameters in regmap_update_bits call | *20bd0198becxl/mem: Fix shutdown order | *d48fe8d981i3c: Fix potential refcount leak in i3c_master_register_new_i3c_devs | *855d6fb2cc9p/net: fix possible memory leak in p9_check_errors() | *0d456ebaadperf hist: Add missing puts to hist__account_cycles | *924e8d0b76perf machine: Avoid out of bounds LBR memory read | *76b0eab987usb: host: xhci-plat: fix possible kernel oops while resuming | *c9c4dab06axhci: Loosen RPM as default policy to cover for AMD xHC 1.1 | *92c9ef1564powerpc/pseries: fix potential memory leak in init_cpu_associativity() | *516235e7b3powerpc/imc-pmu: Use the correct spinlock initializer. | *945dc61d78powerpc/xive: Fix endian conversion size | *bce31a2bcbpowerpc/40x: Remove stale PTE_ATOMIC_UPDATES macro | *1308e55eb0modpost: fix tee MODULE_DEVICE_TABLE built on big-endian host | *863a9c3fdepowerpc: Only define __parse_fpscr() when required | *01f62c6bd2f2fs: fix to initialize map.m_pblk in f2fs_precache_extents() | *dfebea7114dmaengine: pxa_dma: Remove an erroneous BUG_ON() in pxad_free_desc() | *72f8fa6c4bUSB: usbip: fix stub_dev hub disconnect | *168697f15atools: iio: iio_generic_buffer ensure alignment | *a61c3c647fmisc: st_core: Do not call kfree_skb() under spin_lock_irqsave() | *732aa0cb26dmaengine: ti: edma: handle irq_of_parse_and_map() errors | *2941a29fe9usb: chipidea: Simplify Tegra DMA alignment code | *58e8316b20usb: chipidea: Fix DMA overwrite for Tegra | *fcaafb574fusb: dwc2: fix possible NULL pointer dereference caused by driver concurrency | *c956be5641dmaengine: idxd: Register dsa_bus_type before registering idxd sub-drivers | *ca46d7ce1flivepatch: Fix missing newline character in klp_resolve_symbols() | *b77f7c025etty: tty_jobctrl: fix pid memleak in disassociate_ctty() | *e9f598a5ccf2fs: compress: fix to avoid redundant compress extension | *8c4504cc0cf2fs: compress: fix to avoid use-after-free on dic | *ca0aae3837leds: trigger: ledtrig-cpu:: Fix 'output may be truncated' issue for 'cpu' | *206a972511leds: pwm: Don't disable the PWM when the LED should be off | *893eedf596leds: turris-omnia: Do not use SMBUS calls | *aec3706971leds: turris-omnia: Drop unnecessary mutex locking | *c9a4f13c58mfd: arizona-spi: Set pdata.hpdet_channel for ACPI enumerated devs | *63a99d7b57mfd: dln2: Fix double put in dln2_probe | *2742c860e0mfd: core: Ensure disabled devices are skipped without aborting | *94eb5423d7mfd: core: Un-constify mfd_cell.of_reg | *8890d4d5f2ASoC: ams-delta.c: use component after check | *a2ae48bd82crypto: qat - fix deadlock in backlog processing | *0dd34a7ad3padata: Fix refcnt handling in padata_free_shell() | *93e4aa8545ASoC: Intel: Skylake: Fix mem leak when parsing UUIDs fails | *cd1c2df64dHID: logitech-hidpp: Move get_wireless_feature_index() check to hidpp_connect_event() | *99893b7c45HID: logitech-hidpp: Revert "Don't restart communication if not necessary" | *5f2f386025HID: logitech-hidpp: Don't restart IO, instead defer hid_connect() only | *1f80041c58HID: logitech-hidpp: Remove HIDPP_QUIRK_NO_HIDINPUT quirk | *d3b196a1daRevert "HID: logitech-hidpp: add a module parameter to keep firmware gestures" | *6885e5ffa0sh: bios: Revive earlyprintk support | *b0c25e957fhid: cp2112: Fix IRQ shutdown stopping polling for all IRQs on chip | *d06dc0f99fRDMA/hfi1: Workaround truncation compilation error | *086cd44204scsi: ufs: core: Leave space for '\0' in utf8 desc string | *a0f1999090ASoC: fsl: Fix PM disable depth imbalance in fsl_easrc_probe | *904fc01037RDMA/hns: The UD mode can only be configured with DCQCN | *9f8db02d30RDMA/hns: Fix signed-unsigned mixed comparisons | *2de683e27eRDMA/hns: Fix uninitialized ucmd in hns_roce_create_qp_common() | *611260e36fIB/mlx5: Fix rdma counter binding for RAW QP | *922b2693b9ASoC: fsl: mpc5200_dma.c: Fix warning of Function parameter or member not described | *001f90cd9dext4: move 'ix' sanity check to corrent position | *c24a3c9e37ARM: 9321/1: memset: cast the constant byte to unsigned char | *012d0c66f9hid: cp2112: Fix duplicate workqueue initialization | *1ce09238e8crypto: qat - increase size of buffers | *62df66b726crypto: caam/jr - fix Chacha20 + Poly1305 self test failure | *61f25d4686crypto: caam/qi2 - fix Chacha20 + Poly1305 self test failure | *66eb7b7f23nd_btt: Make BTT lanes preemptible | *6563e0f79dlibnvdimm/of_pmem: Use devm_kstrdup instead of kstrdup and check its return value | *d4ad0c1a83scsi: ibmvfc: Fix erroneous use of rtas_busy_delay with hcall return code | *b79c7d684cRDMA/core: Use size_{add,sub,mul}() in calls to struct_size() | *a5c83c8043hwrng: geode - fix accessing registers | *a8607725b2crypto: hisilicon/hpre - Fix a erroneous check after snprintf() | *b01b9dc548selftests/resctrl: Ensure the benchmark commands fits to its array | *2d2300fcf8selftests/pidfd: Fix ksft print formats | *8bc9c94474arm64: dts: imx8mn: Add sound-dai-cells to micfil node | *1abd658492arm64: dts: imx8mm: Add sound-dai-cells to micfil node | *cf7abb54f8arm64: dts: imx8qm-ss-img: Fix jpegenc compatible entry | *8704bf18a8clk: scmi: Free scmi_clk allocated when the clocks with invalid info are skipped | *bdb0428aa2firmware: arm_ffa: Assign the missing IDR allocation ID to the FFA device | *b0ffdc1643firmware: ti_sci: Mark driver as non removable | *995ee1e84esoc: qcom: llcc: Handle a second device without data corruption | *19b8098f73ARM: dts: qcom: mdm9615: populate vsdcc fixed regulator | *a8ab88f84barm64: dts: qcom: apq8016-sbc: Add missing ADV7533 regulators | *ddc0df81eeARM64: dts: marvell: cn9310: Use appropriate label for spi1 pins | *12d9de01c0arm64: dts: qcom: sdm845-mtp: fix WiFi configuration | *690b892559arm64: dts: qcom: sc7280: Add missing LMH interrupts | *2a4cce4168arm64: dts: qcom: msm8992-libra: drop duplicated reserved memory | *eb9daf4780arm64: dts: qcom: msm8916: Fix iommu local address range | *541640dcbfARM: dts: renesas: blanche: Fix typo in GP_11_2 pin name | *0e1e88bba2perf: hisi: Fix use-after-free when register pmu fails | *4067d39f3cdrm: mediatek: mtk_dsi: Fix NO_EOT_PACKET settings/handling | *a6a6f70aeddrm/msm/dsi: use msm_gem_kernel_put to free TX buffer | *aea6f32a43xen-pciback: Consider INTx disabled when MSI/MSI-X is enabled | *e588ca45bfdrm/rockchip: Fix type promotion bug in rockchip_gem_iommu_map() | *a00a293d57arm64/arm: xen: enlighten: Fix KPTI checks | *d0d01bb4a5drm/bridge: lt9611uxc: fix the race in the error path | *29aba28ea1drm/bridge: lt9611uxc: Register and attach our DSI device at probe | *f53a045793drm/bridge: lt9611uxc: Switch to devm MIPI-DSI helpers | *517a5137a5drm/rockchip: cdn-dp: Fix some error handling paths in cdn_dp_probe() | *865ccd4ca6drm/mediatek: Fix iommu fault during crtc enabling | *8e3c8253b3drm/mediatek: Fix iommu fault by swapping FBs after updating plane state | *e11e339faadrm/amdkfd: fix some race conditions in vram buffer alloc/free of svm code | *30cb99e096drm/bridge: tc358768: Fix bit updates | *1cd4ae681adrm/bridge: tc358768: Disable non-continuous clock mode | *c13591b859drm/bridge: tc358768: Fix use of uninitialized variable | *d78bddd94bdrm/bridge: lt8912b: Add missing drm_bridge_attach call | *5cc2bc519adrm/bridge: lt8912b: Manually disable HPD only if it was enabled | *42071feab7drm/bridge: lt8912b: Fix crash on bridge detach | *d9217286d0drm/bridge: lt8912b: Fix bridge_detach | *cc3057958cdrm/bridge: lt8912b: Add hot plug detection | *ef4a40953cdrm/bridge: lt8912b: Register and attach our DSI device at probe | *3580b8a013drm/bridge: lt8912b: Switch to devm MIPI-DSI helpers | *52541851a8drm/mipi-dsi: Create devm device attachment | *a20d6ecd26drm/mipi-dsi: Create devm device registration | *347f025a02drm/radeon: possible buffer overflow | *b163b371d7drm/rockchip: vop: Fix call to crtc reset helper | *9a96bed1dfdrm/rockchip: vop: Fix reset of state in duplicate state crtc funcs | *1b0bc99cf3hwmon: (coretemp) Fix potentially truncated sysfs attribute name | *b3e7eb23a6hwmon: (axi-fan-control) Fix possible NULL pointer dereference | *e0bf076b73platform/x86: wmi: Fix opening of char device | *c57e81d5e5platform/x86: wmi: remove unnecessary initializations | *2ca4e461a2platform/x86: wmi: Fix probe failure when failing to register WMI devices | *f75e11f54dclk: qcom: config IPQ_APSS_6018 should depend on QCOM_SMEM | *d1175cf4bdclk: mediatek: clk-mt2701: Add check for mtk_alloc_clk_data | *e964d21dc0clk: mediatek: clk-mt7629: Add check for mtk_alloc_clk_data | *c4070ada5dclk: mediatek: clk-mt7629-eth: Add check for mtk_alloc_clk_data | *3aefc6fcfbclk: mediatek: clk-mt6797: Add check for mtk_alloc_clk_data | *ca6d565a23clk: mediatek: clk-mt6779: Add check for mtk_alloc_clk_data | *533ca5153aclk: mediatek: clk-mt6765: Add check for mtk_alloc_clk_data | *e531e4e737clk: npcm7xx: Fix incorrect kfree | *761c2a690dclk: ti: fix double free in of_ti_divider_clk_setup() | *1c37faca09clk: ti: change ti_clk_register[_omap_hw]() API | *28b72fba1eclk: ti: Update component clocks to use ti_dt_clk_name() | *c4bffed2e5clk: ti: Update pll and clockdomain clocks to use ti_dt_clk_name() | *9b5e9d8bf9clk: ti: Add ti_dt_clk_name() helper to use clock-output-names | *f45fff806eclk: keystone: pll: fix a couple NULL vs IS_ERR() checks | *7ff8ca9beespi: nxp-fspi: use the correct ioremap function | *26206c858dclk: renesas: rzg2l: Fix computation formula | *1966bf2a79clk: renesas: rzg2l: Use FIELD_GET() for PLL register fields | *7ece2efa87clk: renesas: rzg2l: Simplify multiplication/shift logic | *e2239f7165clk: imx: imx8qxp: Fix elcdif_pll clock | *7d416973cdclk: imx: imx8mq: correct error handling path | *608ebb098bclk: imx: Select MXC_CLK for CLK_IMX8QXP | *8861b2925aclk: qcom: gcc-sm8150: Fix gcc_sdcc2_apps_clk_src | *76e8f00f54clk: qcom: mmcc-msm8998: Fix the SMMU GDSC | *56c4bb46a5clk: qcom: mmcc-msm8998: Don't check halt bit on some branch clks | *0881d24cf5clk: qcom: clk-rcg2: Fix clock rate overflow for high parent frequencies | *b64683f5d7spi: tegra: Fix missing IRQ check in tegra_slink_probe() | *b13e8b38beregmap: debugfs: Fix a erroneous check after snprintf() | *8fafac4073ipvlan: properly track tx_errors | *3eedc19a9dnet: add DEV_STATS_READ() helper | *359bce81b8ipv6: avoid atomic fragment on GSO packets | *6b413d52f6ACPI: sysfs: Fix create_pnp_modalias() and create_of_modalias() | *32aaa3b987wifi: iwlwifi: empty overflow queue during flush | *0e3ad00be4wifi: iwlwifi: pcie: synchronize IRQs before NAPI | *a8ebe549e0wifi: iwlwifi: call napi_synchronize() before freeing rx/tx queues | *627a3b3f5ciwlwifi: pcie: adjust to Bz completion descriptor | *0d91506a40tcp: fix cookie_init_timestamp() overflows | *4f6e904ed4chtls: fix tp->rcv_tstamp initialization | *5d7bec7ae4r8169: fix rare issue with broken rx after link-down on RTL8125 | *e143a3c82dr8169: use tp_to_dev instead of open code | *3a8f4e58e1thermal: core: prevent potential string overflow | *bfd4ed4988netfilter: nf_tables: Drop pointless memset when dumping rules | *80986257d2PM / devfreq: rockchip-dfi: Make pmu regmap mandatory | *826120c9bacan: dev: can_put_echo_skb(): don't crash kernel if can_priv::echo_skb is accessed out of bounds | *28e9e01591can: dev: can_restart(): fix race condition between controller restart and netif_carrier_on() | *ada4dc4788can: dev: can_restart(): don't crash kernel if carrier is OK | *d4eb4182a8wifi: rtlwifi: fix EDCA limit set by BT coexistence | *2027e74150tcp_metrics: do not create an entry from tcp_init_metrics() | *3f7cb7c47ctcp_metrics: properly set tp->snd_ssthresh in tcp_init_metrics() | *ca7b6fa9e6tcp_metrics: add missing barriers on delete | *227709a0e4wifi: mt76: mt7603: improve stuck beacon handling | *eab5b0aa50mt76: pass original queue id from __mt76_tx_queue_skb to the driver | *75336a7625mt76: add support for overriding the device used for DMA mapping | *77b2ab5cd1mt76: dma: use kzalloc instead of devm_kzalloc for txwi | *064b32f18dwifi: mt76: mt7603: rework/fix rx pse hang check | *1afbb9ececwifi: rtw88: debug: Fix the NULL vs IS_ERR() bug for debugfs_create_file() | *ebcbf5f5e0net: spider_net: Use size_add() in call to struct_size() | *56e7424c6etipc: Use size_add() in calls to struct_size() | *3e51efcb29mlxsw: Use size_mul() in call to struct_size() | *dc3fef3107gve: Use size_add() in call to struct_size() | *70f032db85tcp: call tcp_try_undo_recovery when an RTOd TFO SYNACK is ACKed | *a2d540c745udp: add missing WRITE_ONCE() around up->encap_rcv | *8f7eef3a13selftests/bpf: Correct map_fd to data_fd in tailcalls | *3eefb2fbf4selftests/bpf: Test tail call counting with bpf2bpf and data on stack | *ab91992ec4i40e: fix potential memory leaks in i40e_remove() | *7027423736genirq/matrix: Exclude managed interrupts in irq_matrix_allocated() | *379b120e4fpstore/platform: Add check for kstrdup | *81b8638e4ex86/boot: Fix incorrect startup_gdt_descr.size | *c7e8c7452ex86/sev-es: Allow copy_from_kernel_nofault() in earlier boot | *0b5da8ce0fx86: Share definition of __is_canonical_address() | *90b263db85futex: Don't include process MM in futex key on no-MMU | *f0d6e58411x86/srso: Fix SBPB enablement for (possible) future fixed HW | *565f9337b6writeback, cgroup: switch inodes with dirty timestamps to release dying cgwbs | *2bb46b2082vfs: fix readahead(2) on block devices | *20195f87dbsched: Fix stop_one_cpu_nowait() vs hotplug | *13cde955e5sched/uclamp: Ignore (util == 0) optimization in feec() when p_util_max = 0 | *cc6198ff20iov_iter, x86: Be consistent about the __user tag on copy_mc_to_user() * |73a5f48c66Revert "kasan: print the original fault addr when access invalid shadow" * |02ca2ae2afANDROID: GKI: db845c: Update symbols list and ABI on rpmsg_register_device_override * |22ca9d61faANDROID: fix up rpmsg_device ABI break * |1202da82c0ANDROID: fix up platform_device ABI break * |26f1dc8dc6Merge 5.15.138 into android14-5.15-lts |\| | *80529b4968Linux 5.15.138 | *3d8344a7c4ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection | *f049c0c003misc: pci_endpoint_test: Add deviceID for J721S2 PCIe EP device support | *28b8ad8ccetty: 8250: Add Brainboxes Oxford Semiconductor-based quirks | *44c4dfac3ftty: 8250: Add support for Intashield IX cards | *d541ccb34dtty: 8250: Add support for additional Brainboxes PX cards | *60debc01fctty: 8250: Fix up PX-803/PX-857 | *1f5649aed5tty: 8250: Fix port count of PX-257 | *3fe3cc63c7tty: 8250: Add support for Intashield IS-100 | *a5b6390fd6tty: 8250: Add support for Brainboxes UP cards | *738fe41b64tty: 8250: Add support for additional Brainboxes UC cards | *ff6059c3d2tty: 8250: Remove UC-257 and UC-431 | *81a4dd5e6ctty: n_gsm: fix race condition in status line change on dead connections | *e25197747fusb: raw-gadget: properly handle interrupted requests | *e5f53a68a5usb: typec: tcpm: Fix NULL pointer dereference in tcpm_pd_svdm() | *7c4855b22ausb: storage: set 1.50 as the lower bcdDevice for older "Super Top" compatibility | *c48aae5385PCI: Prevent xHCI driver from claiming AMD VanGogh USB3 DRD device | *6628c3627cdrm/amd: Disable ASPM for VI w/ all Intel systems | *b6c3c7786edrm/amd: Move helper for dynamic speed switch check out of smu13 | *9015169f00can: isotp: isotp_sendmsg(): fix TX state detection and wait behavior | *d72ff64783can: isotp: isotp_bind(): do not validate unused address information | *e163ad6a86can: isotp: add local echo tx processing and tx without FC | *b4e78ea266can: isotp: handle wait_event_interruptible() return values | *2fc6f33725can: isotp: check CAN address family in isotp_bind() | *f8c3bd211ccan: isotp: isotp_bind(): return -EINVAL on incorrect CAN ID formatting | *615c4dd640can: isotp: set max PDU size to 64 kByte | *6627b96851powerpc/mm: Fix boot crash with FLATMEM | *f0f9986488r8152: Check for unplug in r8153b_ups_en() / r8153c_ups_en() | *78c939a887r8152: Check for unplug in rtl_phy_patch_request() | *51cc28ce74net: chelsio: cxgb4: add an error code check in t4_load_phy_fw | *bbc9261993platform/mellanox: mlxbf-tmfifo: Fix a warning message | *db4416ea3ascsi: mpt3sas: Fix in error path | *d48b2e8189fbdev: uvesafb: Call cn_del_callback() at the end of uvesafb_exit() | *e39440c326drm/ttm: Reorder sys manager cleanup step | *aade33d3d9ASoC: rt5650: fix the wrong result of key button | *fa32e21c05netfilter: nfnetlink_log: silence bogus compiler warning | *dfcbb983ebspi: npcm-fiu: Fix UMA reads when dummy.nbytes == 0 | *64ae128b09fs/ntfs3: Avoid possible memory leak | *27a0bed128fs/ntfs3: Fix directory element type detection | *94524980eefs/ntfs3: Fix NULL pointer dereference on error in attr_allocate_frame() | *2de328398bfs/ntfs3: Fix possible NULL-ptr-deref in ni_readpage_cmpr() | *962a3d3d73fs/ntfs3: Use kvmalloc instead of kmalloc(... __GFP_NOWARN) | *393966e79bfs/ntfs3: Write immediately updated ntfs state | *59e629fc71fs/ntfs3: Add ckeck in ni_update_parent() | *738a3adc7cfbdev: atyfb: only use ioremap_uc() on i386 and ia64 | *afef8af919Input: synaptics-rmi4 - handle reset delay when using SMBus trsnsport | *abc62fc06dpowerpc/85xx: Fix math emulation exception | *4bdde4dca0dmaengine: ste_dma40: Fix PM disable depth imbalance in d40_probe | *39d2c10367irqchip/stm32-exti: add missing DT IRQ flag translation | *c57aef9075irqchip/riscv-intc: Mark all INTC nodes as initialized | *eb99b6e204net: sched: cls_u32: Fix allocation size in u32_init() | *5e78ebe7c1ASoC: simple-card: fixup asoc_simple_probe() error handling | *65fd21aa38x86: Fix .brk attribute in linker script | *d4c8bf5635rpmsg: Fix possible refcount leak in rpmsg_register_device_override() | *a82e0fda8arpmsg: glink: Release driver_override | *bfd4a664ddrpmsg: Fix calling device_lock() on non-initialized device | *2e76b4f621rpmsg: Fix kfree() of static memory on setting driver_override | *5c0da71871rpmsg: Constify local variable in field store macro | *389190b254driver: platform: Add helper for safer setting of driver_override | *37ffa428d5objtool/x86: add missing embedded_insn check | *f031e15d0bext4: avoid overlapping preallocations due to overflow | *f2c3a3aa6fext4: fix BUG in ext4_mb_new_inode_pa() due to overflow | *7a992726f7ext4: add two helper functions extent_logical_end() and pa_logical_end() | *9e78e7709fx86/mm: Fix RESERVE_BRK() for older binutils | *d3201c7180x86/mm: Simplify RESERVE_BRK() | *897b56acf1x86/i8259: Skip probing when ACPI/MADT advertises PCAT compatibility | *77db87c4a4gve: Fix GFP flags when allocing pages | *8b424bdf6ciio: afe: rescale: Accept only offset channels | *c1eeb494f6iio: afe: rescale: add offset support | *7c76b7db55iio: afe: rescale: expose scale processing function | *c60671502diio: afe: rescale: reorder includes | *27dd09f5ecclk: Sanitize possible_parent_show to Handle Return Value of of_clk_get_parent_name | *c27ca4aebbsparc32: fix a braino in fault handling in csum_and_copy_..._user() | *21b07a2e60perf/core: Fix potential NULL deref | *6efd498009nvmem: imx: correct nregs for i.MX6UL | *0c2948118cnvmem: imx: correct nregs for i.MX6SLL | *6e22bf6f00nvmem: imx: correct nregs for i.MX6ULL | *e0f95b831bmisc: fastrpc: Clean buffers on remote invocation failures | *c4957f00f9tracing/kprobes: Fix the description of variable length arguments | *cdc57093b4i2c: aspeed: Fix i2c bus hang in slave read | *e97d374a25i2c: stm32f7: Fix PEC handling in case of SMBUS transfers | *2766a87210i2c: muxes: i2c-demux-pinctrl: Use of_get_i2c_adapter_by_node() | *48b58f7469i2c: muxes: i2c-mux-gpmux: Use of_get_i2c_adapter_by_node() | *cb65e69276i2c: muxes: i2c-mux-pinctrl: Use of_get_i2c_adapter_by_node() | *eace761f35iio: adc: xilinx-xadc: Correct temperature offset/scale for UltraScale | *70322a446eiio: adc: xilinx-xadc: Don't clobber preset voltage/temperature thresholds | *3c1312b5d4iio: exynos-adc: request second interupt only when touchscreen mode is used | *4e14f2d588kasan: print the original fault addr when access invalid shadow | *bdfa4fa758i40e: Fix wrong check for I40E_TXR_FLAGS_WB_ON_ITR | *d5c175f4cegtp: fix fragmentation needed check with gso | *c0dad0c092gtp: uapi: fix GTPA_MAX | *852fb4ce42tcp: fix wrong RTO timeout when received SACK reneging | *83cfa3b51ar8152: Release firmware if we have an error in probe | *e0f9231ccdr8152: Cancel hw_phy_work if we have an error in probe | *ff42b0a556r8152: Run the unload routine if we have errors during probe | *6fa3b9f947r8152: Increase USB control msg timeout to 5000ms as per spec | *76873f2eadnet: usb: smsc95xx: Fix uninit-value access in smsc95xx_read_reg | *6afd112c3fnet: ieee802154: adf7242: Fix some potential buffer overflow in adf7242_stats_show() | *46cd35e4e7igc: Fix ambiguity in the ethtool advertising | *49529413eaneighbour: fix various data-races | *6675549463igb: Fix potential memory leak in igb_add_ethtool_nfc_entry | *2634219053treewide: Spelling fix in comment | *bc0c4bc119i40e: Fix I40E_FLAG_VF_VLAN_PRUNING value | *c532c5df01r8169: fix the KCSAN reported data race in rtl_rx while reading desc->opts1 | *6afb294c88r8169: fix the KCSAN reported data-race in rtl_tx while reading TxDescArray[entry].opts1 | *9d7b383842r8169: fix the KCSAN reported data-race in rtl_tx() while reading tp->cur_tx | *04dbfa4122firmware/imx-dsp: Fix use_after_free in imx_dsp_setup_channels() | *0d587b86cddrm/dp_mst: Fix NULL deref in get_mst_branch_device_by_guid_helper() | *8860f0175evsock/virtio: initialize the_virtio_vsock before using VQs | *762c251c7fvsock/virtio: add support for device suspend/resume | *1e02df6f69vsock/virtio: factor our the code to initialize and delete VQs | *15a8cac3c2drm/i915/pmu: Check if pmu is closed before stopping event | *43bd431a5dnfsd: lock_rename() needs both directories to live on the same fs | *556b68d9b9mm/migrate: fix do_pages_move for compat pointers | *c4071c6114mm/page_alloc: correct start page when guard page debug is enabled | *3a6cee2bfbvhost: Allow null msg.size on VHOST_IOTLB_INVALIDATE | *fbc9a8718fvirtio-mmio: fix memory leak of vm_dev | *862a356bc9virtio_balloon: Fix endless deflation and inflation on arm64 | *41bb770e42mcb-lpc: Reallocate memory region to avoid memory overlapping | *f2ac8b2643mcb: Return actual parsed size when reading chameleon table | *90918ef995mptcp: more conservative check for zero probes | *fd2b2dab6ftcp: cleanup tcp_remove_empty_skb() use | *68342755b9tcp: remove dead code from tcp_sendmsg_locked() | *0f482ad7b1pinctrl: qcom: lpass-lpi: fix concurrent register updates | *51b054f6feASoC: codecs: wcd938x: fix runtime PM imbalance on remove | *cb34f4e79eASoC: codecs: wcd938x: fix resource leaks on bind errors *4a9eba4997Merge branch 'android14-5.15' into branch 'android14-5.15-lts' Change-Id: I05a459e7d76e537f8586349c711f863f692035a4 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
@@ -6,3 +6,12 @@ Description:
|
||||
OP-TEE bus provides reference to registered drivers under this directory. The <uuid>
|
||||
matches Trusted Application (TA) driver and corresponding TA in secure OS. Drivers
|
||||
are free to create needed API under optee-ta-<uuid> directory.
|
||||
|
||||
What: /sys/bus/tee/devices/optee-ta-<uuid>/need_supplicant
|
||||
Date: November 2023
|
||||
KernelVersion: 6.7
|
||||
Contact: op-tee@lists.trustedfirmware.org
|
||||
Description:
|
||||
Allows to distinguish whether an OP-TEE based TA/device requires user-space
|
||||
tee-supplicant to function properly or not. This attribute will be present for
|
||||
devices which depend on tee-supplicant to be running.
|
||||
|
||||
@@ -36,7 +36,7 @@ experience, the following books are good for, if anything, reference:
|
||||
- "C: A Reference Manual" by Harbison and Steele [Prentice Hall]
|
||||
|
||||
The kernel is written using GNU C and the GNU toolchain. While it
|
||||
adheres to the ISO C89 standard, it uses a number of extensions that are
|
||||
adheres to the ISO C11 standard, it uses a number of extensions that are
|
||||
not featured in the standard. The kernel is a freestanding C
|
||||
environment, with no reliance on the standard C library, so some
|
||||
portions of the C standard are not supported. Arbitrary long long
|
||||
|
||||
@@ -44,7 +44,7 @@ altro, utili riferimenti:
|
||||
- "C: A Reference Manual" di Harbison and Steele [Prentice Hall]
|
||||
|
||||
Il kernel è stato scritto usando GNU C e la toolchain GNU.
|
||||
Sebbene si attenga allo standard ISO C89, esso utilizza una serie di
|
||||
Sebbene si attenga allo standard ISO C11, esso utilizza una serie di
|
||||
estensioni che non sono previste in questo standard. Il kernel è un
|
||||
ambiente C indipendente, che non ha alcuna dipendenza dalle librerie
|
||||
C standard, così alcune parti del C standard non sono supportate.
|
||||
|
||||
@@ -65,7 +65,7 @@ Linux カーネル開発のやり方
|
||||
- 『新・詳説 C 言語 H&S リファレンス』 (サミュエル P ハービソン/ガイ L スティール共著 斉藤 信男監訳)[ソフトバンク]
|
||||
|
||||
カーネルは GNU C と GNU ツールチェインを使って書かれています。カーネル
|
||||
は ISO C89 仕様に準拠して書く一方で、標準には無い言語拡張を多く使って
|
||||
は ISO C11 仕様に準拠して書く一方で、標準には無い言語拡張を多く使って
|
||||
います。カーネルは標準 C ライブラリに依存しない、C 言語非依存環境です。
|
||||
そのため、C の標準の中で使えないものもあります。特に任意の long long
|
||||
の除算や浮動小数点は使えません。カーネルがツールチェインや C 言語拡張
|
||||
|
||||
@@ -62,7 +62,7 @@ Documentation/process/howto.rst
|
||||
- "Practical C Programming" by Steve Oualline [O'Reilly]
|
||||
- "C: A Reference Manual" by Harbison and Steele [Prentice Hall]
|
||||
|
||||
커널은 GNU C와 GNU 툴체인을 사용하여 작성되었다. 이 툴들은 ISO C89 표준을
|
||||
커널은 GNU C와 GNU 툴체인을 사용하여 작성되었다. 이 툴들은 ISO C11 표준을
|
||||
따르는 반면 표준에 있지 않은 많은 확장기능도 가지고 있다. 커널은 표준 C
|
||||
라이브러리와는 관계없이 freestanding C 환경이어서 C 표준의 일부는
|
||||
지원되지 않는다. 임의의 long long 나누기나 floating point는 지원되지 않는다.
|
||||
|
||||
@@ -45,7 +45,7 @@ Linux内核大部分是由C语言写成的,一些体系结构相关的代码
|
||||
- "C: A Reference Manual" by Harbison and Steele [Prentice Hall]
|
||||
《C语言参考手册(原书第5版)》(邱仲潘 等译)[机械工业出版社]
|
||||
|
||||
Linux内核使用GNU C和GNU工具链开发。虽然它遵循ISO C89标准,但也用到了一些
|
||||
Linux内核使用GNU C和GNU工具链开发。虽然它遵循ISO C11标准,但也用到了一些
|
||||
标准中没有定义的扩展。内核是自给自足的C环境,不依赖于标准C库的支持,所以
|
||||
并不支持C标准中的部分定义。比如long long类型的大数除法和浮点运算就不允许
|
||||
使用。有时候确实很难弄清楚内核对工具链的要求和它所使用的扩展,不幸的是目
|
||||
|
||||
@@ -48,7 +48,7 @@ Linux內核大部分是由C語言寫成的,一些體系結構相關的代碼
|
||||
- "C: A Reference Manual" by Harbison and Steele [Prentice Hall]
|
||||
《C語言參考手冊(原書第5版)》(邱仲潘 等譯)[機械工業出版社]
|
||||
|
||||
Linux內核使用GNU C和GNU工具鏈開發。雖然它遵循ISO C89標準,但也用到了一些
|
||||
Linux內核使用GNU C和GNU工具鏈開發。雖然它遵循ISO C11標準,但也用到了一些
|
||||
標準中沒有定義的擴展。內核是自給自足的C環境,不依賴於標準C庫的支持,所以
|
||||
並不支持C標準中的部分定義。比如long long類型的大數除法和浮點運算就不允許
|
||||
使用。有時候確實很難弄清楚內核對工具鏈的要求和它所使用的擴展,不幸的是目
|
||||
|
||||
2
Makefile
2
Makefile
@@ -1,7 +1,7 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
VERSION = 5
|
||||
PATCHLEVEL = 15
|
||||
SUBLEVEL = 137
|
||||
SUBLEVEL = 144
|
||||
EXTRAVERSION =
|
||||
NAME = Trick or Treat
|
||||
|
||||
|
||||
@@ -35165,6 +35165,10 @@ member {
|
||||
id: 0x22e86cdc
|
||||
type_id: 0x048fc360
|
||||
}
|
||||
member {
|
||||
id: 0x23531e28
|
||||
type_id: 0x026208b2
|
||||
}
|
||||
member {
|
||||
id: 0x2380a48f
|
||||
type_id: 0x012ce22f
|
||||
@@ -35916,6 +35920,11 @@ member {
|
||||
id: 0x34a07023
|
||||
type_id: 0x5dafb09e
|
||||
}
|
||||
member {
|
||||
id: 0x34aaae1a
|
||||
type_id: 0x5d84d1ff
|
||||
offset: 24
|
||||
}
|
||||
member {
|
||||
id: 0x34adb3c9
|
||||
type_id: 0x5d98acb2
|
||||
@@ -46136,10 +46145,10 @@ member {
|
||||
offset: 160
|
||||
}
|
||||
member {
|
||||
id: 0xb2dd57f2
|
||||
id: 0xb2dd5b41
|
||||
name: "autoconf"
|
||||
type_id: 0xb3e7bac9
|
||||
offset: 30
|
||||
offset: 6
|
||||
bitsize: 1
|
||||
}
|
||||
member {
|
||||
@@ -128349,10 +128358,10 @@ member {
|
||||
offset: 9920
|
||||
}
|
||||
member {
|
||||
id: 0x7adb50ba
|
||||
id: 0x7adb5caf
|
||||
name: "onlink"
|
||||
type_id: 0xb3e7bac9
|
||||
offset: 31
|
||||
offset: 7
|
||||
bitsize: 1
|
||||
}
|
||||
member {
|
||||
@@ -149836,10 +149845,9 @@ member {
|
||||
bitsize: 40
|
||||
}
|
||||
member {
|
||||
id: 0x688b9047
|
||||
id: 0x688b9626
|
||||
name: "reserved"
|
||||
type_id: 0xb3e7bac9
|
||||
offset: 24
|
||||
bitsize: 6
|
||||
}
|
||||
member {
|
||||
@@ -190429,6 +190437,16 @@ struct_union {
|
||||
member_id: 0x2d8a4e32
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x026208b2
|
||||
kind: STRUCT
|
||||
definition {
|
||||
bytesize: 1
|
||||
member_id: 0x688b9626
|
||||
member_id: 0xb2dd5b41
|
||||
member_id: 0x7adb5caf
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x02c70092
|
||||
kind: STRUCT
|
||||
@@ -194841,6 +194859,15 @@ struct_union {
|
||||
member_id: 0x8c9fd173
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x5d84d1ff
|
||||
kind: UNION
|
||||
definition {
|
||||
bytesize: 1
|
||||
member_id: 0x2ddb63e4
|
||||
member_id: 0x23531e28
|
||||
}
|
||||
}
|
||||
struct_union {
|
||||
id: 0x5d98acb2
|
||||
kind: UNION
|
||||
@@ -226215,9 +226242,7 @@ struct_union {
|
||||
member_id: 0x5ce532c4
|
||||
member_id: 0xb5de8e04
|
||||
member_id: 0x2165da89
|
||||
member_id: 0x688b9047
|
||||
member_id: 0xb2dd57f2
|
||||
member_id: 0x7adb50ba
|
||||
member_id: 0x34aaae1a
|
||||
member_id: 0xe91a1d71
|
||||
member_id: 0xbada6e7d
|
||||
member_id: 0x08cabd3c
|
||||
@@ -276265,6 +276290,13 @@ function {
|
||||
parameter_id: 0x322c8c4b
|
||||
parameter_id: 0x347303b4
|
||||
}
|
||||
function {
|
||||
id: 0x7ad03bcc
|
||||
return_type_id: 0x09626b7f
|
||||
parameter_id: 0x0258f96e
|
||||
parameter_id: 0x2fa7f388
|
||||
parameter_id: 0x316cc8eb
|
||||
}
|
||||
function {
|
||||
id: 0x7b05d834
|
||||
return_type_id: 0x347303b4
|
||||
@@ -293584,6 +293616,12 @@ function {
|
||||
parameter_id: 0x026525e9
|
||||
parameter_id: 0x0aa1f0ee
|
||||
}
|
||||
function {
|
||||
id: 0x9d3354d9
|
||||
return_type_id: 0x6720d32f
|
||||
parameter_id: 0x0258f96e
|
||||
parameter_id: 0x09626b7f
|
||||
}
|
||||
function {
|
||||
id: 0x9d356d81
|
||||
return_type_id: 0x6720d32f
|
||||
@@ -320567,6 +320605,24 @@ elf_symbol {
|
||||
type_id: 0x9c874975
|
||||
full_name: "devm_mfd_add_devices"
|
||||
}
|
||||
elf_symbol {
|
||||
id: 0x6e37c2ad
|
||||
name: "devm_mipi_dsi_attach"
|
||||
is_defined: true
|
||||
symbol_type: FUNCTION
|
||||
crc: 0x9fca9eb4
|
||||
type_id: 0x9d3354d9
|
||||
full_name: "devm_mipi_dsi_attach"
|
||||
}
|
||||
elf_symbol {
|
||||
id: 0x91f58d29
|
||||
name: "devm_mipi_dsi_device_register_full"
|
||||
is_defined: true
|
||||
symbol_type: FUNCTION
|
||||
crc: 0x7e564e80
|
||||
type_id: 0x7ad03bcc
|
||||
full_name: "devm_mipi_dsi_device_register_full"
|
||||
}
|
||||
elf_symbol {
|
||||
id: 0x7abe395b
|
||||
name: "devm_nvmem_cell_get"
|
||||
@@ -363966,6 +364022,8 @@ interface {
|
||||
symbol_id: 0x888f691d
|
||||
symbol_id: 0x86c1623f
|
||||
symbol_id: 0x36e39cf6
|
||||
symbol_id: 0x6e37c2ad
|
||||
symbol_id: 0x91f58d29
|
||||
symbol_id: 0x7abe395b
|
||||
symbol_id: 0xa8b058e5
|
||||
symbol_id: 0x47264dbb
|
||||
|
||||
@@ -388,10 +388,6 @@
|
||||
__memset_io
|
||||
memstart_addr
|
||||
memunmap
|
||||
mipi_dsi_attach
|
||||
mipi_dsi_detach
|
||||
mipi_dsi_device_register_full
|
||||
mipi_dsi_device_unregister
|
||||
misc_deregister
|
||||
misc_register
|
||||
mod_delayed_work_on
|
||||
@@ -474,7 +470,6 @@
|
||||
pci_disable_device
|
||||
pcie_capability_clear_and_set_word
|
||||
pcie_capability_read_word
|
||||
pcie_capability_write_word
|
||||
pci_enable_device
|
||||
pci_iomap
|
||||
pci_iounmap
|
||||
@@ -1020,7 +1015,15 @@
|
||||
# required by lmh.ko
|
||||
of_cpu_node_to_id
|
||||
|
||||
# required by lontium-lt9611.ko
|
||||
mipi_dsi_attach
|
||||
mipi_dsi_detach
|
||||
mipi_dsi_device_register_full
|
||||
mipi_dsi_device_unregister
|
||||
|
||||
# required by lontium-lt9611uxc.ko
|
||||
devm_mipi_dsi_attach
|
||||
devm_mipi_dsi_device_register_full
|
||||
print_hex_dump
|
||||
regmap_noinc_read
|
||||
regmap_noinc_write
|
||||
@@ -1326,7 +1329,6 @@
|
||||
drm_mode_destroy
|
||||
drm_mode_duplicate
|
||||
drm_mode_object_find
|
||||
drm_mode_object_put
|
||||
drm_mode_probed_add
|
||||
drm_modeset_acquire_fini
|
||||
drm_modeset_acquire_init
|
||||
@@ -1934,7 +1936,9 @@
|
||||
mfd_remove_devices
|
||||
|
||||
# preserved by --additions-only
|
||||
drm_mode_object_put
|
||||
gpiod_direction_input
|
||||
pcie_capability_write_word
|
||||
snd_soc_get_volsw_sx
|
||||
snd_soc_info_volsw_sx
|
||||
snd_soc_put_volsw_sx
|
||||
|
||||
@@ -59,13 +59,13 @@ void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
||||
|
||||
low_mem_sz = size;
|
||||
in_use = 1;
|
||||
memblock_add_node(base, size, 0);
|
||||
memblock_add_node(base, size, 0, MEMBLOCK_NONE);
|
||||
} else {
|
||||
#ifdef CONFIG_HIGHMEM
|
||||
high_mem_start = base;
|
||||
high_mem_sz = size;
|
||||
in_use = 1;
|
||||
memblock_add_node(base, size, 1);
|
||||
memblock_add_node(base, size, 1, MEMBLOCK_NONE);
|
||||
memblock_reserve(base, size);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "imx28-lwe.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Liebherr XEA board";
|
||||
compatible = "lwn,imx28-xea", "fsl,imx28";
|
||||
};
|
||||
|
||||
|
||||
@@ -121,6 +121,8 @@
|
||||
max-speed = <100>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
|
||||
clocks = <&clks IMX6UL_CLK_ENET_REF>;
|
||||
clock-names = "rmii-ref";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -438,7 +438,7 @@
|
||||
};
|
||||
|
||||
gpt1: timer@302d0000 {
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
|
||||
reg = <0x302d0000 0x10000>;
|
||||
interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX7D_GPT1_ROOT_CLK>,
|
||||
@@ -447,7 +447,7 @@
|
||||
};
|
||||
|
||||
gpt2: timer@302e0000 {
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
|
||||
reg = <0x302e0000 0x10000>;
|
||||
interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX7D_GPT2_ROOT_CLK>,
|
||||
@@ -457,7 +457,7 @@
|
||||
};
|
||||
|
||||
gpt3: timer@302f0000 {
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
|
||||
reg = <0x302f0000 0x10000>;
|
||||
interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX7D_GPT3_ROOT_CLK>,
|
||||
@@ -467,7 +467,7 @@
|
||||
};
|
||||
|
||||
gpt4: timer@30300000 {
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
|
||||
compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
|
||||
reg = <0x30300000 0x10000>;
|
||||
interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX7D_GPT4_ROOT_CLK>,
|
||||
|
||||
@@ -82,14 +82,12 @@
|
||||
};
|
||||
};
|
||||
|
||||
regulators {
|
||||
vsdcc_fixed: vsdcc-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "SDCC Power";
|
||||
regulator-min-microvolt = <2700000>;
|
||||
regulator-max-microvolt = <2700000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
vsdcc_fixed: vsdcc-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "SDCC Power";
|
||||
regulator-min-microvolt = <2700000>;
|
||||
regulator-max-microvolt = <2700000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
soc: soc {
|
||||
|
||||
@@ -239,7 +239,7 @@
|
||||
};
|
||||
|
||||
keyboard_pins: keyboard {
|
||||
pins = "GP_3_10", "GP_3_11", "GP_3_12", "GP_3_15", "GP_11_02";
|
||||
pins = "GP_3_10", "GP_3_11", "GP_3_12", "GP_3_15", "GP_11_2";
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
|
||||
@@ -10,10 +10,6 @@
|
||||
|
||||
#include <linux/interrupt.h>
|
||||
|
||||
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
|
||||
#define __exception_irq_entry __irq_entry
|
||||
#else
|
||||
#define __exception_irq_entry
|
||||
#endif
|
||||
|
||||
#endif /* __ASM_ARM_EXCEPTION_H */
|
||||
|
||||
@@ -17,6 +17,7 @@ ENTRY(__memset)
|
||||
ENTRY(mmioset)
|
||||
WEAK(memset)
|
||||
UNWIND( .fnstart )
|
||||
and r1, r1, #255 @ cast to unsigned char
|
||||
ands r3, r0, #3 @ 1 unaligned?
|
||||
mov ip, r0 @ preserve r0 as return value
|
||||
bne 6f @ 1
|
||||
|
||||
@@ -502,6 +502,10 @@ static int imx_mmdc_perf_init(struct platform_device *pdev, void __iomem *mmdc_b
|
||||
|
||||
name = devm_kasprintf(&pdev->dev,
|
||||
GFP_KERNEL, "mmdc%d", ret);
|
||||
if (!name) {
|
||||
ret = -ENOMEM;
|
||||
goto pmu_release_id;
|
||||
}
|
||||
|
||||
pmu_mmdc->mmdc_ipg_clk = mmdc_ipg_clk;
|
||||
pmu_mmdc->devtype_data = (struct fsl_mmdc_devtype_data *)of_id->data;
|
||||
@@ -524,9 +528,10 @@ static int imx_mmdc_perf_init(struct platform_device *pdev, void __iomem *mmdc_b
|
||||
|
||||
pmu_register_err:
|
||||
pr_warn("MMDC Perf PMU failed (%d), disabled\n", ret);
|
||||
ida_simple_remove(&mmdc_ida, pmu_mmdc->id);
|
||||
cpuhp_state_remove_instance_nocalls(cpuhp_mmdc_state, &pmu_mmdc->node);
|
||||
hrtimer_cancel(&pmu_mmdc->hrtimer);
|
||||
pmu_release_id:
|
||||
ida_simple_remove(&mmdc_ida, pmu_mmdc->id);
|
||||
pmu_free:
|
||||
kfree(pmu_mmdc);
|
||||
return ret;
|
||||
|
||||
@@ -362,7 +362,8 @@ static int __init xen_guest_init(void)
|
||||
* for secondary CPUs as they are brought up.
|
||||
* For uniformity we use VCPUOP_register_vcpu_info even on cpu0.
|
||||
*/
|
||||
xen_vcpu_info = alloc_percpu(struct vcpu_info);
|
||||
xen_vcpu_info = __alloc_percpu(sizeof(struct vcpu_info),
|
||||
1 << fls(sizeof(struct vcpu_info) - 1));
|
||||
if (xen_vcpu_info == NULL)
|
||||
return -ENOMEM;
|
||||
|
||||
|
||||
@@ -1191,6 +1191,8 @@ choice
|
||||
config CPU_BIG_ENDIAN
|
||||
bool "Build big-endian kernel"
|
||||
depends on !LD_IS_LLD || LLD_VERSION >= 130000
|
||||
# https://github.com/llvm/llvm-project/commit/1379b150991f70a5782e9a143c2ba5308da1161c
|
||||
depends on AS_IS_GNU || AS_VERSION >= 150000
|
||||
help
|
||||
Say Y if you plan on running a kernel with a big-endian userspace.
|
||||
|
||||
|
||||
@@ -1179,26 +1179,34 @@
|
||||
dma-coherent;
|
||||
};
|
||||
|
||||
usb0: usb@3100000 {
|
||||
status = "disabled";
|
||||
compatible = "snps,dwc3";
|
||||
reg = <0x0 0x3100000 0x0 0x10000>;
|
||||
interrupts = <0 80 0x4>; /* Level high type */
|
||||
dr_mode = "host";
|
||||
snps,quirk-frame-length-adjustment = <0x20>;
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
};
|
||||
bus: bus {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
compatible = "simple-bus";
|
||||
ranges;
|
||||
dma-ranges = <0x0 0x0 0x0 0x0 0x100 0x00000000>;
|
||||
|
||||
usb1: usb@3110000 {
|
||||
status = "disabled";
|
||||
compatible = "snps,dwc3";
|
||||
reg = <0x0 0x3110000 0x0 0x10000>;
|
||||
interrupts = <0 81 0x4>; /* Level high type */
|
||||
dr_mode = "host";
|
||||
snps,quirk-frame-length-adjustment = <0x20>;
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
usb0: usb@3100000 {
|
||||
compatible = "snps,dwc3";
|
||||
reg = <0x0 0x3100000 0x0 0x10000>;
|
||||
interrupts = <0 80 0x4>; /* Level high type */
|
||||
dr_mode = "host";
|
||||
snps,quirk-frame-length-adjustment = <0x20>;
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usb1: usb@3110000 {
|
||||
compatible = "snps,dwc3";
|
||||
reg = <0x0 0x3110000 0x0 0x10000>;
|
||||
interrupts = <0 81 0x4>; /* Level high type */
|
||||
dr_mode = "host";
|
||||
snps,quirk-frame-length-adjustment = <0x20>;
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
ccn@4000000 {
|
||||
|
||||
@@ -366,6 +366,7 @@
|
||||
"pll8k", "pll11k", "clkext3";
|
||||
dmas = <&sdma2 24 25 0x80000000>;
|
||||
dma-names = "rx";
|
||||
#sound-dai-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
||||
@@ -340,6 +340,7 @@
|
||||
"pll8k", "pll11k", "clkext3";
|
||||
dmas = <&sdma2 24 25 0x80000000>;
|
||||
dma-names = "rx";
|
||||
#sound-dai-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
||||
@@ -913,6 +913,7 @@
|
||||
phys = <&usb3_phy0>, <&usb3_phy0>;
|
||||
phy-names = "usb2-phy", "usb3-phy";
|
||||
snps,gfladj-refclk-lpm-sel-quirk;
|
||||
snps,parkmode-disable-ss-quirk;
|
||||
};
|
||||
|
||||
};
|
||||
@@ -954,6 +955,7 @@
|
||||
phys = <&usb3_phy1>, <&usb3_phy1>;
|
||||
phy-names = "usb2-phy", "usb3-phy";
|
||||
snps,gfladj-refclk-lpm-sel-quirk;
|
||||
snps,parkmode-disable-ss-quirk;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -1382,7 +1382,7 @@
|
||||
phys = <&usb3_phy0>, <&usb3_phy0>;
|
||||
phy-names = "usb2-phy", "usb3-phy";
|
||||
power-domains = <&pgc_otg1>;
|
||||
usb3-resume-missing-cas;
|
||||
snps,parkmode-disable-ss-quirk;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@@ -1414,7 +1414,7 @@
|
||||
phys = <&usb3_phy1>, <&usb3_phy1>;
|
||||
phy-names = "usb2-phy", "usb3-phy";
|
||||
power-domains = <&pgc_otg2>;
|
||||
usb3-resume-missing-cas;
|
||||
snps,parkmode-disable-ss-quirk;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
||||
@@ -8,5 +8,5 @@
|
||||
};
|
||||
|
||||
&jpegenc {
|
||||
compatible = "nxp,imx8qm-jpgdec", "nxp,imx8qxp-jpgenc";
|
||||
compatible = "nxp,imx8qm-jpgenc", "nxp,imx8qxp-jpgenc";
|
||||
};
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
"mpp59", "mpp60", "mpp61";
|
||||
marvell,function = "sdio";
|
||||
};
|
||||
cp0_spi0_pins: cp0-spi-pins-0 {
|
||||
cp0_spi1_pins: cp0-spi-pins-1 {
|
||||
marvell,pins = "mpp13", "mpp14", "mpp15", "mpp16";
|
||||
marvell,function = "spi1";
|
||||
};
|
||||
@@ -149,7 +149,7 @@
|
||||
|
||||
&cp0_spi1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&cp0_spi0_pins>;
|
||||
pinctrl-0 = <&cp0_spi1_pins>;
|
||||
reg = <0x700680 0x50>, /* control */
|
||||
<0x2000000 0x1000000>; /* CS0 */
|
||||
status = "okay";
|
||||
|
||||
@@ -307,7 +307,7 @@
|
||||
&cp0_spi1 {
|
||||
status = "disabled";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&cp0_spi0_pins>;
|
||||
pinctrl-0 = <&cp0_spi1_pins>;
|
||||
reg = <0x700680 0x50>;
|
||||
|
||||
spi-flash@0 {
|
||||
@@ -371,7 +371,7 @@
|
||||
"mpp59", "mpp60", "mpp61";
|
||||
marvell,function = "sdio";
|
||||
};
|
||||
cp0_spi0_pins: cp0-spi-pins-0 {
|
||||
cp0_spi1_pins: cp0-spi-pins-1 {
|
||||
marvell,pins = "mpp13", "mpp14", "mpp15", "mpp16";
|
||||
marvell,function = "spi1";
|
||||
};
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@40000000 {
|
||||
reg = <0 0x40000000 0 0x40000000>;
|
||||
};
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@40000000 {
|
||||
reg = <0 0x40000000 0 0x20000000>;
|
||||
};
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
id-gpio = <&pio 16 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
usb_p1_vbus: regulator@0 {
|
||||
usb_p1_vbus: regulator-usb-p1 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
@@ -52,7 +52,7 @@
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
usb_p0_vbus: regulator@1 {
|
||||
usb_p0_vbus: regulator-usb-p0 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vbus";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
|
||||
@@ -273,7 +273,7 @@
|
||||
};
|
||||
|
||||
thermal-zones {
|
||||
cpu_thermal: cpu_thermal {
|
||||
cpu_thermal: cpu-thermal {
|
||||
polling-delay-passive = <1000>; /* milliseconds */
|
||||
polling-delay = <1000>; /* milliseconds */
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
scp_mem_reserved: scp_mem_region {
|
||||
scp_mem_reserved: memory@50000000 {
|
||||
compatible = "shared-dma-pool";
|
||||
reg = <0 0x50000000 0 0x2900000>;
|
||||
no-map;
|
||||
@@ -131,8 +131,8 @@
|
||||
};
|
||||
|
||||
&pio {
|
||||
i2c_pins_0: i2c0{
|
||||
pins_i2c{
|
||||
i2c_pins_0: i2c0 {
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO82__FUNC_SDA0>,
|
||||
<PINMUX_GPIO83__FUNC_SCL0>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -140,8 +140,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
i2c_pins_1: i2c1{
|
||||
pins_i2c{
|
||||
i2c_pins_1: i2c1 {
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO81__FUNC_SDA1>,
|
||||
<PINMUX_GPIO84__FUNC_SCL1>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -149,8 +149,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
i2c_pins_2: i2c2{
|
||||
pins_i2c{
|
||||
i2c_pins_2: i2c2 {
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO103__FUNC_SCL2>,
|
||||
<PINMUX_GPIO104__FUNC_SDA2>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -158,8 +158,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
i2c_pins_3: i2c3{
|
||||
pins_i2c{
|
||||
i2c_pins_3: i2c3 {
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO50__FUNC_SCL3>,
|
||||
<PINMUX_GPIO51__FUNC_SDA3>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -167,8 +167,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
i2c_pins_4: i2c4{
|
||||
pins_i2c{
|
||||
i2c_pins_4: i2c4 {
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO105__FUNC_SCL4>,
|
||||
<PINMUX_GPIO106__FUNC_SDA4>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -176,8 +176,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
i2c_pins_5: i2c5{
|
||||
pins_i2c{
|
||||
i2c_pins_5: i2c5 {
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO48__FUNC_SCL5>,
|
||||
<PINMUX_GPIO49__FUNC_SDA5>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -185,8 +185,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
spi_pins_0: spi0{
|
||||
pins_spi{
|
||||
spi_pins_0: spi0 {
|
||||
pins_spi {
|
||||
pinmux = <PINMUX_GPIO85__FUNC_SPI0_MI>,
|
||||
<PINMUX_GPIO86__FUNC_SPI0_CSB>,
|
||||
<PINMUX_GPIO87__FUNC_SPI0_MO>,
|
||||
@@ -300,8 +300,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
spi_pins_1: spi1{
|
||||
pins_spi{
|
||||
spi_pins_1: spi1 {
|
||||
pins_spi {
|
||||
pinmux = <PINMUX_GPIO161__FUNC_SPI1_A_MI>,
|
||||
<PINMUX_GPIO162__FUNC_SPI1_A_CSB>,
|
||||
<PINMUX_GPIO163__FUNC_SPI1_A_MO>,
|
||||
@@ -310,8 +310,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
spi_pins_2: spi2{
|
||||
pins_spi{
|
||||
spi_pins_2: spi2 {
|
||||
pins_spi {
|
||||
pinmux = <PINMUX_GPIO0__FUNC_SPI2_CSB>,
|
||||
<PINMUX_GPIO1__FUNC_SPI2_MO>,
|
||||
<PINMUX_GPIO2__FUNC_SPI2_CLK>,
|
||||
@@ -320,8 +320,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
spi_pins_3: spi3{
|
||||
pins_spi{
|
||||
spi_pins_3: spi3 {
|
||||
pins_spi {
|
||||
pinmux = <PINMUX_GPIO21__FUNC_SPI3_MI>,
|
||||
<PINMUX_GPIO22__FUNC_SPI3_CSB>,
|
||||
<PINMUX_GPIO23__FUNC_SPI3_MO>,
|
||||
@@ -330,8 +330,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
spi_pins_4: spi4{
|
||||
pins_spi{
|
||||
spi_pins_4: spi4 {
|
||||
pins_spi {
|
||||
pinmux = <PINMUX_GPIO17__FUNC_SPI4_MI>,
|
||||
<PINMUX_GPIO18__FUNC_SPI4_CSB>,
|
||||
<PINMUX_GPIO19__FUNC_SPI4_MO>,
|
||||
@@ -340,8 +340,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
spi_pins_5: spi5{
|
||||
pins_spi{
|
||||
spi_pins_5: spi5 {
|
||||
pins_spi {
|
||||
pinmux = <PINMUX_GPIO13__FUNC_SPI5_MI>,
|
||||
<PINMUX_GPIO14__FUNC_SPI5_CSB>,
|
||||
<PINMUX_GPIO15__FUNC_SPI5_MO>,
|
||||
|
||||
@@ -102,6 +102,8 @@
|
||||
|
||||
&dsi0 {
|
||||
status = "okay";
|
||||
/delete-property/#size-cells;
|
||||
/delete-property/#address-cells;
|
||||
/delete-node/panel@0;
|
||||
ports {
|
||||
port {
|
||||
@@ -438,20 +440,20 @@
|
||||
};
|
||||
|
||||
touchscreen_pins: touchscreen-pins {
|
||||
touch_int_odl {
|
||||
touch-int-odl {
|
||||
pinmux = <PINMUX_GPIO155__FUNC_GPIO155>;
|
||||
input-enable;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
touch_rst_l {
|
||||
touch-rst-l {
|
||||
pinmux = <PINMUX_GPIO156__FUNC_GPIO156>;
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
trackpad_pins: trackpad-pins {
|
||||
trackpad_int {
|
||||
trackpad-int {
|
||||
pinmux = <PINMUX_GPIO7__FUNC_GPIO7>;
|
||||
input-enable;
|
||||
bias-disable; /* pulled externally */
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
scp_mem_reserved: scp_mem_region {
|
||||
scp_mem_reserved: memory@50000000 {
|
||||
compatible = "shared-dma-pool";
|
||||
reg = <0 0x50000000 0 0x2900000>;
|
||||
no-map;
|
||||
@@ -407,13 +407,13 @@
|
||||
|
||||
&pio {
|
||||
bt_pins: bt-pins {
|
||||
pins_bt_en {
|
||||
pins-bt-en {
|
||||
pinmux = <PINMUX_GPIO120__FUNC_GPIO120>;
|
||||
output-low;
|
||||
};
|
||||
};
|
||||
|
||||
ec_ap_int_odl: ec_ap_int_odl {
|
||||
ec_ap_int_odl: ec-ap-int-odl {
|
||||
pins1 {
|
||||
pinmux = <PINMUX_GPIO151__FUNC_GPIO151>;
|
||||
input-enable;
|
||||
@@ -421,7 +421,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
h1_int_od_l: h1_int_od_l {
|
||||
h1_int_od_l: h1-int-od-l {
|
||||
pins1 {
|
||||
pinmux = <PINMUX_GPIO153__FUNC_GPIO153>;
|
||||
input-enable;
|
||||
@@ -429,7 +429,7 @@
|
||||
};
|
||||
|
||||
i2c0_pins: i2c0 {
|
||||
pins_bus {
|
||||
pins-bus {
|
||||
pinmux = <PINMUX_GPIO82__FUNC_SDA0>,
|
||||
<PINMUX_GPIO83__FUNC_SCL0>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -438,7 +438,7 @@
|
||||
};
|
||||
|
||||
i2c1_pins: i2c1 {
|
||||
pins_bus {
|
||||
pins-bus {
|
||||
pinmux = <PINMUX_GPIO81__FUNC_SDA1>,
|
||||
<PINMUX_GPIO84__FUNC_SCL1>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -447,7 +447,7 @@
|
||||
};
|
||||
|
||||
i2c2_pins: i2c2 {
|
||||
pins_bus {
|
||||
pins-bus {
|
||||
pinmux = <PINMUX_GPIO103__FUNC_SCL2>,
|
||||
<PINMUX_GPIO104__FUNC_SDA2>;
|
||||
bias-disable;
|
||||
@@ -456,7 +456,7 @@
|
||||
};
|
||||
|
||||
i2c3_pins: i2c3 {
|
||||
pins_bus {
|
||||
pins-bus {
|
||||
pinmux = <PINMUX_GPIO50__FUNC_SCL3>,
|
||||
<PINMUX_GPIO51__FUNC_SDA3>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -465,7 +465,7 @@
|
||||
};
|
||||
|
||||
i2c4_pins: i2c4 {
|
||||
pins_bus {
|
||||
pins-bus {
|
||||
pinmux = <PINMUX_GPIO105__FUNC_SCL4>,
|
||||
<PINMUX_GPIO106__FUNC_SDA4>;
|
||||
bias-disable;
|
||||
@@ -474,7 +474,7 @@
|
||||
};
|
||||
|
||||
i2c5_pins: i2c5 {
|
||||
pins_bus {
|
||||
pins-bus {
|
||||
pinmux = <PINMUX_GPIO48__FUNC_SCL5>,
|
||||
<PINMUX_GPIO49__FUNC_SDA5>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -483,7 +483,7 @@
|
||||
};
|
||||
|
||||
i2c6_pins: i2c6 {
|
||||
pins_bus {
|
||||
pins-bus {
|
||||
pinmux = <PINMUX_GPIO11__FUNC_SCL6>,
|
||||
<PINMUX_GPIO12__FUNC_SDA6>;
|
||||
bias-disable;
|
||||
@@ -491,7 +491,7 @@
|
||||
};
|
||||
|
||||
mmc0_pins_default: mmc0-pins-default {
|
||||
pins_cmd_dat {
|
||||
pins-cmd-dat {
|
||||
pinmux = <PINMUX_GPIO123__FUNC_MSDC0_DAT0>,
|
||||
<PINMUX_GPIO128__FUNC_MSDC0_DAT1>,
|
||||
<PINMUX_GPIO125__FUNC_MSDC0_DAT2>,
|
||||
@@ -506,13 +506,13 @@
|
||||
mediatek,pull-up-adv = <01>;
|
||||
};
|
||||
|
||||
pins_clk {
|
||||
pins-clk {
|
||||
pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
|
||||
drive-strength = <MTK_DRIVE_14mA>;
|
||||
mediatek,pull-down-adv = <10>;
|
||||
};
|
||||
|
||||
pins_rst {
|
||||
pins-rst {
|
||||
pinmux = <PINMUX_GPIO133__FUNC_MSDC0_RSTB>;
|
||||
drive-strength = <MTK_DRIVE_14mA>;
|
||||
mediatek,pull-down-adv = <01>;
|
||||
@@ -520,7 +520,7 @@
|
||||
};
|
||||
|
||||
mmc0_pins_uhs: mmc0-pins-uhs {
|
||||
pins_cmd_dat {
|
||||
pins-cmd-dat {
|
||||
pinmux = <PINMUX_GPIO123__FUNC_MSDC0_DAT0>,
|
||||
<PINMUX_GPIO128__FUNC_MSDC0_DAT1>,
|
||||
<PINMUX_GPIO125__FUNC_MSDC0_DAT2>,
|
||||
@@ -535,19 +535,19 @@
|
||||
mediatek,pull-up-adv = <01>;
|
||||
};
|
||||
|
||||
pins_clk {
|
||||
pins-clk {
|
||||
pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
|
||||
drive-strength = <MTK_DRIVE_14mA>;
|
||||
mediatek,pull-down-adv = <10>;
|
||||
};
|
||||
|
||||
pins_ds {
|
||||
pins-ds {
|
||||
pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
|
||||
drive-strength = <MTK_DRIVE_14mA>;
|
||||
mediatek,pull-down-adv = <10>;
|
||||
};
|
||||
|
||||
pins_rst {
|
||||
pins-rst {
|
||||
pinmux = <PINMUX_GPIO133__FUNC_MSDC0_RSTB>;
|
||||
drive-strength = <MTK_DRIVE_14mA>;
|
||||
mediatek,pull-up-adv = <01>;
|
||||
@@ -555,7 +555,7 @@
|
||||
};
|
||||
|
||||
mmc1_pins_default: mmc1-pins-default {
|
||||
pins_cmd_dat {
|
||||
pins-cmd-dat {
|
||||
pinmux = <PINMUX_GPIO31__FUNC_MSDC1_CMD>,
|
||||
<PINMUX_GPIO32__FUNC_MSDC1_DAT0>,
|
||||
<PINMUX_GPIO34__FUNC_MSDC1_DAT1>,
|
||||
@@ -565,7 +565,7 @@
|
||||
mediatek,pull-up-adv = <10>;
|
||||
};
|
||||
|
||||
pins_clk {
|
||||
pins-clk {
|
||||
pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
|
||||
input-enable;
|
||||
mediatek,pull-down-adv = <10>;
|
||||
@@ -573,7 +573,7 @@
|
||||
};
|
||||
|
||||
mmc1_pins_uhs: mmc1-pins-uhs {
|
||||
pins_cmd_dat {
|
||||
pins-cmd-dat {
|
||||
pinmux = <PINMUX_GPIO31__FUNC_MSDC1_CMD>,
|
||||
<PINMUX_GPIO32__FUNC_MSDC1_DAT0>,
|
||||
<PINMUX_GPIO34__FUNC_MSDC1_DAT1>,
|
||||
@@ -584,7 +584,7 @@
|
||||
mediatek,pull-up-adv = <10>;
|
||||
};
|
||||
|
||||
pins_clk {
|
||||
pins-clk {
|
||||
pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
|
||||
drive-strength = <MTK_DRIVE_8mA>;
|
||||
mediatek,pull-down-adv = <10>;
|
||||
@@ -592,15 +592,15 @@
|
||||
};
|
||||
};
|
||||
|
||||
panel_pins_default: panel_pins_default {
|
||||
panel_reset {
|
||||
panel_pins_default: panel-pins-default {
|
||||
panel-reset {
|
||||
pinmux = <PINMUX_GPIO45__FUNC_GPIO45>;
|
||||
output-low;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
pwm0_pin_default: pwm0_pin_default {
|
||||
pwm0_pin_default: pwm0-pin-default {
|
||||
pins1 {
|
||||
pinmux = <PINMUX_GPIO176__FUNC_GPIO176>;
|
||||
output-high;
|
||||
@@ -612,14 +612,14 @@
|
||||
};
|
||||
|
||||
scp_pins: scp {
|
||||
pins_scp_uart {
|
||||
pins-scp-uart {
|
||||
pinmux = <PINMUX_GPIO110__FUNC_TP_URXD1_AO>,
|
||||
<PINMUX_GPIO112__FUNC_TP_UTXD1_AO>;
|
||||
};
|
||||
};
|
||||
|
||||
spi0_pins: spi0 {
|
||||
pins_spi{
|
||||
pins-spi {
|
||||
pinmux = <PINMUX_GPIO85__FUNC_SPI0_MI>,
|
||||
<PINMUX_GPIO86__FUNC_GPIO86>,
|
||||
<PINMUX_GPIO87__FUNC_SPI0_MO>,
|
||||
@@ -629,7 +629,7 @@
|
||||
};
|
||||
|
||||
spi1_pins: spi1 {
|
||||
pins_spi{
|
||||
pins-spi {
|
||||
pinmux = <PINMUX_GPIO161__FUNC_SPI1_A_MI>,
|
||||
<PINMUX_GPIO162__FUNC_SPI1_A_CSB>,
|
||||
<PINMUX_GPIO163__FUNC_SPI1_A_MO>,
|
||||
@@ -639,20 +639,20 @@
|
||||
};
|
||||
|
||||
spi2_pins: spi2 {
|
||||
pins_spi{
|
||||
pins-spi {
|
||||
pinmux = <PINMUX_GPIO0__FUNC_SPI2_CSB>,
|
||||
<PINMUX_GPIO1__FUNC_SPI2_MO>,
|
||||
<PINMUX_GPIO2__FUNC_SPI2_CLK>;
|
||||
bias-disable;
|
||||
};
|
||||
pins_spi_mi {
|
||||
pins-spi-mi {
|
||||
pinmux = <PINMUX_GPIO94__FUNC_SPI2_MI>;
|
||||
mediatek,pull-down-adv = <00>;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_pins: spi3 {
|
||||
pins_spi{
|
||||
pins-spi {
|
||||
pinmux = <PINMUX_GPIO21__FUNC_SPI3_MI>,
|
||||
<PINMUX_GPIO22__FUNC_SPI3_CSB>,
|
||||
<PINMUX_GPIO23__FUNC_SPI3_MO>,
|
||||
@@ -662,7 +662,7 @@
|
||||
};
|
||||
|
||||
spi4_pins: spi4 {
|
||||
pins_spi{
|
||||
pins-spi {
|
||||
pinmux = <PINMUX_GPIO17__FUNC_SPI4_MI>,
|
||||
<PINMUX_GPIO18__FUNC_SPI4_CSB>,
|
||||
<PINMUX_GPIO19__FUNC_SPI4_MO>,
|
||||
@@ -672,7 +672,7 @@
|
||||
};
|
||||
|
||||
spi5_pins: spi5 {
|
||||
pins_spi{
|
||||
pins-spi {
|
||||
pinmux = <PINMUX_GPIO13__FUNC_SPI5_MI>,
|
||||
<PINMUX_GPIO14__FUNC_SPI5_CSB>,
|
||||
<PINMUX_GPIO15__FUNC_SPI5_MO>,
|
||||
@@ -682,63 +682,63 @@
|
||||
};
|
||||
|
||||
uart0_pins_default: uart0-pins-default {
|
||||
pins_rx {
|
||||
pins-rx {
|
||||
pinmux = <PINMUX_GPIO95__FUNC_URXD0>;
|
||||
input-enable;
|
||||
bias-pull-up;
|
||||
};
|
||||
pins_tx {
|
||||
pins-tx {
|
||||
pinmux = <PINMUX_GPIO96__FUNC_UTXD0>;
|
||||
};
|
||||
};
|
||||
|
||||
uart1_pins_default: uart1-pins-default {
|
||||
pins_rx {
|
||||
pins-rx {
|
||||
pinmux = <PINMUX_GPIO121__FUNC_URXD1>;
|
||||
input-enable;
|
||||
bias-pull-up;
|
||||
};
|
||||
pins_tx {
|
||||
pins-tx {
|
||||
pinmux = <PINMUX_GPIO115__FUNC_UTXD1>;
|
||||
};
|
||||
pins_rts {
|
||||
pins-rts {
|
||||
pinmux = <PINMUX_GPIO47__FUNC_URTS1>;
|
||||
output-enable;
|
||||
};
|
||||
pins_cts {
|
||||
pins-cts {
|
||||
pinmux = <PINMUX_GPIO46__FUNC_UCTS1>;
|
||||
input-enable;
|
||||
};
|
||||
};
|
||||
|
||||
uart1_pins_sleep: uart1-pins-sleep {
|
||||
pins_rx {
|
||||
pins-rx {
|
||||
pinmux = <PINMUX_GPIO121__FUNC_GPIO121>;
|
||||
input-enable;
|
||||
bias-pull-up;
|
||||
};
|
||||
pins_tx {
|
||||
pins-tx {
|
||||
pinmux = <PINMUX_GPIO115__FUNC_UTXD1>;
|
||||
};
|
||||
pins_rts {
|
||||
pins-rts {
|
||||
pinmux = <PINMUX_GPIO47__FUNC_URTS1>;
|
||||
output-enable;
|
||||
};
|
||||
pins_cts {
|
||||
pins-cts {
|
||||
pinmux = <PINMUX_GPIO46__FUNC_UCTS1>;
|
||||
input-enable;
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pins_pwrseq: wifi-pins-pwrseq {
|
||||
pins_wifi_enable {
|
||||
pins-wifi-enable {
|
||||
pinmux = <PINMUX_GPIO119__FUNC_GPIO119>;
|
||||
output-low;
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pins_wakeup: wifi-pins-wakeup {
|
||||
pins_wifi_wakeup {
|
||||
pins-wifi-wakeup {
|
||||
pinmux = <PINMUX_GPIO113__FUNC_GPIO113>;
|
||||
input-enable;
|
||||
};
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
|
||||
&pio {
|
||||
i2c_pins_0: i2c0 {
|
||||
pins_i2c{
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO82__FUNC_SDA0>,
|
||||
<PINMUX_GPIO83__FUNC_SCL0>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -174,7 +174,7 @@
|
||||
};
|
||||
|
||||
i2c_pins_1: i2c1 {
|
||||
pins_i2c{
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO81__FUNC_SDA1>,
|
||||
<PINMUX_GPIO84__FUNC_SCL1>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -183,7 +183,7 @@
|
||||
};
|
||||
|
||||
i2c_pins_2: i2c2 {
|
||||
pins_i2c{
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO103__FUNC_SCL2>,
|
||||
<PINMUX_GPIO104__FUNC_SDA2>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -192,7 +192,7 @@
|
||||
};
|
||||
|
||||
i2c_pins_3: i2c3 {
|
||||
pins_i2c{
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO50__FUNC_SCL3>,
|
||||
<PINMUX_GPIO51__FUNC_SDA3>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -201,7 +201,7 @@
|
||||
};
|
||||
|
||||
i2c_pins_4: i2c4 {
|
||||
pins_i2c{
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO105__FUNC_SCL4>,
|
||||
<PINMUX_GPIO106__FUNC_SDA4>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
@@ -210,7 +210,7 @@
|
||||
};
|
||||
|
||||
i2c_pins_5: i2c5 {
|
||||
pins_i2c{
|
||||
pins_i2c {
|
||||
pinmux = <PINMUX_GPIO48__FUNC_SCL5>,
|
||||
<PINMUX_GPIO49__FUNC_SDA5>;
|
||||
mediatek,pull-up-adv = <3>;
|
||||
|
||||
@@ -766,127 +766,6 @@
|
||||
nvmem-cell-names = "calibration-data";
|
||||
};
|
||||
|
||||
thermal_zones: thermal-zones {
|
||||
cpu_thermal: cpu_thermal {
|
||||
polling-delay-passive = <100>;
|
||||
polling-delay = <500>;
|
||||
thermal-sensors = <&thermal 0>;
|
||||
sustainable-power = <5000>;
|
||||
|
||||
trips {
|
||||
threshold: trip-point0 {
|
||||
temperature = <68000>;
|
||||
hysteresis = <2000>;
|
||||
type = "passive";
|
||||
};
|
||||
|
||||
target: trip-point1 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <2000>;
|
||||
type = "passive";
|
||||
};
|
||||
|
||||
cpu_crit: cpu-crit {
|
||||
temperature = <115000>;
|
||||
hysteresis = <2000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
map0 {
|
||||
trip = <&target>;
|
||||
cooling-device = <&cpu0
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu1
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu2
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu3
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>;
|
||||
contribution = <3072>;
|
||||
};
|
||||
map1 {
|
||||
trip = <&target>;
|
||||
cooling-device = <&cpu4
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu5
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu6
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu7
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* The tzts1 ~ tzts6 don't need to polling */
|
||||
/* The tzts1 ~ tzts6 don't need to thermal throttle */
|
||||
|
||||
tzts1: tzts1 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 1>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts2: tzts2 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 2>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts3: tzts3 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 3>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts4: tzts4 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 4>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts5: tzts5 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 5>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tztsABB: tztsABB {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 6>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
};
|
||||
|
||||
pwm0: pwm@1100e000 {
|
||||
compatible = "mediatek,mt8183-disp-pwm";
|
||||
reg = <0 0x1100e000 0 0x1000>;
|
||||
@@ -1495,4 +1374,125 @@
|
||||
power-domains = <&spm MT8183_POWER_DOMAIN_CAM>;
|
||||
};
|
||||
};
|
||||
|
||||
thermal_zones: thermal-zones {
|
||||
cpu_thermal: cpu-thermal {
|
||||
polling-delay-passive = <100>;
|
||||
polling-delay = <500>;
|
||||
thermal-sensors = <&thermal 0>;
|
||||
sustainable-power = <5000>;
|
||||
|
||||
trips {
|
||||
threshold: trip-point0 {
|
||||
temperature = <68000>;
|
||||
hysteresis = <2000>;
|
||||
type = "passive";
|
||||
};
|
||||
|
||||
target: trip-point1 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <2000>;
|
||||
type = "passive";
|
||||
};
|
||||
|
||||
cpu_crit: cpu-crit {
|
||||
temperature = <115000>;
|
||||
hysteresis = <2000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
map0 {
|
||||
trip = <&target>;
|
||||
cooling-device = <&cpu0
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu1
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu2
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu3
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>;
|
||||
contribution = <3072>;
|
||||
};
|
||||
map1 {
|
||||
trip = <&target>;
|
||||
cooling-device = <&cpu4
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu5
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu6
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>,
|
||||
<&cpu7
|
||||
THERMAL_NO_LIMIT
|
||||
THERMAL_NO_LIMIT>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* The tzts1 ~ tzts6 don't need to polling */
|
||||
/* The tzts1 ~ tzts6 don't need to thermal throttle */
|
||||
|
||||
tzts1: tzts1 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 1>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts2: tzts2 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 2>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts3: tzts3 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 3>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts4: tzts4 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 4>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tzts5: tzts5 {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 5>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
|
||||
tztsABB: tztsABB {
|
||||
polling-delay-passive = <0>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&thermal 6>;
|
||||
sustainable-power = <5000>;
|
||||
trips {};
|
||||
cooling-maps {};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -190,6 +190,9 @@
|
||||
pd-gpios = <&msmgpio 32 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
avdd-supply = <&pm8916_l6>;
|
||||
a2vdd-supply = <&pm8916_l6>;
|
||||
dvdd-supply = <&pm8916_l6>;
|
||||
pvdd-supply = <&pm8916_l6>;
|
||||
v1p2-supply = <&pm8916_l6>;
|
||||
v3p3-supply = <&pm8916_l17>;
|
||||
|
||||
|
||||
@@ -129,12 +129,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
tcsr_mutex: hwlock {
|
||||
compatible = "qcom,tcsr-mutex";
|
||||
syscon = <&tcsr_mutex_regs 0 0x80>;
|
||||
#hwlock-cells = <1>;
|
||||
};
|
||||
|
||||
pmuv8: pmu {
|
||||
compatible = "arm,cortex-a53-pmu";
|
||||
interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) |
|
||||
@@ -175,7 +169,7 @@
|
||||
smem {
|
||||
compatible = "qcom,smem";
|
||||
memory-region = <&smem_region>;
|
||||
hwlocks = <&tcsr_mutex 0>;
|
||||
hwlocks = <&tcsr_mutex 3>;
|
||||
};
|
||||
|
||||
soc: soc {
|
||||
@@ -253,9 +247,10 @@
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
tcsr_mutex_regs: syscon@1905000 {
|
||||
compatible = "syscon";
|
||||
reg = <0x0 0x01905000 0x0 0x8000>;
|
||||
tcsr_mutex: hwlock@1905000 {
|
||||
compatible = "qcom,ipq6018-tcsr-mutex", "qcom,tcsr-mutex";
|
||||
reg = <0x0 0x01905000 0x0 0x20000>;
|
||||
#hwlock-cells = <1>;
|
||||
};
|
||||
|
||||
tcsr: syscon@1937000 {
|
||||
|
||||
@@ -1233,7 +1233,7 @@
|
||||
#size-cells = <1>;
|
||||
#iommu-cells = <1>;
|
||||
compatible = "qcom,msm8916-iommu", "qcom,msm-iommu-v1";
|
||||
ranges = <0 0x01e20000 0x40000>;
|
||||
ranges = <0 0x01e20000 0x20000>;
|
||||
reg = <0x01ef0000 0x3000>;
|
||||
clocks = <&gcc GCC_SMMU_CFG_CLK>,
|
||||
<&gcc GCC_APSS_TCU_CLK>;
|
||||
|
||||
@@ -99,11 +99,6 @@
|
||||
qcom,client-id = <1>;
|
||||
};
|
||||
|
||||
audio_mem: audio@cb400000 {
|
||||
reg = <0 0xcb000000 0 0x400000>;
|
||||
no-mem;
|
||||
};
|
||||
|
||||
qseecom_mem: qseecom@cb400000 {
|
||||
reg = <0 0xcb400000 0 0x1c00000>;
|
||||
no-mem;
|
||||
|
||||
@@ -1851,6 +1851,14 @@
|
||||
reg = <0 0x18591000 0 0x1000>,
|
||||
<0 0x18592000 0 0x1000>,
|
||||
<0 0x18593000 0 0x1000>;
|
||||
|
||||
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "dcvsh-irq-0",
|
||||
"dcvsh-irq-1",
|
||||
"dcvsh-irq-2";
|
||||
|
||||
clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GCC_GPLL0>;
|
||||
clock-names = "xo", "alternate";
|
||||
#freq-domain-cells = <1>;
|
||||
|
||||
@@ -572,6 +572,8 @@
|
||||
vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
|
||||
vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
|
||||
vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
|
||||
|
||||
qcom,snoc-host-cap-8bit-quirk;
|
||||
};
|
||||
|
||||
/* PINCTRL - additions to nodes defined in sdm845.dtsi */
|
||||
|
||||
@@ -993,7 +993,9 @@
|
||||
power-domain@RK3399_PD_VDU {
|
||||
reg = <RK3399_PD_VDU>;
|
||||
clocks = <&cru ACLK_VDU>,
|
||||
<&cru HCLK_VDU>;
|
||||
<&cru HCLK_VDU>,
|
||||
<&cru SCLK_VDU_CA>,
|
||||
<&cru SCLK_VDU_CORE>;
|
||||
pm_qos = <&qos_video_m1_r>,
|
||||
<&qos_video_m1_w>;
|
||||
#power-domain-cells = <0>;
|
||||
@@ -1260,7 +1262,7 @@
|
||||
|
||||
vdec: video-codec@ff660000 {
|
||||
compatible = "rockchip,rk3399-vdec";
|
||||
reg = <0x0 0xff660000 0x0 0x400>;
|
||||
reg = <0x0 0xff660000 0x0 0x480>;
|
||||
interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&cru ACLK_VDU>, <&cru HCLK_VDU>,
|
||||
<&cru SCLK_VDU_CA>, <&cru SCLK_VDU_CORE>;
|
||||
|
||||
@@ -783,6 +783,12 @@ static inline pte_t pte_modify(pte_t pte, pgprot_t newprot)
|
||||
if (pte_hw_dirty(pte))
|
||||
pte = pte_mkdirty(pte);
|
||||
pte_val(pte) = (pte_val(pte) & ~mask) | (pgprot_val(newprot) & mask);
|
||||
/*
|
||||
* If we end up clearing hw dirtiness for a sw-dirty PTE, set hardware
|
||||
* dirtiness again.
|
||||
*/
|
||||
if (pte_sw_dirty(pte))
|
||||
pte = pte_mkdirty(pte);
|
||||
return pte;
|
||||
}
|
||||
|
||||
|
||||
@@ -153,7 +153,7 @@ find_memory (void)
|
||||
efi_memmap_walk(find_max_min_low_pfn, NULL);
|
||||
max_pfn = max_low_pfn;
|
||||
|
||||
memblock_add_node(0, PFN_PHYS(max_low_pfn), 0);
|
||||
memblock_add_node(0, PFN_PHYS(max_low_pfn), 0, MEMBLOCK_NONE);
|
||||
|
||||
find_initrd();
|
||||
|
||||
|
||||
@@ -378,7 +378,7 @@ int __init register_active_ranges(u64 start, u64 len, int nid)
|
||||
#endif
|
||||
|
||||
if (start < end)
|
||||
memblock_add_node(__pa(start), end - start, nid);
|
||||
memblock_add_node(__pa(start), end - start, nid, MEMBLOCK_NONE);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -174,7 +174,8 @@ void __init cf_bootmem_alloc(void)
|
||||
m68k_memory[0].addr = _rambase;
|
||||
m68k_memory[0].size = _ramend - _rambase;
|
||||
|
||||
memblock_add_node(m68k_memory[0].addr, m68k_memory[0].size, 0);
|
||||
memblock_add_node(m68k_memory[0].addr, m68k_memory[0].size, 0,
|
||||
MEMBLOCK_NONE);
|
||||
|
||||
/* compute total pages in system */
|
||||
num_pages = PFN_DOWN(_ramend - _rambase);
|
||||
|
||||
@@ -410,7 +410,8 @@ void __init paging_init(void)
|
||||
|
||||
min_addr = m68k_memory[0].addr;
|
||||
max_addr = min_addr + m68k_memory[0].size;
|
||||
memblock_add_node(m68k_memory[0].addr, m68k_memory[0].size, 0);
|
||||
memblock_add_node(m68k_memory[0].addr, m68k_memory[0].size, 0,
|
||||
MEMBLOCK_NONE);
|
||||
for (i = 1; i < m68k_num_memory;) {
|
||||
if (m68k_memory[i].addr < min_addr) {
|
||||
printk("Ignoring memory chunk at 0x%lx:0x%lx before the first chunk\n",
|
||||
@@ -421,7 +422,8 @@ void __init paging_init(void)
|
||||
(m68k_num_memory - i) * sizeof(struct m68k_mem_info));
|
||||
continue;
|
||||
}
|
||||
memblock_add_node(m68k_memory[i].addr, m68k_memory[i].size, i);
|
||||
memblock_add_node(m68k_memory[i].addr, m68k_memory[i].size, i,
|
||||
MEMBLOCK_NONE);
|
||||
addr = m68k_memory[i].addr + m68k_memory[i].size;
|
||||
if (addr > max_addr)
|
||||
max_addr = addr;
|
||||
|
||||
@@ -480,6 +480,7 @@ config MACH_LOONGSON2EF
|
||||
|
||||
config MACH_LOONGSON64
|
||||
bool "Loongson 64-bit family of machines"
|
||||
select ARCH_DMA_DEFAULT_COHERENT
|
||||
select ARCH_SPARSEMEM_ENABLE
|
||||
select ARCH_MIGHT_HAVE_PC_PARPORT
|
||||
select ARCH_MIGHT_HAVE_PC_SERIO
|
||||
@@ -1379,6 +1380,7 @@ config CPU_LOONGSON64
|
||||
select CPU_SUPPORTS_MSA
|
||||
select CPU_DIEI_BROKEN if !LOONGSON3_ENHANCEMENT
|
||||
select CPU_MIPSR2_IRQ_VI
|
||||
select DMA_NONCOHERENT
|
||||
select WEAK_ORDERING
|
||||
select WEAK_REORDERING_BEYOND_LLSC
|
||||
select MIPS_ASID_BITS_VARIABLE
|
||||
|
||||
@@ -14,7 +14,11 @@
|
||||
#define ADAPTER_ROM 8
|
||||
#define ACPI_TABLE 9
|
||||
#define SMBIOS_TABLE 10
|
||||
#define MAX_MEMORY_TYPE 11
|
||||
#define UMA_VIDEO_RAM 11
|
||||
#define VUMA_VIDEO_RAM 12
|
||||
#define MAX_MEMORY_TYPE 13
|
||||
|
||||
#define MEM_SIZE_IS_IN_BYTES (1 << 31)
|
||||
|
||||
#define LOONGSON3_BOOT_MEM_MAP_MAX 128
|
||||
struct efi_memory_map_loongson {
|
||||
@@ -117,7 +121,8 @@ struct irq_source_routing_table {
|
||||
u64 pci_io_start_addr;
|
||||
u64 pci_io_end_addr;
|
||||
u64 pci_config_addr;
|
||||
u32 dma_mask_bits;
|
||||
u16 dma_mask_bits;
|
||||
u16 dma_noncoherent;
|
||||
} __packed;
|
||||
|
||||
struct interface_info {
|
||||
|
||||
@@ -593,7 +593,7 @@ static int kvm_mips_map_page(struct kvm_vcpu *vcpu, unsigned long gpa,
|
||||
gfn_t gfn = gpa >> PAGE_SHIFT;
|
||||
int srcu_idx, err;
|
||||
kvm_pfn_t pfn;
|
||||
pte_t *ptep, entry, old_pte;
|
||||
pte_t *ptep, entry;
|
||||
bool writeable;
|
||||
unsigned long prot_bits;
|
||||
unsigned long mmu_seq;
|
||||
@@ -665,7 +665,6 @@ retry:
|
||||
entry = pfn_pte(pfn, __pgprot(prot_bits));
|
||||
|
||||
/* Write the PTE */
|
||||
old_pte = *ptep;
|
||||
set_pte(ptep, entry);
|
||||
|
||||
err = 0;
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
* Copyright (C) 2009 Lemote Inc.
|
||||
* Author: Wu Zhangjin, wuzhangjin@gmail.com
|
||||
*/
|
||||
|
||||
#include <linux/dma-map-ops.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/pci_ids.h>
|
||||
#include <asm/bootinfo.h>
|
||||
@@ -147,8 +149,14 @@ void __init prom_lefi_init_env(void)
|
||||
|
||||
loongson_sysconf.dma_mask_bits = eirq_source->dma_mask_bits;
|
||||
if (loongson_sysconf.dma_mask_bits < 32 ||
|
||||
loongson_sysconf.dma_mask_bits > 64)
|
||||
loongson_sysconf.dma_mask_bits > 64) {
|
||||
loongson_sysconf.dma_mask_bits = 32;
|
||||
dma_default_coherent = true;
|
||||
} else {
|
||||
dma_default_coherent = !eirq_source->dma_noncoherent;
|
||||
}
|
||||
|
||||
pr_info("Firmware: Coherent DMA: %s\n", dma_default_coherent ? "on" : "off");
|
||||
|
||||
loongson_sysconf.restart_addr = boot_p->reset_system.ResetWarm;
|
||||
loongson_sysconf.poweroff_addr = boot_p->reset_system.Shutdown;
|
||||
|
||||
@@ -49,8 +49,7 @@ void virtual_early_config(void)
|
||||
void __init szmem(unsigned int node)
|
||||
{
|
||||
u32 i, mem_type;
|
||||
static unsigned long num_physpages;
|
||||
u64 node_id, node_psize, start_pfn, end_pfn, mem_start, mem_size;
|
||||
phys_addr_t node_id, mem_start, mem_size;
|
||||
|
||||
/* Otherwise come from DTB */
|
||||
if (loongson_sysconf.fw_interface != LOONGSON_LEFI)
|
||||
@@ -64,28 +63,46 @@ void __init szmem(unsigned int node)
|
||||
|
||||
mem_type = loongson_memmap->map[i].mem_type;
|
||||
mem_size = loongson_memmap->map[i].mem_size;
|
||||
mem_start = loongson_memmap->map[i].mem_start;
|
||||
|
||||
/* Memory size comes in MB if MEM_SIZE_IS_IN_BYTES not set */
|
||||
if (mem_size & MEM_SIZE_IS_IN_BYTES)
|
||||
mem_size &= ~MEM_SIZE_IS_IN_BYTES;
|
||||
else
|
||||
mem_size = mem_size << 20;
|
||||
|
||||
mem_start = (node_id << 44) | loongson_memmap->map[i].mem_start;
|
||||
|
||||
switch (mem_type) {
|
||||
case SYSTEM_RAM_LOW:
|
||||
case SYSTEM_RAM_HIGH:
|
||||
start_pfn = ((node_id << 44) + mem_start) >> PAGE_SHIFT;
|
||||
node_psize = (mem_size << 20) >> PAGE_SHIFT;
|
||||
end_pfn = start_pfn + node_psize;
|
||||
num_physpages += node_psize;
|
||||
pr_info("Node%d: mem_type:%d, mem_start:0x%llx, mem_size:0x%llx MB\n",
|
||||
(u32)node_id, mem_type, mem_start, mem_size);
|
||||
pr_info(" start_pfn:0x%llx, end_pfn:0x%llx, num_physpages:0x%lx\n",
|
||||
start_pfn, end_pfn, num_physpages);
|
||||
memblock_add_node(PFN_PHYS(start_pfn), PFN_PHYS(node_psize), node);
|
||||
case UMA_VIDEO_RAM:
|
||||
pr_info("Node %d, mem_type:%d\t[%pa], %pa bytes usable\n",
|
||||
(u32)node_id, mem_type, &mem_start, &mem_size);
|
||||
memblock_add_node(mem_start, mem_size, node,
|
||||
MEMBLOCK_NONE);
|
||||
break;
|
||||
case SYSTEM_RAM_RESERVED:
|
||||
pr_info("Node%d: mem_type:%d, mem_start:0x%llx, mem_size:0x%llx MB\n",
|
||||
(u32)node_id, mem_type, mem_start, mem_size);
|
||||
memblock_reserve(((node_id << 44) + mem_start), mem_size << 20);
|
||||
case VIDEO_ROM:
|
||||
case ADAPTER_ROM:
|
||||
case ACPI_TABLE:
|
||||
case SMBIOS_TABLE:
|
||||
pr_info("Node %d, mem_type:%d\t[%pa], %pa bytes reserved\n",
|
||||
(u32)node_id, mem_type, &mem_start, &mem_size);
|
||||
memblock_reserve(mem_start, mem_size);
|
||||
break;
|
||||
/* We should not reserve VUMA_VIDEO_RAM as it overlaps with MMIO */
|
||||
case VUMA_VIDEO_RAM:
|
||||
default:
|
||||
pr_info("Node %d, mem_type:%d\t[%pa], %pa bytes unhandled\n",
|
||||
(u32)node_id, mem_type, &mem_start, &mem_size);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* Reserve vgabios if it comes from firmware */
|
||||
if (loongson_sysconf.vgabios_addr)
|
||||
memblock_reserve(virt_to_phys((void *)loongson_sysconf.vgabios_addr),
|
||||
SZ_256K);
|
||||
}
|
||||
|
||||
#ifndef CONFIG_NUMA
|
||||
|
||||
@@ -341,7 +341,8 @@ static void __init szmem(void)
|
||||
continue;
|
||||
}
|
||||
memblock_add_node(PFN_PHYS(slot_getbasepfn(node, slot)),
|
||||
PFN_PHYS(slot_psize), node);
|
||||
PFN_PHYS(slot_psize), node,
|
||||
MEMBLOCK_NONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,7 +75,6 @@
|
||||
|
||||
/* We now return you to your regularly scheduled HPUX. */
|
||||
|
||||
#define ENOSYM 215 /* symbol does not exist in executable */
|
||||
#define ENOTSOCK 216 /* Socket operation on non-socket */
|
||||
#define EDESTADDRREQ 217 /* Destination address required */
|
||||
#define EMSGSIZE 218 /* Message too long */
|
||||
@@ -101,7 +100,6 @@
|
||||
#define ETIMEDOUT 238 /* Connection timed out */
|
||||
#define ECONNREFUSED 239 /* Connection refused */
|
||||
#define EREFUSED ECONNREFUSED /* for HP's NFS apparently */
|
||||
#define EREMOTERELEASE 240 /* Remote peer released connection */
|
||||
#define EHOSTDOWN 241 /* Host is down */
|
||||
#define EHOSTUNREACH 242 /* No route to host */
|
||||
|
||||
|
||||
@@ -465,6 +465,7 @@ struct pdc_model { /* for PDC_MODEL */
|
||||
unsigned long arch_rev;
|
||||
unsigned long pot_key;
|
||||
unsigned long curr_key;
|
||||
unsigned long width; /* default of PSW_W bit (1=enabled) */
|
||||
};
|
||||
|
||||
struct pdc_cache_cf { /* for PDC_CACHE (I/D-caches) */
|
||||
|
||||
@@ -497,13 +497,13 @@
|
||||
* to a CPU TLB 4k PFN (4k => 12 bits to shift) */
|
||||
#define PAGE_ADD_SHIFT (PAGE_SHIFT-12)
|
||||
#define PAGE_ADD_HUGE_SHIFT (REAL_HPAGE_SHIFT-12)
|
||||
#define PFN_START_BIT (63-ASM_PFN_PTE_SHIFT+(63-58)-PAGE_ADD_SHIFT)
|
||||
|
||||
/* Drop prot bits and convert to page addr for iitlbt and idtlbt */
|
||||
.macro convert_for_tlb_insert20 pte,tmp
|
||||
#ifdef CONFIG_HUGETLB_PAGE
|
||||
copy \pte,\tmp
|
||||
extrd,u \tmp,(63-ASM_PFN_PTE_SHIFT)+(63-58)+PAGE_ADD_SHIFT,\
|
||||
64-PAGE_SHIFT-PAGE_ADD_SHIFT,\pte
|
||||
extrd,u \tmp,PFN_START_BIT,PFN_START_BIT+1,\pte
|
||||
|
||||
depdi _PAGE_SIZE_ENCODING_DEFAULT,63,\
|
||||
(63-58)+PAGE_ADD_SHIFT,\pte
|
||||
@@ -511,8 +511,7 @@
|
||||
depdi _HUGE_PAGE_SIZE_ENCODING_DEFAULT,63,\
|
||||
(63-58)+PAGE_ADD_HUGE_SHIFT,\pte
|
||||
#else /* Huge pages disabled */
|
||||
extrd,u \pte,(63-ASM_PFN_PTE_SHIFT)+(63-58)+PAGE_ADD_SHIFT,\
|
||||
64-PAGE_SHIFT-PAGE_ADD_SHIFT,\pte
|
||||
extrd,u \pte,PFN_START_BIT,PFN_START_BIT+1,\pte
|
||||
depdi _PAGE_SIZE_ENCODING_DEFAULT,63,\
|
||||
(63-58)+PAGE_ADD_SHIFT,\pte
|
||||
#endif
|
||||
|
||||
@@ -69,9 +69,8 @@ $bss_loop:
|
||||
stw,ma %arg2,4(%r1)
|
||||
stw,ma %arg3,4(%r1)
|
||||
|
||||
#if !defined(CONFIG_64BIT) && defined(CONFIG_PA20)
|
||||
/* This 32-bit kernel was compiled for PA2.0 CPUs. Check current CPU
|
||||
* and halt kernel if we detect a PA1.x CPU. */
|
||||
#if defined(CONFIG_PA20)
|
||||
/* check for 64-bit capable CPU as required by current kernel */
|
||||
ldi 32,%r10
|
||||
mtctl %r10,%cr11
|
||||
.level 2.0
|
||||
|
||||
@@ -69,9 +69,6 @@
|
||||
|
||||
#define _PTE_NONE_MASK 0
|
||||
|
||||
/* Until my rework is finished, 40x still needs atomic PTE updates */
|
||||
#define PTE_ATOMIC_UPDATES 1
|
||||
|
||||
#define _PAGE_BASE_NC (_PAGE_PRESENT | _PAGE_ACCESSED)
|
||||
#define _PAGE_BASE (_PAGE_BASE_NC)
|
||||
|
||||
|
||||
@@ -23,6 +23,15 @@
|
||||
#include <asm/feature-fixups.h>
|
||||
|
||||
#ifdef CONFIG_VSX
|
||||
#define __REST_1FPVSR(n,c,base) \
|
||||
BEGIN_FTR_SECTION \
|
||||
b 2f; \
|
||||
END_FTR_SECTION_IFSET(CPU_FTR_VSX); \
|
||||
REST_FPR(n,base); \
|
||||
b 3f; \
|
||||
2: REST_VSR(n,c,base); \
|
||||
3:
|
||||
|
||||
#define __REST_32FPVSRS(n,c,base) \
|
||||
BEGIN_FTR_SECTION \
|
||||
b 2f; \
|
||||
@@ -41,9 +50,11 @@ END_FTR_SECTION_IFSET(CPU_FTR_VSX); \
|
||||
2: SAVE_32VSRS(n,c,base); \
|
||||
3:
|
||||
#else
|
||||
#define __REST_1FPVSR(n,b,base) REST_FPR(n, base)
|
||||
#define __REST_32FPVSRS(n,b,base) REST_32FPRS(n, base)
|
||||
#define __SAVE_32FPVSRS(n,b,base) SAVE_32FPRS(n, base)
|
||||
#endif
|
||||
#define REST_1FPVSR(n,c,base) __REST_1FPVSR(n,__REG_##c,__REG_##base)
|
||||
#define REST_32FPVSRS(n,c,base) __REST_32FPVSRS(n,__REG_##c,__REG_##base)
|
||||
#define SAVE_32FPVSRS(n,c,base) __SAVE_32FPVSRS(n,__REG_##c,__REG_##base)
|
||||
|
||||
@@ -67,6 +78,7 @@ _GLOBAL(store_fp_state)
|
||||
SAVE_32FPVSRS(0, R4, R3)
|
||||
mffs fr0
|
||||
stfd fr0,FPSTATE_FPSCR(r3)
|
||||
REST_1FPVSR(0, R4, R3)
|
||||
blr
|
||||
EXPORT_SYMBOL(store_fp_state)
|
||||
|
||||
@@ -133,4 +145,5 @@ _GLOBAL(save_fpu)
|
||||
2: SAVE_32FPVSRS(0, R4, R6)
|
||||
mffs fr0
|
||||
stfd fr0,FPSTATE_FPSCR(r6)
|
||||
REST_1FPVSR(0, R4, R6)
|
||||
blr
|
||||
|
||||
@@ -394,7 +394,7 @@ interrupt_base:
|
||||
#ifdef CONFIG_PPC_FPU
|
||||
FP_UNAVAILABLE_EXCEPTION
|
||||
#else
|
||||
EXCEPTION(0x0800, FP_UNAVAIL, FloatingPointUnavailable, unknown_exception)
|
||||
EXCEPTION(0x0800, FP_UNAVAIL, FloatingPointUnavailable, emulation_assist_interrupt)
|
||||
#endif
|
||||
|
||||
/* System Call Interrupt */
|
||||
|
||||
@@ -887,6 +887,8 @@ void __init setup_arch(char **cmdline_p)
|
||||
|
||||
/* Parse memory topology */
|
||||
mem_topology_setup();
|
||||
/* Set max_mapnr before paging_init() */
|
||||
set_max_mapnr(max_pfn);
|
||||
|
||||
/*
|
||||
* Release secondary cpus out of their spinloops at 0x60 now that
|
||||
|
||||
@@ -36,6 +36,9 @@ _GLOBAL(ftrace_regs_caller)
|
||||
/* Save the original return address in A's stack frame */
|
||||
std r0,LRSAVE(r1)
|
||||
|
||||
/* Create a minimal stack frame for representing B */
|
||||
stdu r1, -STACK_FRAME_MIN_SIZE(r1)
|
||||
|
||||
/* Create our stack frame + pt_regs */
|
||||
stdu r1,-SWITCH_FRAME_SIZE(r1)
|
||||
|
||||
@@ -51,7 +54,7 @@ _GLOBAL(ftrace_regs_caller)
|
||||
SAVE_GPRS(12, 31, r1)
|
||||
|
||||
/* Save previous stack pointer (r1) */
|
||||
addi r8, r1, SWITCH_FRAME_SIZE
|
||||
addi r8, r1, SWITCH_FRAME_SIZE+STACK_FRAME_MIN_SIZE
|
||||
std r8, GPR1(r1)
|
||||
|
||||
/* Load special regs for save below */
|
||||
@@ -64,6 +67,8 @@ _GLOBAL(ftrace_regs_caller)
|
||||
mflr r7
|
||||
/* Save it as pt_regs->nip */
|
||||
std r7, _NIP(r1)
|
||||
/* Also save it in B's stackframe header for proper unwind */
|
||||
std r7, LRSAVE+SWITCH_FRAME_SIZE(r1)
|
||||
/* Save the read LR in pt_regs->link */
|
||||
std r0, _LINK(r1)
|
||||
|
||||
@@ -118,7 +123,7 @@ ftrace_regs_call:
|
||||
ld r2, 24(r1)
|
||||
|
||||
/* Pop our stack frame */
|
||||
addi r1, r1, SWITCH_FRAME_SIZE
|
||||
addi r1, r1, SWITCH_FRAME_SIZE+STACK_FRAME_MIN_SIZE
|
||||
|
||||
#ifdef CONFIG_LIVEPATCH
|
||||
/* Based on the cmpd above, if the NIP was altered handle livepatch */
|
||||
@@ -142,7 +147,7 @@ ftrace_no_trace:
|
||||
mflr r3
|
||||
mtctr r3
|
||||
REST_GPR(3, r1)
|
||||
addi r1, r1, SWITCH_FRAME_SIZE
|
||||
addi r1, r1, SWITCH_FRAME_SIZE+STACK_FRAME_MIN_SIZE
|
||||
mtlr r0
|
||||
bctr
|
||||
|
||||
@@ -150,6 +155,9 @@ _GLOBAL(ftrace_caller)
|
||||
/* Save the original return address in A's stack frame */
|
||||
std r0, LRSAVE(r1)
|
||||
|
||||
/* Create a minimal stack frame for representing B */
|
||||
stdu r1, -STACK_FRAME_MIN_SIZE(r1)
|
||||
|
||||
/* Create our stack frame + pt_regs */
|
||||
stdu r1, -SWITCH_FRAME_SIZE(r1)
|
||||
|
||||
@@ -163,6 +171,7 @@ _GLOBAL(ftrace_caller)
|
||||
/* Get the _mcount() call site out of LR */
|
||||
mflr r7
|
||||
std r7, _NIP(r1)
|
||||
std r7, LRSAVE+SWITCH_FRAME_SIZE(r1)
|
||||
|
||||
/* Save callee's TOC in the ABI compliant location */
|
||||
std r2, 24(r1)
|
||||
@@ -197,7 +206,7 @@ ftrace_call:
|
||||
ld r2, 24(r1)
|
||||
|
||||
/* Pop our stack frame */
|
||||
addi r1, r1, SWITCH_FRAME_SIZE
|
||||
addi r1, r1, SWITCH_FRAME_SIZE+STACK_FRAME_MIN_SIZE
|
||||
|
||||
/* Reload original LR */
|
||||
ld r0, LRSAVE(r1)
|
||||
|
||||
@@ -1148,6 +1148,7 @@ static void emulate_single_step(struct pt_regs *regs)
|
||||
__single_step_exception(regs);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PPC_FPU_REGS
|
||||
static inline int __parse_fpscr(unsigned long fpscr)
|
||||
{
|
||||
int ret = FPE_FLTUNK;
|
||||
@@ -1174,6 +1175,7 @@ static inline int __parse_fpscr(unsigned long fpscr)
|
||||
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
||||
static void parse_fpe(struct pt_regs *regs)
|
||||
{
|
||||
|
||||
@@ -32,6 +32,7 @@ _GLOBAL(store_vr_state)
|
||||
mfvscr v0
|
||||
li r4, VRSTATE_VSCR
|
||||
stvx v0, r4, r3
|
||||
lvx v0, 0, r3
|
||||
blr
|
||||
EXPORT_SYMBOL(store_vr_state)
|
||||
|
||||
@@ -104,6 +105,7 @@ _GLOBAL(save_altivec)
|
||||
mfvscr v0
|
||||
li r4,VRSTATE_VSCR
|
||||
stvx v0,r4,r7
|
||||
lvx v0,0,r7
|
||||
blr
|
||||
|
||||
#ifdef CONFIG_VSX
|
||||
|
||||
@@ -288,7 +288,6 @@ void __init mem_init(void)
|
||||
#endif
|
||||
|
||||
high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);
|
||||
set_max_mapnr(max_pfn);
|
||||
|
||||
kasan_late_init();
|
||||
|
||||
|
||||
@@ -1342,8 +1342,7 @@ static void power_pmu_disable(struct pmu *pmu)
|
||||
/*
|
||||
* Disable instruction sampling if it was enabled
|
||||
*/
|
||||
if (cpuhw->mmcr.mmcra & MMCRA_SAMPLE_ENABLE)
|
||||
val &= ~MMCRA_SAMPLE_ENABLE;
|
||||
val &= ~MMCRA_SAMPLE_ENABLE;
|
||||
|
||||
/* Disable BHRB via mmcra (BHRBRD) for p10 */
|
||||
if (ppmu->flags & PPMU_ARCH_31)
|
||||
@@ -1354,7 +1353,7 @@ static void power_pmu_disable(struct pmu *pmu)
|
||||
* instruction sampling or BHRB.
|
||||
*/
|
||||
if (val != mmcra) {
|
||||
mtspr(SPRN_MMCRA, mmcra);
|
||||
mtspr(SPRN_MMCRA, val);
|
||||
mb();
|
||||
isync();
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ static int trace_imc_mem_size;
|
||||
* core and trace-imc
|
||||
*/
|
||||
static struct imc_pmu_ref imc_global_refc = {
|
||||
.lock = __SPIN_LOCK_INITIALIZER(imc_global_refc.lock),
|
||||
.lock = __SPIN_LOCK_UNLOCKED(imc_global_refc.lock),
|
||||
.id = 0,
|
||||
.refc = 0,
|
||||
};
|
||||
|
||||
@@ -24,13 +24,20 @@
|
||||
#include <linux/uaccess.h>
|
||||
|
||||
|
||||
struct opal_prd_msg {
|
||||
union {
|
||||
struct opal_prd_msg_header header;
|
||||
DECLARE_FLEX_ARRAY(u8, data);
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* The msg member must be at the end of the struct, as it's followed by the
|
||||
* message data.
|
||||
*/
|
||||
struct opal_prd_msg_queue_item {
|
||||
struct list_head list;
|
||||
struct opal_prd_msg_header msg;
|
||||
struct list_head list;
|
||||
struct opal_prd_msg msg;
|
||||
};
|
||||
|
||||
static struct device_node *prd_node;
|
||||
@@ -156,7 +163,7 @@ static ssize_t opal_prd_read(struct file *file, char __user *buf,
|
||||
int rc;
|
||||
|
||||
/* we need at least a header's worth of data */
|
||||
if (count < sizeof(item->msg))
|
||||
if (count < sizeof(item->msg.header))
|
||||
return -EINVAL;
|
||||
|
||||
if (*ppos)
|
||||
@@ -186,7 +193,7 @@ static ssize_t opal_prd_read(struct file *file, char __user *buf,
|
||||
return -EINTR;
|
||||
}
|
||||
|
||||
size = be16_to_cpu(item->msg.size);
|
||||
size = be16_to_cpu(item->msg.header.size);
|
||||
if (size > count) {
|
||||
err = -EINVAL;
|
||||
goto err_requeue;
|
||||
@@ -352,7 +359,7 @@ static int opal_prd_msg_notifier(struct notifier_block *nb,
|
||||
if (!item)
|
||||
return -ENOMEM;
|
||||
|
||||
memcpy(&item->msg, msg->params, msg_size);
|
||||
memcpy(&item->msg.data, msg->params, msg_size);
|
||||
|
||||
spin_lock_irqsave(&opal_prd_msg_queue_lock, flags);
|
||||
list_add_tail(&item->list, &opal_prd_msg_queue);
|
||||
|
||||
@@ -1241,7 +1241,6 @@ static bool enable_ddw(struct pci_dev *dev, struct device_node *pdn)
|
||||
u32 ddw_avail[DDW_APPLICABLE_SIZE];
|
||||
struct dma_win *window;
|
||||
struct property *win64;
|
||||
bool ddw_enabled = false;
|
||||
struct failed_ddw_pdn *fpdn;
|
||||
bool default_win_removed = false, direct_mapping = false;
|
||||
bool pmem_present;
|
||||
@@ -1256,7 +1255,6 @@ static bool enable_ddw(struct pci_dev *dev, struct device_node *pdn)
|
||||
|
||||
if (find_existing_ddw(pdn, &dev->dev.archdata.dma_offset, &len)) {
|
||||
direct_mapping = (len >= max_ram_len);
|
||||
ddw_enabled = true;
|
||||
goto out_unlock;
|
||||
}
|
||||
|
||||
@@ -1411,8 +1409,8 @@ static bool enable_ddw(struct pci_dev *dev, struct device_node *pdn)
|
||||
dev_info(&dev->dev, "failed to map DMA window for %pOF: %d\n",
|
||||
dn, ret);
|
||||
|
||||
/* Make sure to clean DDW if any TCE was set*/
|
||||
clean_dma_window(pdn, win64->value);
|
||||
/* Make sure to clean DDW if any TCE was set*/
|
||||
clean_dma_window(pdn, win64->value);
|
||||
goto out_del_list;
|
||||
}
|
||||
} else {
|
||||
@@ -1459,7 +1457,6 @@ static bool enable_ddw(struct pci_dev *dev, struct device_node *pdn)
|
||||
spin_unlock(&dma_win_list_lock);
|
||||
|
||||
dev->dev.archdata.dma_offset = win_addr;
|
||||
ddw_enabled = true;
|
||||
goto out_unlock;
|
||||
|
||||
out_del_list:
|
||||
@@ -1495,10 +1492,10 @@ out_unlock:
|
||||
* as RAM, then we failed to create a window to cover persistent
|
||||
* memory and need to set the DMA limit.
|
||||
*/
|
||||
if (pmem_present && ddw_enabled && direct_mapping && len == max_ram_len)
|
||||
if (pmem_present && direct_mapping && len == max_ram_len)
|
||||
dev->dev.bus_dma_limit = dev->dev.archdata.dma_offset + (1ULL << len);
|
||||
|
||||
return ddw_enabled && direct_mapping;
|
||||
return direct_mapping;
|
||||
}
|
||||
|
||||
static void pci_dma_dev_setup_pSeriesLP(struct pci_dev *dev)
|
||||
|
||||
@@ -524,8 +524,10 @@ static ssize_t vcpudispatch_stats_write(struct file *file, const char __user *p,
|
||||
|
||||
if (cmd) {
|
||||
rc = init_cpu_associativity();
|
||||
if (rc)
|
||||
if (rc) {
|
||||
destroy_cpu_associativity();
|
||||
goto out;
|
||||
}
|
||||
|
||||
for_each_possible_cpu(cpu) {
|
||||
disp = per_cpu_ptr(&vcpu_disp_data, cpu);
|
||||
|
||||
@@ -786,7 +786,7 @@ int xive_native_get_queue_info(u32 vp_id, u32 prio,
|
||||
if (out_qpage)
|
||||
*out_qpage = be64_to_cpu(qpage);
|
||||
if (out_qsize)
|
||||
*out_qsize = be32_to_cpu(qsize);
|
||||
*out_qsize = be64_to_cpu(qsize);
|
||||
if (out_qeoi_page)
|
||||
*out_qeoi_page = be64_to_cpu(qeoi_page);
|
||||
if (out_escalate_irq)
|
||||
|
||||
@@ -24,7 +24,7 @@ static inline bool rv_insn_reg_set_val(struct pt_regs *regs, u32 index,
|
||||
unsigned long val)
|
||||
{
|
||||
if (index == 0)
|
||||
return false;
|
||||
return true;
|
||||
else if (index <= 31)
|
||||
*((unsigned long *)regs + index) = val;
|
||||
else
|
||||
|
||||
@@ -344,16 +344,14 @@ int handle_misaligned_store(struct pt_regs *regs)
|
||||
} else if ((insn & INSN_MASK_C_SD) == INSN_MATCH_C_SD) {
|
||||
len = 8;
|
||||
val.data_ulong = GET_RS2S(insn, regs);
|
||||
} else if ((insn & INSN_MASK_C_SDSP) == INSN_MATCH_C_SDSP &&
|
||||
((insn >> SH_RD) & 0x1f)) {
|
||||
} else if ((insn & INSN_MASK_C_SDSP) == INSN_MATCH_C_SDSP) {
|
||||
len = 8;
|
||||
val.data_ulong = GET_RS2C(insn, regs);
|
||||
#endif
|
||||
} else if ((insn & INSN_MASK_C_SW) == INSN_MATCH_C_SW) {
|
||||
len = 4;
|
||||
val.data_ulong = GET_RS2S(insn, regs);
|
||||
} else if ((insn & INSN_MASK_C_SWSP) == INSN_MATCH_C_SWSP &&
|
||||
((insn >> SH_RD) & 0x1f)) {
|
||||
} else if ((insn & INSN_MASK_C_SWSP) == INSN_MATCH_C_SWSP) {
|
||||
len = 4;
|
||||
val.data_ulong = GET_RS2C(insn, regs);
|
||||
} else {
|
||||
|
||||
@@ -596,7 +596,8 @@ static void __init setup_resources(void)
|
||||
* part of the System RAM resource.
|
||||
*/
|
||||
if (crashk_res.end) {
|
||||
memblock_add_node(crashk_res.start, resource_size(&crashk_res), 0);
|
||||
memblock_add_node(crashk_res.start, resource_size(&crashk_res),
|
||||
0, MEMBLOCK_NONE);
|
||||
memblock_reserve(crashk_res.start, resource_size(&crashk_res));
|
||||
insert_resource(&iomem_resource, &crashk_res);
|
||||
}
|
||||
|
||||
@@ -131,7 +131,7 @@ static void mark_kernel_pud(p4d_t *p4d, unsigned long addr, unsigned long end)
|
||||
continue;
|
||||
if (!pud_folded(*pud)) {
|
||||
page = phys_to_page(pud_val(*pud));
|
||||
for (i = 0; i < 3; i++)
|
||||
for (i = 0; i < 4; i++)
|
||||
set_bit(PG_arch_1, &page[i].flags);
|
||||
}
|
||||
mark_kernel_pmd(pud, addr, next);
|
||||
@@ -152,7 +152,7 @@ static void mark_kernel_p4d(pgd_t *pgd, unsigned long addr, unsigned long end)
|
||||
continue;
|
||||
if (!p4d_folded(*p4d)) {
|
||||
page = phys_to_page(p4d_val(*p4d));
|
||||
for (i = 0; i < 3; i++)
|
||||
for (i = 0; i < 4; i++)
|
||||
set_bit(PG_arch_1, &page[i].flags);
|
||||
}
|
||||
mark_kernel_pud(p4d, addr, next);
|
||||
@@ -174,7 +174,7 @@ static void mark_kernel_pgd(void)
|
||||
continue;
|
||||
if (!pgd_folded(*pgd)) {
|
||||
page = phys_to_page(pgd_val(*pgd));
|
||||
for (i = 0; i < 3; i++)
|
||||
for (i = 0; i < 4; i++)
|
||||
set_bit(PG_arch_1, &page[i].flags);
|
||||
}
|
||||
mark_kernel_p4d(pgd, addr, next);
|
||||
|
||||
@@ -731,7 +731,7 @@ void ptep_zap_unused(struct mm_struct *mm, unsigned long addr,
|
||||
pte_clear(mm, addr, ptep);
|
||||
}
|
||||
if (reset)
|
||||
pgste_val(pgste) &= ~_PGSTE_GPS_USAGE_MASK;
|
||||
pgste_val(pgste) &= ~(_PGSTE_GPS_USAGE_MASK | _PGSTE_GPS_NODAT);
|
||||
pgste_set_unlock(ptep, pgste);
|
||||
preempt_enable();
|
||||
}
|
||||
|
||||
@@ -22,6 +22,17 @@ config STACK_DEBUG
|
||||
every function call and will therefore incur a major
|
||||
performance hit. Most users should say N.
|
||||
|
||||
config EARLY_PRINTK
|
||||
bool "Early printk"
|
||||
depends on SH_STANDARD_BIOS
|
||||
help
|
||||
Say Y here to redirect kernel printk messages to the serial port
|
||||
used by the SH-IPL bootloader, starting very early in the boot
|
||||
process and ending when the kernel's serial console is initialised.
|
||||
This option is only useful while porting the kernel to a new machine,
|
||||
when the kernel may crash or hang before the serial console is
|
||||
initialised. If unsure, say N.
|
||||
|
||||
config 4KSTACKS
|
||||
bool "Use 4Kb for kernel stacks instead of 8Kb"
|
||||
depends on DEBUG_KERNEL && (MMU || BROKEN) && !PAGE_SIZE_64KB
|
||||
|
||||
@@ -453,5 +453,5 @@ ccslow: cmp %g1, 0
|
||||
* we only bother with faults on loads... */
|
||||
|
||||
cc_fault:
|
||||
ret
|
||||
retl
|
||||
clr %o0
|
||||
|
||||
@@ -24,8 +24,17 @@
|
||||
#include <linux/types.h>
|
||||
#include <crypto/sha1.h>
|
||||
#include <crypto/sha1_base.h>
|
||||
#include <asm/cpu_device_id.h>
|
||||
#include <asm/simd.h>
|
||||
|
||||
static const struct x86_cpu_id module_cpu_ids[] = {
|
||||
X86_MATCH_FEATURE(X86_FEATURE_AVX2, NULL),
|
||||
X86_MATCH_FEATURE(X86_FEATURE_AVX, NULL),
|
||||
X86_MATCH_FEATURE(X86_FEATURE_SSSE3, NULL),
|
||||
{}
|
||||
};
|
||||
MODULE_DEVICE_TABLE(x86cpu, module_cpu_ids);
|
||||
|
||||
static int sha1_update(struct shash_desc *desc, const u8 *data,
|
||||
unsigned int len, sha1_block_fn *sha1_xform)
|
||||
{
|
||||
@@ -301,6 +310,9 @@ static inline void unregister_sha1_ni(void) { }
|
||||
|
||||
static int __init sha1_ssse3_mod_init(void)
|
||||
{
|
||||
if (!x86_match_cpu(module_cpu_ids))
|
||||
return -ENODEV;
|
||||
|
||||
if (register_sha1_ssse3())
|
||||
goto fail;
|
||||
|
||||
|
||||
@@ -38,11 +38,20 @@
|
||||
#include <crypto/sha2.h>
|
||||
#include <crypto/sha256_base.h>
|
||||
#include <linux/string.h>
|
||||
#include <asm/cpu_device_id.h>
|
||||
#include <asm/simd.h>
|
||||
|
||||
asmlinkage void sha256_transform_ssse3(struct sha256_state *state,
|
||||
const u8 *data, int blocks);
|
||||
|
||||
static const struct x86_cpu_id module_cpu_ids[] = {
|
||||
X86_MATCH_FEATURE(X86_FEATURE_AVX2, NULL),
|
||||
X86_MATCH_FEATURE(X86_FEATURE_AVX, NULL),
|
||||
X86_MATCH_FEATURE(X86_FEATURE_SSSE3, NULL),
|
||||
{}
|
||||
};
|
||||
MODULE_DEVICE_TABLE(x86cpu, module_cpu_ids);
|
||||
|
||||
static int _sha256_update(struct shash_desc *desc, const u8 *data,
|
||||
unsigned int len, sha256_block_fn *sha256_xform)
|
||||
{
|
||||
@@ -366,6 +375,9 @@ static inline void unregister_sha256_ni(void) { }
|
||||
|
||||
static int __init sha256_ssse3_mod_init(void)
|
||||
{
|
||||
if (!x86_match_cpu(module_cpu_ids))
|
||||
return -ENODEV;
|
||||
|
||||
if (register_sha256_ssse3())
|
||||
goto fail;
|
||||
|
||||
|
||||
@@ -1360,20 +1360,10 @@ static void pt_addr_filters_fini(struct perf_event *event)
|
||||
}
|
||||
|
||||
#ifdef CONFIG_X86_64
|
||||
static u64 canonical_address(u64 vaddr, u8 vaddr_bits)
|
||||
{
|
||||
return ((s64)vaddr << (64 - vaddr_bits)) >> (64 - vaddr_bits);
|
||||
}
|
||||
|
||||
static u64 is_canonical_address(u64 vaddr, u8 vaddr_bits)
|
||||
{
|
||||
return canonical_address(vaddr, vaddr_bits) == vaddr;
|
||||
}
|
||||
|
||||
/* Clamp to a canonical address greater-than-or-equal-to the address given */
|
||||
static u64 clamp_to_ge_canonical_addr(u64 vaddr, u8 vaddr_bits)
|
||||
{
|
||||
return is_canonical_address(vaddr, vaddr_bits) ?
|
||||
return __is_canonical_address(vaddr, vaddr_bits) ?
|
||||
vaddr :
|
||||
-BIT_ULL(vaddr_bits - 1);
|
||||
}
|
||||
@@ -1381,7 +1371,7 @@ static u64 clamp_to_ge_canonical_addr(u64 vaddr, u8 vaddr_bits)
|
||||
/* Clamp to a canonical address less-than-or-equal-to the address given */
|
||||
static u64 clamp_to_le_canonical_addr(u64 vaddr, u8 vaddr_bits)
|
||||
{
|
||||
return is_canonical_address(vaddr, vaddr_bits) ?
|
||||
return __is_canonical_address(vaddr, vaddr_bits) ?
|
||||
vaddr :
|
||||
BIT_ULL(vaddr_bits - 1) - 1;
|
||||
}
|
||||
|
||||
@@ -140,13 +140,21 @@ uncore_insert_box_info(struct uncore_unit_discovery *unit,
|
||||
unsigned int *box_offset, *ids;
|
||||
int i;
|
||||
|
||||
if (WARN_ON_ONCE(!unit->ctl || !unit->ctl_offset || !unit->ctr_offset))
|
||||
if (!unit->ctl || !unit->ctl_offset || !unit->ctr_offset) {
|
||||
pr_info("Invalid address is detected for uncore type %d box %d, "
|
||||
"Disable the uncore unit.\n",
|
||||
unit->box_type, unit->box_id);
|
||||
return;
|
||||
}
|
||||
|
||||
if (parsed) {
|
||||
type = search_uncore_discovery_type(unit->box_type);
|
||||
if (WARN_ON_ONCE(!type))
|
||||
if (!type) {
|
||||
pr_info("A spurious uncore type %d is detected, "
|
||||
"Disable the uncore type.\n",
|
||||
unit->box_type);
|
||||
return;
|
||||
}
|
||||
/* Store the first box of each die */
|
||||
if (!type->box_ctrl_die[die])
|
||||
type->box_ctrl_die[die] = unit->ctl;
|
||||
@@ -181,8 +189,12 @@ uncore_insert_box_info(struct uncore_unit_discovery *unit,
|
||||
ids[i] = type->ids[i];
|
||||
box_offset[i] = type->box_offset[i];
|
||||
|
||||
if (WARN_ON_ONCE(unit->box_id == ids[i]))
|
||||
if (unit->box_id == ids[i]) {
|
||||
pr_info("Duplicate uncore type %d box ID %d is detected, "
|
||||
"Drop the duplicate uncore unit.\n",
|
||||
unit->box_type, unit->box_id);
|
||||
goto free_ids;
|
||||
}
|
||||
}
|
||||
ids[i] = unit->box_id;
|
||||
box_offset[i] = unit->ctl - type->box_ctrl;
|
||||
|
||||
@@ -69,6 +69,8 @@ struct legacy_pic {
|
||||
void (*make_irq)(unsigned int irq);
|
||||
};
|
||||
|
||||
void legacy_pic_pcat_compat(void);
|
||||
|
||||
extern struct legacy_pic *legacy_pic;
|
||||
extern struct legacy_pic null_legacy_pic;
|
||||
|
||||
|
||||
@@ -511,6 +511,7 @@
|
||||
#define MSR_AMD64_CPUID_FN_1 0xc0011004
|
||||
#define MSR_AMD64_LS_CFG 0xc0011020
|
||||
#define MSR_AMD64_DC_CFG 0xc0011022
|
||||
#define MSR_AMD64_TW_CFG 0xc0011023
|
||||
|
||||
#define MSR_AMD64_DE_CFG 0xc0011029
|
||||
#define MSR_AMD64_DE_CFG_LFENCE_SERIALIZE_BIT 1
|
||||
|
||||
@@ -12,13 +12,6 @@
|
||||
|
||||
#define NR_NODE_MEMBLKS (MAX_NUMNODES*2)
|
||||
|
||||
/*
|
||||
* Too small node sizes may confuse the VM badly. Usually they
|
||||
* result from BIOS bugs. So dont recognize nodes as standalone
|
||||
* NUMA entities that have less than this amount of RAM listed:
|
||||
*/
|
||||
#define NODE_MIN_SIZE (4*1024*1024)
|
||||
|
||||
extern int numa_off;
|
||||
|
||||
/*
|
||||
|
||||
@@ -71,6 +71,16 @@ static inline void copy_user_page(void *to, void *from, unsigned long vaddr,
|
||||
extern bool __virt_addr_valid(unsigned long kaddr);
|
||||
#define virt_addr_valid(kaddr) __virt_addr_valid((unsigned long) (kaddr))
|
||||
|
||||
static __always_inline u64 __canonical_address(u64 vaddr, u8 vaddr_bits)
|
||||
{
|
||||
return ((s64)vaddr << (64 - vaddr_bits)) >> (64 - vaddr_bits);
|
||||
}
|
||||
|
||||
static __always_inline u64 __is_canonical_address(u64 vaddr, u8 vaddr_bits)
|
||||
{
|
||||
return __canonical_address(vaddr, vaddr_bits) == vaddr;
|
||||
}
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
#include <asm-generic/memory_model.h>
|
||||
|
||||
@@ -108,27 +108,16 @@ extern unsigned long _brk_end;
|
||||
void *extend_brk(size_t size, size_t align);
|
||||
|
||||
/*
|
||||
* Reserve space in the brk section. The name must be unique within
|
||||
* the file, and somewhat descriptive. The size is in bytes. Must be
|
||||
* used at file scope.
|
||||
* Reserve space in the .brk section, which is a block of memory from which the
|
||||
* caller is allowed to allocate very early (before even memblock is available)
|
||||
* by calling extend_brk(). All allocated memory will be eventually converted
|
||||
* to memblock. Any leftover unallocated memory will be freed.
|
||||
*
|
||||
* (This uses a temp function to wrap the asm so we can pass it the
|
||||
* size parameter; otherwise we wouldn't be able to. We can't use a
|
||||
* "section" attribute on a normal variable because it always ends up
|
||||
* being @progbits, which ends up allocating space in the vmlinux
|
||||
* executable.)
|
||||
* The size is in bytes.
|
||||
*/
|
||||
#define RESERVE_BRK(name,sz) \
|
||||
static void __section(".discard.text") __used notrace \
|
||||
__brk_reservation_fn_##name##__(void) { \
|
||||
asm volatile ( \
|
||||
".pushsection .brk_reservation,\"aw\",@nobits;" \
|
||||
".brk." #name ":" \
|
||||
" 1:.skip %c0;" \
|
||||
" .size .brk." #name ", . - 1b;" \
|
||||
" .popsection" \
|
||||
: : "i" (sz)); \
|
||||
}
|
||||
#define RESERVE_BRK(name, size) \
|
||||
__section(".bss..brk") __aligned(1) __used \
|
||||
static char __brk_##name[size]
|
||||
|
||||
extern void probe_roms(void);
|
||||
#ifdef __i386__
|
||||
@@ -141,12 +130,19 @@ asmlinkage void __init x86_64_start_reservations(char *real_mode_data);
|
||||
|
||||
#endif /* __i386__ */
|
||||
#endif /* _SETUP */
|
||||
#else
|
||||
#define RESERVE_BRK(name,sz) \
|
||||
.pushsection .brk_reservation,"aw",@nobits; \
|
||||
.brk.name: \
|
||||
1: .skip sz; \
|
||||
.size .brk.name,.-1b; \
|
||||
|
||||
#else /* __ASSEMBLY */
|
||||
|
||||
.macro __RESERVE_BRK name, size
|
||||
.pushsection .bss..brk, "aw"
|
||||
SYM_DATA_START(__brk_\name)
|
||||
.skip \size
|
||||
SYM_DATA_END(__brk_\name)
|
||||
.popsection
|
||||
.endm
|
||||
|
||||
#define RESERVE_BRK(name, size) __RESERVE_BRK name, size
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
#endif /* _ASM_X86_SETUP_H */
|
||||
|
||||
@@ -543,7 +543,7 @@ copy_mc_to_kernel(void *to, const void *from, unsigned len);
|
||||
#define copy_mc_to_kernel copy_mc_to_kernel
|
||||
|
||||
unsigned long __must_check
|
||||
copy_mc_to_user(void *to, const void *from, unsigned len);
|
||||
copy_mc_to_user(void __user *to, const void *from, unsigned len);
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
||||
@@ -139,6 +139,9 @@ static int __init acpi_parse_madt(struct acpi_table_header *table)
|
||||
pr_debug("Local APIC address 0x%08x\n", madt->address);
|
||||
}
|
||||
|
||||
if (madt->flags & ACPI_MADT_PCAT_COMPAT)
|
||||
legacy_pic_pcat_compat();
|
||||
|
||||
default_acpi_madt_oem_check(madt->header.oem_id,
|
||||
madt->header.oem_table_id);
|
||||
|
||||
|
||||
@@ -1316,6 +1316,9 @@ static void zenbleed_check_cpu(void *unused)
|
||||
|
||||
void amd_check_microcode(void)
|
||||
{
|
||||
if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD)
|
||||
return;
|
||||
|
||||
on_each_cpu(zenbleed_check_cpu, NULL, 1);
|
||||
}
|
||||
|
||||
|
||||
@@ -2477,7 +2477,7 @@ static void __init srso_select_mitigation(void)
|
||||
pr_info("%s%s\n", srso_strings[srso_mitigation], (has_microcode ? "" : ", no microcode"));
|
||||
|
||||
pred_cmd:
|
||||
if ((boot_cpu_has(X86_FEATURE_SRSO_NO) || srso_cmd == SRSO_CMD_OFF) &&
|
||||
if ((!boot_cpu_has_bug(X86_BUG_SRSO) || srso_cmd == SRSO_CMD_OFF) &&
|
||||
boot_cpu_has(X86_FEATURE_SBPB))
|
||||
x86_pred_cmd = PRED_CMD_SBPB;
|
||||
}
|
||||
|
||||
@@ -86,8 +86,12 @@ static void hygon_get_topology(struct cpuinfo_x86 *c)
|
||||
if (!err)
|
||||
c->x86_coreid_bits = get_count_order(c->x86_max_cores);
|
||||
|
||||
/* Socket ID is ApicId[6] for these processors. */
|
||||
c->phys_proc_id = c->apicid >> APICID_SOCKET_ID_BIT;
|
||||
/*
|
||||
* Socket ID is ApicId[6] for the processors with model <= 0x3
|
||||
* when running on host.
|
||||
*/
|
||||
if (!boot_cpu_has(X86_FEATURE_HYPERVISOR) && c->x86_model <= 0x3)
|
||||
c->phys_proc_id = c->apicid >> APICID_SOCKET_ID_BIT;
|
||||
|
||||
cacheinfo_hygon_init_llc_id(c, cpu);
|
||||
} else if (cpu_has(c, X86_FEATURE_NODEID_MSR)) {
|
||||
|
||||
@@ -79,7 +79,7 @@ static struct desc_struct startup_gdt[GDT_ENTRIES] = {
|
||||
* while the kernel still uses a direct mapping.
|
||||
*/
|
||||
static struct desc_ptr startup_gdt_descr = {
|
||||
.size = sizeof(startup_gdt),
|
||||
.size = sizeof(startup_gdt)-1,
|
||||
.address = 0,
|
||||
};
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
*/
|
||||
static void init_8259A(int auto_eoi);
|
||||
|
||||
static bool pcat_compat __ro_after_init;
|
||||
static int i8259A_auto_eoi;
|
||||
DEFINE_RAW_SPINLOCK(i8259A_lock);
|
||||
|
||||
@@ -301,15 +302,32 @@ static void unmask_8259A(void)
|
||||
|
||||
static int probe_8259A(void)
|
||||
{
|
||||
unsigned char new_val, probe_val = ~(1 << PIC_CASCADE_IR);
|
||||
unsigned long flags;
|
||||
unsigned char probe_val = ~(1 << PIC_CASCADE_IR);
|
||||
unsigned char new_val;
|
||||
|
||||
/*
|
||||
* Check to see if we have a PIC.
|
||||
* Mask all except the cascade and read
|
||||
* back the value we just wrote. If we don't
|
||||
* have a PIC, we will read 0xff as opposed to the
|
||||
* value we wrote.
|
||||
* If MADT has the PCAT_COMPAT flag set, then do not bother probing
|
||||
* for the PIC. Some BIOSes leave the PIC uninitialized and probing
|
||||
* fails.
|
||||
*
|
||||
* Right now this causes problems as quite some code depends on
|
||||
* nr_legacy_irqs() > 0 or has_legacy_pic() == true. This is silly
|
||||
* when the system has an IO/APIC because then PIC is not required
|
||||
* at all, except for really old machines where the timer interrupt
|
||||
* must be routed through the PIC. So just pretend that the PIC is
|
||||
* there and let legacy_pic->init() initialize it for nothing.
|
||||
*
|
||||
* Alternatively this could just try to initialize the PIC and
|
||||
* repeat the probe, but for cases where there is no PIC that's
|
||||
* just pointless.
|
||||
*/
|
||||
if (pcat_compat)
|
||||
return nr_legacy_irqs();
|
||||
|
||||
/*
|
||||
* Check to see if we have a PIC. Mask all except the cascade and
|
||||
* read back the value we just wrote. If we don't have a PIC, we
|
||||
* will read 0xff as opposed to the value we wrote.
|
||||
*/
|
||||
raw_spin_lock_irqsave(&i8259A_lock, flags);
|
||||
|
||||
@@ -431,5 +449,9 @@ static int __init i8259A_init_ops(void)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
device_initcall(i8259A_init_ops);
|
||||
|
||||
void __init legacy_pic_pcat_compat(void)
|
||||
{
|
||||
pcat_compat = true;
|
||||
}
|
||||
|
||||
@@ -66,11 +66,6 @@ RESERVE_BRK(dmi_alloc, 65536);
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Range of the BSS area. The size of the BSS area is determined
|
||||
* at link time, with RESERVE_BRK() facility reserving additional
|
||||
* chunks.
|
||||
*/
|
||||
unsigned long _brk_start = (unsigned long)__brk_base;
|
||||
unsigned long _brk_end = (unsigned long)__brk_base;
|
||||
|
||||
|
||||
@@ -414,7 +414,7 @@ SECTIONS
|
||||
.brk : AT(ADDR(.brk) - LOAD_OFFSET) {
|
||||
__brk_base = .;
|
||||
. += 64 * 1024; /* 64k alignment slop space */
|
||||
*(.brk_reservation) /* areas brk users have reserved */
|
||||
*(.bss..brk) /* areas brk users have reserved */
|
||||
__brk_limit = .;
|
||||
}
|
||||
|
||||
|
||||
@@ -687,7 +687,7 @@ static inline u8 ctxt_virt_addr_bits(struct x86_emulate_ctxt *ctxt)
|
||||
static inline bool emul_is_noncanonical_address(u64 la,
|
||||
struct x86_emulate_ctxt *ctxt)
|
||||
{
|
||||
return get_canonical(la, ctxt_virt_addr_bits(ctxt)) != la;
|
||||
return !__is_canonical_address(la, ctxt_virt_addr_bits(ctxt));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -737,7 +737,7 @@ static __always_inline int __linearize(struct x86_emulate_ctxt *ctxt,
|
||||
case X86EMUL_MODE_PROT64:
|
||||
*linear = la;
|
||||
va_bits = ctxt_virt_addr_bits(ctxt);
|
||||
if (get_canonical(la, va_bits) != la)
|
||||
if (!__is_canonical_address(la, va_bits))
|
||||
goto bad;
|
||||
|
||||
*max_size = min_t(u64, ~0u, (1ull << va_bits) - la);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user