Merge android-5.4-stable.50 (a200ad5) into msm-5.4

* refs/heads/tmp-a200ad5:
  Revert "usb: dwc3: gadget: Properly handle ClearFeature(halt)"
  Revert "ANDROID: kbuild: merge more sections with LTO"
  Revert "FROMLIST: f2fs: fix use-after-free when accessing bio->bi_crypt_context"
  Linux 5.4.50
  Revert "tty: hvc: Fix data abort due to race in hvc_open"
  xfs: add agf freeblocks verify in xfs_agf_verify
  dm writecache: add cond_resched to loop in persistent_memory_claim()
  dm writecache: correct uncommitted_block when discarding uncommitted entry
  xprtrdma: Fix handling of RDMA_ERROR replies
  NFSv4 fix CLOSE not waiting for direct IO compeletion
  pNFS/flexfiles: Fix list corruption if the mirror count changes
  SUNRPC: Properly set the @subbuf parameter of xdr_buf_subsegment()
  sunrpc: fixed rollback in rpc_gssd_dummy_populate()
  Staging: rtl8723bs: prevent buffer overflow in update_sta_support_rate()
  drm/amdgpu: add fw release for sdma v5_0
  drm/radeon: fix fb_div check in ni_init_smc_spll_table()
  drm: rcar-du: Fix build error
  drm/amd: fix potential memleak in err branch
  ring-buffer: Zero out time extend if it is nested and not absolute
  tracing: Fix event trigger to accept redundant spaces
  arm64: dts: imx8mn-ddr4-evk: correct ldo1/ldo2 voltage range
  arm64: dts: imx8mm-evk: correct ldo1/ldo2 voltage range
  arm64: perf: Report the PC value in REGS_ABI_32 mode
  mm/memcontrol.c: add missed css_put()
  ocfs2: fix panic on nfs server over ocfs2
  ocfs2: fix value of OCFS2_INVALID_SLOT
  ocfs2: load global_inode_alloc
  ocfs2: avoid inode removal while nfsd is accessing it
  mm/slab: use memzero_explicit() in kzfree()
  btrfs: fix failure of RWF_NOWAIT write into prealloc extent beyond eof
  btrfs: check if a log root exists before locking the log_mutex on unlink
  btrfs: fix data block group relocation failure due to concurrent scrub
  btrfs: fix bytes_may_use underflow when running balance and scrub in parallel
  x86/asm/64: Align start of __clear_user() loop to 16-bytes
  x86/cpu: Use pinning mask for CR4 bits needing to be 0
  KVM: VMX: Stop context switching MSR_IA32_UMWAIT_CONTROL
  KVM: nVMX: Plumb L2 GPA through to PML emulation
  KVM: X86: Fix MSR range of APIC registers in X2APIC mode
  erofs: fix partially uninitialized misuse in z_erofs_onlinepage_fixup
  ACPI: configfs: Disallow loading ACPI tables when locked down
  ACPI: sysfs: Fix pm_profile_attr type
  ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems
  ALSA: hda/realtek - Add quirk for MSI GE63 laptop
  ALSA: hda: Add NVIDIA codec IDs 9a & 9d through a0 to patch table
  RISC-V: Don't allow write+exec only page mapping request in mmap
  block: update hctx map when use multiple maps
  blktrace: break out of blktrace setup on concurrent calls
  kprobes: Suppress the suspicious RCU warning on kprobes
  recordmcount: support >64k sections
  kbuild: improve cc-option to clean up all temporary files
  arm64: sve: Fix build failure when ARM64_SVE=y and SYSCTL=n
  s390/vdso: fix vDSO clock_getres()
  s390/vdso: Use $(LD) instead of $(CC) to link vDSO
  s390/ptrace: fix setting syscall number
  s390/ptrace: pass invalid syscall numbers to tracing
  pinctrl: tegra: Use noirq suspend/resume callbacks
  pinctrl: qcom: spmi-gpio: fix warning about irq chip reusage
  test_objagg: Fix potential memory leak in error handling
  net: alx: fix race condition in alx_remove
  ibmvnic: Harden device login requests
  hwrng: ks-sa - Fix runtime PM imbalance on error
  riscv/atomic: Fix sign extension for RV64I
  drm/amd/display: Use kfree() to free rgb_user in calculate_user_regamma_ramp()
  ata/libata: Fix usage of page address by page_address in ata_scsi_mode_select_xlat function
  sata_rcar: handle pm_runtime_get_sync failure cases
  sched/core: Fix PI boosting between RT and DEADLINE tasks
  sched/deadline: Initialize ->dl_boosted
  afs: Fix storage of cell names
  i2c: core: check returned size of emulated smbus block read
  i2c: fsi: Fix the port number field in status register
  clk: sifive: allocate sufficient memory for struct __prci_data
  net: bcmgenet: use hardware padding of runt frames
  netfilter: ipset: fix unaligned atomic access
  nvme: don't protect ns mutation with ns->head->lock
  usb: renesas_usbhs: getting residue from callback_result
  usb: gadget: udc: Potential Oops in error handling code
  scsi: lpfc: Avoid another null dereference in lpfc_sli4_hba_unset()
  ARM: imx5: add missing put_device() call in imx_suspend_alloc_ocram()
  cxgb4: move handling L2T ARP failures to caller
  net: qede: fix use-after-free on recovery and AER handling
  net: qede: fix PTP initialization on recovery
  net: qed: fix excessive QM ILT lines consumption
  net: qed: fix NVMe login fails over VFs
  net: qede: stop adding events on an already destroyed workqueue
  net: qed: fix async event callbacks unregistering
  net: qed: fix left elements count calculation
  iommu/vt-d: Update scalable mode paging structure coherency
  iommu/vt-d: Enable PCI ACS for platform opt in hint
  selftests/net: report etf errors correctly
  RDMA/mad: Fix possible memory leak in ib_mad_post_receive_mads()
  s390/qeth: fix error handling for isolation mode cmds
  ASoC: rockchip: Fix a reference count leak.
  RDMA/cma: Protect bind_list and listen_list while finding matching cm id
  RDMA/qedr: Fix KASAN: use-after-free in ucma_event_handler+0x532
  RDMA/rvt: Fix potential memory leak caused by rvt_alloc_rq
  rxrpc: Fix handling of rwind from an ACK packet
  ARM: dts: NSP: Correct FA2 mailbox node
  bpf: Don't return EINVAL from {get,set}sockopt when optlen > PAGE_SIZE
  devmap: Use bpf_map_area_alloc() for allocating hash buckets
  regmap: Fix memory leak from regmap_register_patch
  x86/resctrl: Fix a NULL vs IS_ERR() static checker warning in rdt_cdp_peer_get()
  ARM: dts: Fix duovero smsc interrupt for suspend
  ARM: dts: am335x-pocketbeagle: Fix mmc0 Write Protect
  bpf, xdp, samples: Fix null pointer dereference in *_user code
  samples/bpf: xdp_redirect_cpu: Set MAX_CPUS according to NR_CPUS
  ASoC: fsl_ssi: Fix bclk calculation for mono channel
  RDMA/siw: Fix pointer-to-int-cast warning in siw_rx_pbl()
  regualtor: pfuze100: correct sw1a/sw2 on pfuze3000
  ASoC: qcom: common: set correct directions for dailinks
  ASoc: q6afe: add support to get port direction
  efi/esrt: Fix reference count leak in esre_create_sysfs_entry.
  efi/tpm: Verify event log header before parsing
  ASoC: q6asm: handle EOS correctly
  xfrm: Fix double ESP trailer insertion in IPsec crypto offload.
  ARM: OMAP2+: Fix legacy mode dss_reset
  bus: ti-sysc: Ignore clockactivity unless specified as a quirk
  bus: ti-sysc: Flush posted write on enable and disable
  IB/hfi1: Fix module use count flaw due to leftover module put calls
  IB/mad: Fix use after free when destroying MAD agent
  loop: replace kill_bdev with invalidate_bdev
  cdc-acm: Add DISABLE_ECHO quirk for Microchip/SMSC chip
  xhci: Return if xHCI doesn't support LPM
  xhci: Fix enumeration issue when setting max packet size for FS devices.
  xhci: Fix incorrect EP_STATE_MASK
  cifs/smb3: Fix data inconsistent when zero file range
  cifs/smb3: Fix data inconsistent when punch hole
  cifs: Fix cached_fid refcnt leak in open_shroot
  scsi: zfcp: Fix panic on ERP timeout for previously dismissed ERP action
  scsi: qla2xxx: Keep initiator ports after RSCN
  usb: cdns3: ep0: add spinlock for cdns3_check_new_setup
  usb: cdns3: ep0: fix the test mode set incorrectly
  usb: cdns3: trace: using correct dir value
  ALSA: usb-audio: Fix OOB access of mixer element list
  ALSA: usb-audio: add quirk for Samsung USBC Headset (AKG)
  ALSA: usb-audio: add quirk for Denon DCD-1500RE
  ALSA: usb-audio: Add implicit feedback quirk for SSL2+.
  usb: typec: tcpci_rt1711h: avoid screaming irq causing boot hangs
  usb: host: ehci-exynos: Fix error check in exynos_ehci_probe()
  xhci: Poll for U0 after disabling USB2 LPM
  usb: host: xhci-mtk: avoid runtime suspend when removing hcd
  USB: ehci: reopen solution for Synopsys HC bug
  usb: add USB_QUIRK_DELAY_INIT for Logitech C922
  usb: dwc2: Postponed gadget registration to the udc class driver
  USB: ohci-sm501: Add missed iounmap() in remove
  binder: fix null deref of proc->context
  ALSA: usb-audio: Fix potential use-after-free of streams
  fix a braino in "sparc32: fix register window handling in genregs32_[gs]et()"
  net: sched: export __netdev_watchdog_up()
  btrfs: fix a block group ref counter leak after failure to remove block group
  Revert "i2c: tegra: Fix suspending in active runtime PM state"
  tcp_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT
  sch_cake: fix a few style nits
  sch_cake: don't call diffserv parsing code when it is not needed
  sch_cake: don't try to reallocate or unshare skb unconditionally
  ip_tunnel: fix use-after-free in ip_tunnel_lookup()
  net: phy: Check harder for errors in get_phy_id()
  ip6_gre: fix use-after-free in ip6gre_tunnel_lookup()
  tg3: driver sleeps indefinitely when EEH errors exceed eeh_max_freezes
  tcp: grow window for OOO packets only for SACK flows
  tcp: don't ignore ECN CWR on pure ACK
  sctp: Don't advertise IPv4 addresses if ipv6only is set on the socket
  rxrpc: Fix notification call on completion of discarded calls
  rocker: fix incorrect error handling in dma_rings_init
  openvswitch: take into account de-fragmentation/gso_size in execute_check_pkt_len
  net: usb: ax88179_178a: fix packet alignment padding
  net: increment xmit_recursion level in dev_direct_xmit()
  net: Fix the arp error in some cases
  net: fix memleak in register_netdevice()
  net: Do not clear the sock TX queue in sk_set_socket()
  net: core: reduce recursion limit value
  net: bridge: enfore alignment for ethernet address
  mvpp2: ethtool rxtx stats fix
  mld: fix memory leak in ipv6_mc_destroy_dev()
  ibmveth: Fix max MTU limit
  geneve: allow changing DF behavior after creation
  enetc: Fix tx rings bitmap iteration range, irq handling
  block/bio-integrity: don't free 'buf' if bio_integrity_add_page() failed
  ANDROID: GKI: revert part of the ufshcd_* export removals
  ANDROID: GKI: update ABI definitions based on recent wifi backports
  BACKPORT: cfg80211: Configure PMK lifetime and reauth threshold for PMKSA entries
  BACKPORT: nl80211: add no pre-auth attribute and ext. feature flag for ctrl. port
  BACKPORT: nl80211: modify TID-config API
  BACKPORT: nl80211: Add NL command to support TID speicific configurations
  BACKPORT: cfg80211: Support key configuration for Beacon protection (BIGTK)
  BACKPORT: cfg80211: More error messages for key addition failures
  BACKPORT: cfg80211: Enhance the AKM advertizement to support per interface.
  BACKPORT: nl80211: add handling for BSS color
  BACKPORT: cfg80211: VLAN offload support for set_key and set_sta_vlan
  Revert "ANDROID: fscrypt: add key removal notifier chain"
  UPSTREAM: scsi: ufs: Fix imprecise load calculation in devfreq window
  UPSTREAM: scsi: ufs: Add trace event for UIC commands
  UPSTREAM: scsi: ufs: Add DELAY_BEFORE_LPM quirk for Micron devices
  UPSTREAM: scsi: ufs-mediatek: Allow unbound mphy
  UPSTREAM: scsi: ufs-mediatek: Fix unbalanced clock on/off
  UPSTREAM: scsi: ufs-mediatek: Introduce low-power mode for device power supply
  UPSTREAM: scsi: ufs-mediatek: Do not gate clocks if auto-hibern8 is not entered yet
  UPSTREAM: scsi: ufs-mediatek: Fix imprecise waiting time for ref-clk control
  BACKPORT: scsi: ufs: Disable WriteBooster capability in non-supported UFS device
  BACKPORT: scsi: ufs: Fix WriteBooster flush during runtime suspend
  BACKPORT: scsi: ufs: Fix index of attributes query for WriteBooster feature
  BACKPORT: scsi: ufs: Allow WriteBooster on UFS 2.2 devices
  UPSTREAM: scsi: ufs-mediatek: Customize WriteBooster flush policy
  UPSTREAM: scsi: ufs: Customize flush threshold for WriteBooster
  BACKPORT: scsi: ufs: Introduce ufs_hba_variant_params to group customizable parameters
  UPSTREAM: scsi: ufs-mediatek: Make ufs_mtk_fixup_dev_quirks static
  UPSTREAM: scsi: ufs: Cleanup WriteBooster feature
  UPSTREAM: scsi: ufs-mediatek: Enable WriteBooster capability
  BACKPORT: scsi: ufs: Add LU Dedicated buffer mode support for WriteBooster
  BACKPORT: scsi: ufs: Add "index" in parameter list of ufshcd_query_flag()
  UPSTREAM: scsi: ufs-mediatek: Add fixup_dev_quirks vops
  UPSTREAM: scsi: ufs: Export ufs_fixup_device_setup() function
  BACKPORT: scsi: ufs: Introduce fixup_dev_quirks vops
  UPSTREAM: scsi: ufs-mediatek: add error recovery for suspend and resume
  UPSTREAM: scsi: ufs: export ufshcd_link_recovery
  UPSTREAM: scsi: ufs-mediatek: customize the delay for enabling host
  UPSTREAM: scsi: ufs: make HCE polling more compact to improve initialization latency
  BACKPORT: scsi: ufs: allow custom delay prior to host enabling
  UPSTREAM: scsi: ufs-mediatek: use common delay function
  UPSTREAM: scsi: ufs: introduce common and flexible delay function
  UPSTREAM: scsi: ufs: fix uninitialized tx_lanes in ufshcd_disable_tx_lcc()
  UPSTREAM: scsi: ufs-mediatek: fix HOST_PA_TACTIVATE quirk for Samsung UFS Devices
  BACKPORT: scsi: ufs: Add max_lu_supported in struct ufs_dev_info
  ANDROID: GKI: remove ufshcd_* exports from whitelists
  ANDROID: GKI: enable CONFIG_SCSI_UFS_DWC_TC_PLATFORM
  ANDROID: GKI: enable QCOM and HISI UFS drivers
  ANDROID: GKI: enable UFS for x86 gki builds and SCSI_UFSHCD_PCI
  UPSTREAM: amba: Retry adding deferred devices at late_initcall
  ANDROID: GKI: Enable INTERVAL_TREE
  FROMGIT: binder: fix null deref of proc->context
  ANDROID: Makefile: append BUILD_NUMBER to version string when defined
  ANDROID: GKI: update the abi definitions due to 5.4.49 and padding
  ANDROID: GKI: USB: Gadget: add Android ABI padding to struct usb_gadget
  ANDROID: GKI: sound/usb/card.h: add Android ABI padding to struct snd_usb_endpoint
  ANDROID: ext4: Optimize match for casefolded encrypted dirs
  ANDROID: ext4: Handle casefolding with encryption
  Linux 5.4.49
  net: core: device_rename: Use rwsem instead of a seqcount
  sched/rt, net: Use CONFIG_PREEMPTION.patch
  pwm: jz4740: Enhance precision in calculation of duty cycle
  net: octeon: mgmt: Repair filling of RX ring
  e1000e: Do not wake up the system via WOL if device wakeup is disabled
  kretprobe: Prevent triggering kretprobe from within kprobe_flush_task
  kprobes: Fix to protect kick_kprobe_optimizer() by kprobe_mutex
  tracing/probe: Fix memleak in fetch_op_data operations
  crypto: algboss - don't wait during notifier callback
  crypto: algif_skcipher - Cap recv SG list at ctx->used
  Revert "drm/amd/display: disable dcn20 abm feature for bring up"
  drm/i915/icl+: Fix hotplug interrupt disabling after storm detection
  drm/amd/display: Use kvfree() to free coeff in build_regamma()
  drm/connector: notify userspace on hotplug after register complete
  drm/i915: Whitelist context-local timestamp in the gen9 cmdparser
  drm/i915/gem: Avoid iterating an empty list
  drm/msm: Check for powered down HW in the devfreq callbacks
  drm/i915: Fix AUX power domain toggling across TypeC mode resets
  s390: fix syscall_get_error for compat processes
  f2fs: avoid utf8_strncasecmp() with unstable name
  f2fs: split f2fs_d_compare() from f2fs_match_name()
  net/mlx5: DR, Fix freeing in dr_create_rc_qp()
  block: nr_sects_write(): Disable preemption on seqcount write
  x86/boot/compressed: Relax sed symbol type regex for LLVM ld.lld
  drm/amd/display: Use swap() where appropriate
  drm/dp_mst: Increase ACT retry timeout to 3s
  ext4: avoid race conditions when remounting with options that change dax
  jbd2: clean __jbd2_journal_abort_hard() and __journal_abort_soft()
  selinux: fix double free
  drm/amdgpu: Replace invalid device ID with a valid device ID
  drm/qxl: Use correct notify port address when creating cursor ring
  drm/dp_mst: Reformat drm_dp_check_act_status() a bit
  ext4: avoid utf8_strncasecmp() with unstable name
  ext4: fix partial cluster initialization when splitting extent
  drm: encoder_slave: fix refcouting error for modules
  libata: Use per port sync for detach
  arm64: hw_breakpoint: Don't invoke overflow handler on uaccess watchpoints
  mvpp2: remove module bugfix
  block: Fix use-after-free in blkdev_get()
  scsi: ufs-bsg: Fix runtime PM imbalance on error
  bnxt_en: Return from timer if interface is not in open state.
  afs: Fix the mapping of the UAEOVERFLOW abort code
  afs: Set error flag rather than return error from file status decode
  afs: Always include dir in bulk status fetch from afs_do_lookup()
  afs: Fix EOF corruption
  afs: afs_write_end() should change i_size under the right lock
  afs: Fix non-setting of mtime when writing into mmap
  powerpc: Fix kernel crash in show_instructions() w/DEBUG_VIRTUAL
  bcache: fix potential deadlock problem in btree_gc_coalesce
  ext4: stop overwrite the errcode in ext4_setup_super
  perf stat: Fix NULL pointer dereference
  perf report: Fix NULL pointer dereference in hists__fprintf_nr_sample_events()
  usb/ehci-platform: Set PM runtime as active on resume
  usb: host: ehci-platform: add a quirk to avoid stuck
  usb/xhci-plat: Set PM runtime as active on resume
  bpf: Fix memlock accounting for sock_hash
  iavf: fix speed reporting over virtchnl
  xdp: Fix xsk_generic_xmit errno
  nfs: set invalid blocks after NFSv4 writes
  nvme-pci: use simple suspend when a HMB is enabled
  net/filter: Permit reading NET in load_bytes_relative when MAC not set
  x86/idt: Keep spurious entries unset in system_vectors
  scsi: acornscsi: Fix an error handling path in acornscsi_probe()
  libbpf: Handle GCC noreturn-turned-volatile quirk
  drm/sun4i: hdmi ddc clk: Fix size of m divider
  tracing/probe: Fix bpf_task_fd_query() for kprobes and uprobes
  bpf, sockhash: Synchronize delete from bucket list on map free
  bpf/sockmap: Fix kernel panic at __tcp_bpf_recvmsg
  ASoC: rt5645: Add platform-data for Asus T101HA
  ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT10-A tablet
  ASoC: SOF: nocodec: conditionally set dpcm_capture/dpcm_playback flags
  ASoC: core: only convert non DPCM link to DPCM link
  afs: Fix memory leak in afs_put_sysnames()
  f2fs: don't return vmalloc() memory from f2fs_kmalloc()
  selftests/net: in timestamping, strncpy needs to preserve null byte
  drivers/perf: hisi: Fix wrong value for all counters enable
  i2c: icy: Fix build with CONFIG_AMIGA_PCMCIA=n
  NTB: ntb_test: Fix bug when counting remote files
  NTB: perf: Fix race condition when run with ntb_test
  NTB: perf: Fix support for hardware that doesn't have port numbers
  NTB: perf: Don't require one more memory window than number of peers
  NTB: Revert the change to use the NTB device dev for DMA allocations
  NTB: ntb_tool: reading the link file should not end in a NULL byte
  ntb_tool: pass correct struct device to dma_alloc_coherent
  ntb_perf: pass correct struct device to dma_alloc_coherent
  net: marvell: Fix OF_MDIO config check
  gfs2: fix use-after-free on transaction ail lists
  blktrace: fix endianness for blk_log_remap()
  blktrace: fix endianness in get_pdu_int()
  blktrace: use errno instead of bi_status
  selftests/vm/pkeys: fix alloc_random_pkey() to make it really random
  include/linux/bitops.h: avoid clang shift-count-overflow warnings
  lib/zlib: remove outdated and incorrect pre-increment optimization
  geneve: change from tx_error to tx_dropped on missing metadata
  crypto: omap-sham - add proper load balancing support for multicore
  drm/amd/display: Revalidate bandwidth before commiting DC updates
  nfsd: safer handling of corrupted c_type
  pinctrl: freescale: imx: Fix an error handling path in 'imx_pinctrl_probe()'
  pinctrl: imxl: Fix an error handling path in 'imx1_pinctrl_core_probe()'
  scsi: ufs: Don't update urgent bkops level when toggling auto bkops
  scsi: iscsi: Fix reference count leak in iscsi_boot_create_kobj
  gfs2: Allow lock_nolock mount to specify jid=X
  nfsd4: make drc_slab global, not per-net
  ceph: don't return -ESTALE if there's still an open file
  drm/nouveau/disp/gm200-: fix NV_PDISP_SOR_HDMI2_CTRL(n) selection
  openrisc: Fix issue with argument clobbering for clone/fork
  rxrpc: Adjust /proc/net/rxrpc/calls to display call->debug_id not user_ID
  mailbox: zynqmp-ipi: Fix NULL vs IS_ERR() check in zynqmp_ipi_mbox_probe()
  rtc: rv3028: Add missed check for devm_regmap_init_i2c()
  vfio/mdev: Fix reference count leak in add_mdev_supported_type
  ASoC: fsl_asrc_dma: Fix dma_chan leak when config DMA channel failed
  extcon: adc-jack: Fix an error handling path in 'adc_jack_probe()'
  powerpc/4xx: Don't unmap NULL mbase
  input: i8042 - Remove special PowerPC handling
  of: Fix a refcounting bug in __of_attach_node_sysfs()
  NFSv4.1 fix rpc_call_done assignment for BIND_CONN_TO_SESSION
  net: sunrpc: Fix off-by-one issues in 'rpc_ntop6'
  /dev/mem: Revoke mappings when a driver claims the region
  misc: xilinx-sdfec: improve get_user_pages_fast() error handling
  clk: ast2600: Fix AHB clock divider for A1
  clk: sprd: return correct type of value for _sprd_pll_recalc_rate
  KVM: PPC: Book3S: Fix some RCU-list locks
  KVM: PPC: Book3S HV: Ignore kmemleak false positives
  scsi: ufs-qcom: Fix scheduling while atomic issue
  clk: bcm2835: Fix return type of bcm2835_register_gate
  scsi: target: tcmu: Fix a use after free in tcmu_check_expired_queue_cmd()
  ASoC: fix incomplete error-handling in img_i2s_in_probe.
  powerpc/32s: Don't warn when mapping RO data ROX.
  mfd: stmfx: Disable IRQ in suspend to avoid spurious interrupt
  mfd: stmfx: Fix stmfx_irq_init error path
  mfd: stmfx: Reset chip on resume as supply was disabled
  x86/apic: Make TSC deadline timer detection message visible
  RDMA/iw_cxgb4: cleanup device debugfs entries on ULD remove
  scripts: headers_install: Exit with error on config leak
  usb: gadget: Fix issue with config_ep_by_speed function
  usb: gadget: fix potential double-free in m66592_probe.
  usb: gadget: lpc32xx_udc: don't dereference ep pointer before null check
  USB: gadget: udc: s3c2410_udc: Remove pointless NULL check in s3c2410_udc_nuke
  usb: dwc2: gadget: move gadget resume after the core is in L0 state
  watchdog: da9062: No need to ping manually before setting timeout
  IB/cma: Fix ports memory leak in cma_configfs
  PCI: amlogic: meson: Don't use FAST_LINK_MODE to set up link
  PCI: dwc: Fix inner MSI IRQ domain registration
  PCI/PTM: Inherit Switch Downstream Port PTM settings from Upstream Port
  dm zoned: return NULL if dmz_get_zone_for_reclaim() fails to find a zone
  powerpc/64s/pgtable: fix an undefined behaviour
  arm64: tegra: Fix flag for 64-bit resources in 'ranges' property
  arm64: tegra: Fix ethernet phy-mode for Jetson Xavier
  fuse: copy_file_range should truncate cache
  fuse: fix copy_file_range cache issues
  firmware: imx: scu: Fix possible memory leak in imx_scu_probe()
  scsi: target: tcmu: Userspace must not complete queued commands
  RDMA/hns: Fix cmdq parameter of querying pf timer resource
  RDMA/hns: Bugfix for querying qkey
  clk: samsung: exynos5433: Add IGNORE_UNUSED flag to sclk_i2s1
  fpga: dfl: afu: Corrected error handling levels
  tty: n_gsm: Fix bogus i++ in gsm_data_kick
  USB: host: ehci-mxc: Add error handling in ehci_mxc_drv_probe()
  ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT8-A tablet
  drm/msm/mdp5: Fix mdp5_init error path for failed mdp5_kms allocation
  usb/ohci-platform: Fix a warning when hibernating
  vfio-pci: Mask cap zero
  powerpc/ps3: Fix kexec shutdown hang
  drivers: phy: sr-usb: do not use internal fsm for USB2 phy init
  powerpc/pseries/ras: Fix FWNMI_VALID off by one
  powerpc/64s/exception: Fix machine check no-loss idle wakeup
  ipmi: use vzalloc instead of kmalloc for user creation
  habanalabs: increase timeout during reset
  PCI/PM: Assume ports without DLL Link Active train links in 100 ms
  HID: Add quirks for Trust Panora Graphic Tablet
  ALSA: usb-audio: Add duplex sound support for USB devices using implicit feedback
  tty: n_gsm: Fix waking up upper tty layer when room available
  tty: n_gsm: Fix SOF skipping
  powerpc/64: Don't initialise init_task->thread.regs
  PCI: Fix pci_register_host_bridge() device_register() error handling
  clk: ti: composite: fix memory leak
  USB: ohci-sm501: fix error return code in ohci_hcd_sm501_drv_probe()
  dlm: remove BUG() before panic()
  pinctrl: rockchip: fix memleak in rockchip_dt_node_to_map
  ASoC: ti: omap-mcbsp: Fix an error handling path in 'asoc_mcbsp_probe()'
  ASoC: ux500: mop500: Fix some refcounted resources issues
  SoC: rsnd: add interrupt support for SSI BUSIF buffer
  scsi: mpt3sas: Fix double free warnings
  scsi: target: loopback: Fix READ with data and sensebytes
  arm64: dts: msm8996: Fix CSI IRQ types
  ASoC: SOF: core: fix error return code in sof_probe_continue()
  power: supply: smb347-charger: IRQSTAT_D is volatile
  power: supply: lp8788: Fix an error handling path in 'lp8788_charger_probe()'
  ALSA: firewire-lib: fix invalid assignment to union data for directional parameter
  scsi: qla2xxx: Fix warning after FC target reset
  PCI/ASPM: Allow ASPM on links to PCIe-to-PCI/PCI-X Bridges
  PCI: rcar: Fix incorrect programming of OB windows
  drivers: base: Fix NULL pointer exception in __platform_driver_probe() if a driver developer is foolish
  serial: amba-pl011: Make sure we initialize the port.lock spinlock
  i2c: pxa: fix i2c_pxa_scream_blue_murder() debug output
  PCI: v3-semi: Fix a memory leak in v3_pci_probe() error handling paths
  staging: sm750fb: add missing case while setting FB_VISUAL
  staging: wilc1000: Increase the size of wid_list array
  usb: dwc3: gadget: Properly handle failed kick_transfer
  usb: dwc3: gadget: Properly handle ClearFeature(halt)
  HID: intel-ish-hid: avoid bogus uninitialized-variable warning
  soundwire: slave: don't init debugfs on device registration error
  ASoC: max98373: reorder max98373_reset() in resume
  clk: meson: meson8b: Don't rely on u-boot to init all GP_PLL registers
  thermal/drivers/ti-soc-thermal: Avoid dereferencing ERR_PTR
  gpio: pca953x: fix handling of automatic address incrementing
  clk: meson: meson8b: Fix the vclk_div{1, 2, 4, 6, 12}_en gate bits
  clk: meson: meson8b: Fix the polarity of the RESET_N lines
  clk: meson: meson8b: Fix the first parent of vid_pll_in_sel
  slimbus: ngd: get drvdata from correct device
  tty: hvc: Fix data abort due to race in hvc_open
  s390/qdio: put thinint indicator after early error
  ALSA: usb-audio: Fix racy list management in output queue
  ALSA: usb-audio: Improve frames size computation
  staging: gasket: Fix mapping refcnt leak when register/store fails
  staging: gasket: Fix mapping refcnt leak when put attribute fails
  firmware: qcom_scm: fix bogous abuse of dma-direct internals
  arm64: dts: qcom: fix pm8150 gpio interrupts
  virtiofs: schedule blocking async replies in separate worker
  pinctrl: rza1: Fix wrong array assignment of rza1l_swio_entries
  scsi: qedf: Fix crash when MFW calls for protocol stats while function is still probing
  gpio: dwapb: Append MODULE_ALIAS for platform driver
  RDMA/mlx5: Fix udata response upon SRQ creation
  ARM: dts: sun8i-h2-plus-bananapi-m2-zero: Fix led polarity
  arm64: dts: qcom: msm8916: remove unit name for thermal trip points
  scsi: qedi: Do not flush offload work if ARP not resolved
  arm64: dts: mt8173: fix unit name warnings
  staging: greybus: fix a missing-check bug in gb_lights_light_config()
  x86/purgatory: Disable various profiling and sanitizing options
  apparmor: fix nnp subset test for unconfined
  scsi: ibmvscsi: Don't send host info in adapter info MAD after LPM
  scsi: sr: Fix sr_probe() missing deallocate of device minor
  bpf, sockhash: Fix memory leak when unlinking sockets in sock_hash_free
  ASoC: meson: add missing free_irq() in error path
  f2fs: handle readonly filesystem in f2fs_ioc_shutdown()
  apparmor: check/put label on apparmor_sk_clone_security()
  net: dsa: lantiq_gswip: fix and improve the unsupported interface error
  apparmor: fix introspection of of task mode for unconfined tasks
  mksysmap: Fix the mismatch of '.L' symbols in System.map
  NTB: Fix the default port and peer numbers for legacy drivers
  NTB: ntb_pingpong: Choose doorbells based on port number
  yam: fix possible memory leak in yam_init_driver
  sparc32: mm: Don't try to free page-table pages if ctor() fails
  pwm: img: Call pm_runtime_put() in pm_runtime_get_sync() failed case
  powerpc/crashkernel: Take "mem=" option into account
  ASoC: qcom: q6asm-dai: kCFI fix
  cifs: set up next DFS target before generic_ip_connect()
  RDMA/core: Fix several reference count leaks.
  PCI: vmd: Filter resource type bits from shadow register
  nfsd: Fix svc_xprt refcnt leak when setup callback client failed
  powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run
  IB/mlx5: Fix DEVX support for MLX5_CMD_OP_INIT2INIT_QP command
  clk: clk-flexgen: fix clock-critical handling
  scsi: vhost: Notify TCM about the maximum sg entries supported per command
  scsi: lpfc: Fix lpfc_nodelist leak when processing unsolicited event
  clk: zynqmp: fix memory leak in zynqmp_register_clocks
  scsi: cxgb3i: Fix some leaks in init_act_open()
  mfd: wm8994: Fix driver operation if loaded as modules
  powerpc/ptdump: Add _PAGE_COHERENT flag
  usb: gadget: core: sync interrupt before unbind the udc
  gpio: dwapb: Call acpi_gpiochip_free_interrupts() on GPIO chip de-registration
  m68k/PCI: Fix a memory leak in an error handling path
  PCI: pci-bridge-emul: Fix PCIe bit conflicts
  scsi: hisi_sas: Do not reset phy timer to wait for stray phy up
  RDMA/mlx5: Add init2init as a modify command
  coresight: tmc: Fix TMC mode read in tmc_read_prepare_etb()
  vfio/pci: fix memory leaks in alloc_perm_bits()
  arm64: dts: fvp/juno: Fix node address fields
  ps3disk: use the default segment boundary
  PCI: aardvark: Don't blindly enable ASPM L0s and don't write to read-only register
  arm64: dts: fvp: Fix GIC child nodes
  ASoC: SOF: Do nothing when DSP PM callbacks are not set
  clk: renesas: cpg-mssr: Fix STBCR suspend/resume handling
  pinctrl: ocelot: Fix GPIO interrupt decoding on Jaguar2
  arm64: dts: juno: Fix GIC child nodes
  arm64: dts: armada-3720-turris-mox: fix SFP binding
  arm64: dts: armada-3720-turris-mox: forbid SDR104 on SDIO for FCC purposes
  dm mpath: switch paths in dm_blk_ioctl() code path
  misc: fastrpc: fix potential fastrpc_invoke_ctx leak
  misc: fastrpc: Fix an incomplete memory release in fastrpc_rpmsg_probe()
  serial: 8250: Fix max baud limit in generic 8250 port
  usblp: poison URBs upon disconnect
  clk: samsung: Mark top ISP and CAM clocks on Exynos542x as critical
  remoteproc: qcom_q6v5_mss: map/unmap mpss segments before/after use
  i2c: pxa: clear all master action bits in i2c_pxa_stop_message()
  f2fs: report delalloc reserve as non-free in statfs for project quota
  iio: bmp280: fix compensation of humidity
  rtc: mc13xxx: fix a double-unlock issue
  powerpc/kasan: Fix stack overflow by increasing THREAD_SHIFT
  Input: edt-ft5x06 - fix get_default register write access
  scsi: qla2xxx: Fix issue with adapter's stopping state
  PCI: Allow pci_resize_resource() for devices on root bus
  ALSA: isa/wavefront: prevent out of bounds write in ioctl
  ALSA: hda/realtek - Introduce polarity for micmute LED GPIO
  arm64: dts: meson: fixup SCP sram nodes
  scsi: qedi: Check for buffer overflow in qedi_set_path()
  scsi: core: free sgtables in case command setup fails
  ARM: dts: stm32: Add missing ethernet PHY reset on AV96
  ARM: integrator: Add some Kconfig selections
  ASoC: davinci-mcasp: Fix dma_chan refcnt leak when getting dma type
  ARM: dts: renesas: Fix IOMMU device node names
  backlight: lp855x: Ensure regulators are disabled on probe failure
  ASoC: fsl_esai: Disable exception interrupt before scheduling tasklet
  clk: qcom: msm8916: Fix the address location of pll->config_reg
  remoteproc: Fix IDR initialisation in rproc_alloc()
  iio: pressure: bmp280: Tolerate IRQ before registering
  ASoC: SOF: imx8: Fix randbuild error
  i2c: piix4: Detect secondary SMBus controller on AMD AM4 chipsets
  ASoC: tegra: tegra_wm8903: Support nvidia, headset property
  clk: sunxi: Fix incorrect usage of round_down()
  power: supply: bq24257_charger: Replace depends on REGMAP_I2C with select
  ANDROID: abi_gki_aarch64_qcom_whitelist: Add reboot_mode
  ANDROID: Update kabi for db845c (following moving pinctrl to a module)
  ANDROID: GKI: Remove msm_pinctrl-* symbols from the abi lists
  ANDROID: db845c_gki.fragment: Add PINCTRL_MSM=m
  ANDROID: GKI: Remove PINCTRL_MSM as built in driver
  ANDROID: pinctrl: qcom: Allow pinctrl-msm code to be loadable as a module
  ANDROID: GKI: update ABI after struct vm_fault changes
  ANDROID: GKI: mm: add struct vm_fault fields for SPECULATIVE_PAGE_FAULTS
  FROMLIST: f2fs: fix use-after-free when accessing bio->bi_crypt_context
  ANDROID: GKI: Update ABI for incremental fs
  ANDROID: GKI: Update whitelist and defconfig for incfs
  ANDROID: gki_defconfig: x86: Enable KERNEL_LZ4
  ANDROID: GKI: scripts: Makefile: update the lz4 command
  ANDROID: Use depmod from the hermetic toolchain
  ANDROID: ABI/Whitelist: update symbols of unisoc whitelist
  Linux 5.4.48
  perf symbols: Fix kernel maps for kcore and eBPF
  perf symbols: Fix debuginfo search for Ubuntu
  perf probe: Check address correctness by map instead of _etext
  perf probe: Fix to check blacklist address correctly
  perf probe: Do not show the skipped events
  f2fs: fix checkpoint=disable:%u%%
  w1: omap-hdq: cleanup to add missing newline for some dev_dbg
  mtd: rawnand: tmio: Fix the probe error path
  mtd: rawnand: mtk: Fix the probe error path
  mtd: rawnand: pasemi: Fix the probe error path
  mtd: rawnand: plat_nand: Fix the probe error path
  mtd: rawnand: sunxi: Fix the probe error path
  mtd: rawnand: oxnas: Fix the probe error path
  mtd: rawnand: socrates: Fix the probe error path
  mtd: rawnand: orion: Fix the probe error path
  mtd: rawnand: xway: Fix the probe error path
  mtd: rawnand: ingenic: Fix the probe error path
  mtd: rawnand: sharpsl: Fix the probe error path
  mtd: rawnand: diskonchip: Fix the probe error path
  mtd: rawnand: brcmnand: fix hamming oob layout
  mtd: rawnand: onfi: Fix redundancy detection check
  mtd: rawnand: Fix nand_gpio_waitrdy()
  sunrpc: clean up properly in gss_mech_unregister()
  sunrpc: svcauth_gss_register_pseudoflavor must reject duplicate registrations.
  kbuild: force to build vmlinux if CONFIG_MODVERSION=y
  powerpc/64s: Save FSCR to init_task.thread.fscr after feature init
  powerpc/64s: Don't let DT CPU features set FSCR_DSCR
  powerpc/32: Disable KASAN with pages bigger than 16k
  powerpc/kasan: Fix shadow pages allocation failure
  powerpc/kasan: Fix issues by lowering KASAN_SHADOW_END
  powerpc/32s: Fix another build failure with CONFIG_PPC_KUAP_DEBUG
  drivers/macintosh: Fix memleak in windfarm_pm112 driver
  ARM: dts: s5pv210: Set keep-power-in-suspend for SDHCI1 on Aries
  ARM: dts: at91: sama5d2_ptc_ek: fix vbus pin
  ARM: dts: exynos: Fix GPIO polarity for thr GalaxyS3 CM36651 sensor's bus
  soc/tegra: pmc: Select GENERIC_PINCONF
  ARM: tegra: Correct PL310 Auxiliary Control Register initialization
  kernel/cpu_pm: Fix uninitted local in cpu_pm
  powerpc/fadump: Account for memory_limit while reserving memory
  powerpc/fadump: consider reserved ranges while reserving memory
  powerpc/fadump: use static allocation for reserved memory ranges
  alpha: fix memory barriers so that they conform to the specification
  dm crypt: avoid truncating the logical block size
  sparc64: fix misuses of access_process_vm() in genregs32_[sg]et()
  sparc32: fix register window handling in genregs32_[gs]et()
  gnss: sirf: fix error return code in sirf_probe()
  pinctrl: samsung: Save/restore eint_mask over suspend for EINT_TYPE GPIOs
  pinctrl: samsung: Correct setting of eint wakeup mask on s5pv210
  power: supply: core: fix memory leak in HWMON error path
  power: supply: core: fix HWMON temperature labels
  power: vexpress: add suppress_bind_attrs to true
  EDAC/amd64: Add AMD family 17h model 60h PCI IDs
  hwmon: (k10temp) Add AMD family 17h model 60h PCI match
  igb: Report speed and duplex as unknown when device is runtime suspended
  clk: mediatek: assign the initial value to clk_init_data of mtk_mux
  media: ov5640: fix use of destroyed mutex
  b43_legacy: Fix connection problem with WPA3
  b43: Fix connection problem with WPA3
  b43legacy: Fix case where channel status is corrupted
  Bluetooth: hci_bcm: fix freeing not-requested IRQ
  serial: 8250: Avoid error message on reprobe
  media: cedrus: Program output format during each run
  media: go7007: fix a miss of snd_card_free
  carl9170: remove P2P_GO support
  e1000e: Relax condition to trigger reset for ME workaround
  e1000e: Disable TSO for buffer overrun workaround
  PCI: Program MPS for RCiEP devices
  ima: Set again build_ima_appraise variable
  ima: Remove redundant policy rule set in add_rules()
  x86/amd_nb: Add AMD family 17h model 60h PCI IDs
  serial: 8250_pci: Move Pericom IDs to pci_ids.h
  PCI: Add Loongson vendor ID
  x86/amd_nb: Add Family 19h PCI IDs
  PCI: vmd: Add device id for VMD device 8086:9A0B
  PCI: Add ACS quirk for Intel Root Complex Integrated Endpoints
  PCI: Avoid FLR for AMD Starship USB 3.0
  PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0
  PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect
  ext4: fix race between ext4_sync_parent() and rename()
  ext4: fix error pointer dereference
  ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max
  evm: Fix possible memory leak in evm_calc_hmac_or_hash()
  ima: Remove __init annotation from ima_pcrread()
  ima: Call ima_calc_boot_aggregate() in ima_eventdigest_init()
  ima: Directly assign the ima_default_policy pointer to ima_rules
  ima: Evaluate error in init_ima()
  ima: Switch to ima_hash_algo for boot aggregate
  ima: Fix ima digest hash table key calculation
  mm: call cond_resched() from deferred_init_memmap()
  mm/pagealloc.c: call touch_nmi_watchdog() on max order boundaries in deferred init
  mm: initialize deferred pages with interrupts enabled
  mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked()
  powerpc/mm: Fix conditions to perform MMU specific management by blocks on PPC32.
  btrfs: fix space_info bytes_may_use underflow during space cache writeout
  btrfs: fix space_info bytes_may_use underflow after nocow buffered write
  btrfs: fix wrong file range cleanup after an error filling dealloc range
  btrfs: fix error handling when submitting direct I/O bio
  btrfs: force chunk allocation if our global rsv is larger than metadata
  btrfs: send: emit file capabilities after chown
  btrfs: include non-missing as a qualifier for the latest_bdev
  btrfs: free alien device after device add
  string.h: fix incompatibility between FORTIFY_SOURCE and KASAN
  kasan: stop tests being eliminated as dead code with FORTIFY_SOURCE
  selftests/bpf, flow_dissector: Close TAP device FD after the test
  bpf: Fix running sk_skb program types with ktls
  bpf: Refactor sockmap redirect code so its easy to reuse
  bpf: Fix map permissions check
  libbpf: Fix perf_buffer__free() API for sparse allocs
  platform/x86: asus_wmi: Reserve more space for struct bias_args
  platform/x86: intel-vbtn: Only blacklist SW_TABLET_MODE on the 9 / "Laptop" chasis-type
  platform/x86: intel-hid: Add a quirk to support HP Spectre X2 (2015)
  platform/x86: hp-wmi: Convert simple_strtoul() to kstrtou32()
  cpuidle: Fix three reference count leaks
  spi: dw: Return any value retrieved from the dma_transfer callback
  mmc: sdhci-esdhc-imx: fix the mask for tuning start point
  iwlwifi: mvm: fix aux station leak
  ixgbe: fix signed-integer-overflow warning
  ice: fix potential double free in probe unrolling
  mmc: via-sdmmc: Respect the cmd->busy_timeout from the mmc core
  staging: greybus: sdio: Respect the cmd->busy_timeout from the mmc core
  mmc: sdhci-msm: Set SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12 quirk
  bcache: fix refcount underflow in bcache_device_free()
  MIPS: Fix IRQ tracing when call handle_fpe() and handle_msa_fpe()
  PCI: Don't disable decoding when mmio_always_on is set
  macvlan: Skip loopback packets in RX handler
  btrfs: qgroup: mark qgroup inconsistent if we're inherting snapshot to a new qgroup
  btrfs: improve global reserve stealing logic
  m68k: mac: Don't call via_flush_cache() on Mac IIfx
  MIPS: tools: Fix resource leak in elf-entry.c
  x86/mm: Stop printing BRK addresses
  selftests/bpf: CONFIG_IPV6_SEG6_BPF required for test_seg6_loop.o
  drm/amdgpu: Sync with VM root BO when switching VM to CPU update mode
  drm/amd/powerpay: Disable gfxoff when setting manual mode on picasso and raven
  crypto: stm32/crc32 - fix multi-instance
  crypto: stm32/crc32 - fix run-time self test issue.
  crypto: stm32/crc32 - fix ext4 chksum BUG_ON()
  mips: Add udelay lpj numbers adjustment
  mips: MAAR: Use more precise address mask
  sched: Defend cfs and rt bandwidth quota against overflow
  x86/boot: Correct relocation destination on old linkers
  kgdboc: Use a platform device to handle tty drivers showing up late
  mwifiex: Fix memory corruption in dump_station
  rtlwifi: Fix a double free in _rtl_usb_tx_urb_setup()
  net/mlx5e: IPoIB, Drop multicast packets that this interface sent
  veth: Adjust hard_start offset on redirect XDP frames
  iocost: don't let vrate run wild while there's no saturation signal
  raid5: remove gfp flags from scribble_alloc()
  md: don't flush workqueue unconditionally in md_open
  mt76: avoid rx reorder buffer overflow
  drm/mcde: dsi: Fix return value check in mcde_dsi_bind()
  net: qed*: Reduce RX and TX default ring count when running inside kdump kernel
  wcn36xx: Fix error handling path in 'wcn36xx_probe()'
  ath10k: Remove msdu from idr when management pkt send fails
  nvme-tcp: use bh_lock in data_ready
  nvme-pci: align io queue count with allocted nvme_queue in nvme_probe
  nvme: refine the Qemu Identify CNS quirk
  iwlwifi: avoid debug max amsdu config overwriting itself
  platform/x86: intel-vbtn: Also handle tablet-mode switch on "Detachable" and "Portable" chassis-types
  platform/x86: intel-vbtn: Do not advertise switches to userspace if they are not there
  platform/x86: intel-vbtn: Split keymap into buttons and switches parts
  platform/x86: intel-vbtn: Use acpi_evaluate_integer()
  xfs: fix duplicate verification from xfs_qm_dqflush()
  xfs: reset buffer write failure state on successful completion
  kgdb: Fix spurious true from in_dbg_master()
  mips: cm: Fix an invalid error code of INTVN_*_ERR
  MIPS: Truncate link address into 32bit for 32bit kernel
  Crypto/chcr: fix for ccm(aes) failed test
  xfs: clean up the error handling in xfs_swap_extents
  libertas_tf: avoid a null dereference in pointer priv
  powerpc/spufs: fix copy_to_user while atomic
  net: allwinner: Fix use correct return type for ndo_start_xmit()
  media: cec: silence shift wrapping warning in __cec_s_log_addrs()
  drivers: net: davinci_mdio: fix potential NULL dereference in davinci_mdio_probe()
  selinux: fix error return code in policydb_read()
  net: lpc-enet: fix error return code in lpc_mii_init()
  iocost_monitor: drop string wrap around numbers when outputting json
  drivers/perf: hisi: Fix typo in events attribute array
  sched/core: Fix illegal RCU from offline CPUs
  exit: Move preemption fixup up, move blocking operations down
  lib/mpi: Fix 64-bit MIPS build with Clang
  net: bcmgenet: Fix WoL with password after deep sleep
  net: bcmgenet: set Rx mode before starting netif
  selftests/bpf: Fix memory leak in extract_build_id()
  netfilter: nft_nat: return EOPNOTSUPP if type or flags are not supported
  dpaa2-eth: fix return codes used in ndo_setup_tc
  Drivers: hv: vmbus: Always handle the VMBus messages on CPU0
  audit: fix a net reference leak in audit_list_rules_send()
  Bluetooth: btbcm: Add 2 missing models to subver tables
  ath10k: add flush tx packets for SDIO chip
  MIPS: Make sparse_init() using top-down allocation
  media: platform: fcp: Set appropriate DMA parameters
  media: dvb: return -EREMOTEIO on i2c transfer failure.
  audit: fix a net reference leak in audit_send_reply()
  drm/mediatek: set dpi pin mode to gpio low to avoid leakage current
  dt-bindings: display: mediatek: control dpi pins mode to avoid leakage
  e1000: Distribute switch variables for initialization
  tools api fs: Make xxx__mountpoint() more scalable
  regulator: qcom-rpmh: Fix typos in pm8150 and pm8150l
  brcmfmac: fix wrong location to get firmware feature
  spi: Respect DataBitLength field of SpiSerialBusV2() ACPI resource
  media: staging/intel-ipu3: Implement lock for stream on/off operations
  ath10k: fix kernel null pointer dereference
  staging: android: ion: use vmap instead of vm_map_ram
  x86: fix vmap arguments in map_irq_stack
  net: vmxnet3: fix possible buffer overflow caused by bad DMA value in vmxnet3_get_rss()
  x86/kvm/hyper-v: Explicitly align hcall param for kvm_hyperv_exit
  spi: dw: Fix Rx-only DMA transfers
  Bluetooth: btmtkuart: Improve exception handling in btmtuart_probe()
  mmc: meson-mx-sdio: trigger a soft reset after a timeout or CRC error
  ice: Fix for memory leaks and modify ICE_FREE_CQ_BUFS
  ice: Fix memory leak
  batman-adv: Revert "disable ethtool link speed detection when auto negotiation off"
  ARM: 8978/1: mm: make act_mm() respect THREAD_SIZE
  btrfs: do not ignore error from btrfs_next_leaf() when inserting checksums
  btrfs: account for trans_block_rsv in may_commit_transaction
  media: dvbdev: Fix tuner->demod media controller link
  clocksource: dw_apb_timer_of: Fix missing clockevent timers
  clocksource: dw_apb_timer: Make CPU-affiliation being optional
  spi: dw: Enable interrupts in accordance with DMA xfer mode
  mips: Fix cpu_has_mips64r1/2 activation for MIPS32 CPUs
  ACPI/IORT: Fix PMCG node single ID mapping handling
  pmu/smmuv3: Clear IRQ affinity hint on device removal
  kgdb: Prevent infinite recursive entries to the debugger
  kgdb: Disable WARN_CONSOLE_UNLOCKED for all kgdb
  Bluetooth: Add SCO fallback for invalid LMP parameters error
  MIPS: Loongson: Build ATI Radeon GPU driver as module
  platform/x86: dell-laptop: don't register micmute LED if there is no token
  ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K
  lockdown: Allow unprivileged users to see lockdown status
  drm: rcar-du: Set primary plane zpos immutably at initializing
  block: reset mapping if failed to update hardware queue count
  arm64: insn: Fix two bugs in encoding 32-bit logical immediates
  block: alloc map and request for new hardware queue
  ACPICA: Dispatcher: add status checks
  spi: dw: Zero DMA Tx and Rx configurations on stack
  rtw88: fix an issue about leak system resources
  media: staging: ipu3: Fix stale list entries on parameter queue failure
  arm64: cacheflush: Fix KGDB trap detection
  ath10k: remove the max_sched_scan_reqs value
  efi/libstub/x86: Work around LLVM ELF quirk build regression
  net: ena: fix error returning in ena_com_get_hash_function()
  net: atlantic: make hw_get_regs optional
  sched/fair: Refill bandwidth before scaling
  x86,smap: Fix smap_{save,restore}() alternatives
  spi: pxa2xx: Apply CS clk quirk to BXT
  libbpf: Fix memory leak and possible double-free in hashmap__clear
  arm64/kernel: Fix range on invalidating dcache for boot page tables
  drm/amdgpu: Init data to avoid oops while reading pp_num_states.
  spi: spi-mem: Fix Dual/Quad modes on Octal-capable devices
  objtool: Ignore empty alternatives
  media: si2157: Better check for running tuner in init
  media: vicodec: Fix error codes in probe function
  crypto: ccp -- don't "select" CONFIG_DMADEVICES
  media: imx: imx7-mipi-csis: Cleanup and fix subdev pad format handling
  media: staging: imgu: do not hold spinlock during freeing mmu page table
  drm: bridge: adv7511: Extend list of audio sample rates
  ath10k: Fix the race condition in firmware dump work queue
  drm/amdgpu: fix and cleanup amdgpu_gem_object_close v4
  ACPI: GED: use correct trigger type field in _Exx / _Lxx handling
  writeback: Drop I_DIRTY_TIME_EXPIRE
  writeback: Fix sync livelock due to b_dirty_time processing
  writeback: Avoid skipping inode writeback
  writeback: Protect inode->i_io_list with inode->i_lock
  Revert "writeback: Avoid skipping inode writeback"
  ANDROID: GKI: enable some more USB configfs options
  Linux 5.4.47
  KVM: arm64: Save the host's PtrAuth keys in non-preemptible context
  KVM: arm64: Synchronize sysreg state on injecting an AArch32 exception
  xen/pvcalls-back: test for errors when calling backend_connect()
  block/floppy: fix contended case in floppy_queue_rq()
  mmc: sdio: Fix several potential memory leaks in mmc_sdio_init_card()
  mmc: sdio: Fix potential NULL pointer error in mmc_sdio_init_card()
  ARM: dts: at91: sama5d2_ptc_ek: fix sdmmc0 node description
  mmc: uniphier-sd: call devm_request_irq() after tmio_mmc_host_probe()
  mmc: tmio: Further fixup runtime PM management at remove
  mmc: mmci_sdmmc: fix DMA API warning overlapping mappings
  mmc: sdhci-msm: Clear tuning done flag while hs400 tuning
  agp/intel: Reinforce the barrier after GTT updates
  perf: Add cond_resched() to task_function_call()
  fat: don't allow to mount if the FAT length == 0
  mm/slub: fix a memory leak in sysfs_slab_add()
  drm/vkms: Hold gem object while still in-use
  Smack: slab-out-of-bounds in vsscanf
  ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb
  ath9x: Fix stack-out-of-bounds Write in ath9k_hif_usb_rx_cb
  ath9k: Fix use-after-free Write in ath9k_htc_rx_msg
  ath9k: Fix use-after-free Read in ath9k_wmi_ctrl_rx
  ath9k: Fix use-after-free Read in htc_connect_service
  selftests/ftrace: Return unsupported if no error_log file
  scsi: lpfc: Fix negation of else clause in lpfc_prep_node_fc4type
  scsi: megaraid_sas: TM command refire leads to controller firmware crash
  KVM: arm64: Make vcpu_cp1x() work on Big Endian hosts
  KVM: arm64: Stop writing aarch32's CSSELR into ACTLR
  KVM: MIPS: Fix VPN2_MASK definition for variable cpu_vmbits
  KVM: MIPS: Define KVM_ENTRYHI_ASID to cpu_asid_mask(&boot_cpu_data)
  KVM: nVMX: Consult only the "basic" exit reason when routing nested exit
  KVM: nSVM: leave ASID aside in copy_vmcb_control_area
  KVM: nSVM: fix condition for filtering async PF
  KVM: nVMX: Skip IBPB when switching between vmcs01 and vmcs02
  video: fbdev: w100fb: Fix a potential double free.
  video: vt8500lcdfb: fix fallthrough warning
  EDAC/skx: Use the mcmtr register to retrieve close_pg/bank_xor_enable
  cpufreq: Fix up cpufreq_boost_set_sw()
  remoteproc: Fix and restore the parenting hierarchy for vdev
  remoteproc: Fall back to using parent memory pool if no dedicated available
  proc: Use new_inode not new_inode_pseudo
  ovl: initialize error in ovl_copy_xattr
  net/mlx5e: Fix repeated XSK usage on one channel
  net/mlx5: Fix fatal error handling during device load
  net/mlx5: drain health workqueue in case of driver load error
  selftests/net: in rxtimestamp getopt_long needs terminating null entry
  dccp: Fix possible memleak in dccp_init and dccp_fini
  crypto: virtio: Fix dest length calculation in __virtio_crypto_skcipher_do_req()
  crypto: virtio: Fix src/dst scatterlist calculation in __virtio_crypto_skcipher_do_req()
  crypto: virtio: Fix use-after-free in virtio_crypto_skcipher_finalize_req()
  firmware: imx: scu: Fix corruption of header
  firmware: imx-scu: Support one TX and one RX
  firmware: imx: warn on unexpected RX
  x86/{mce,mm}: Unmap the entire page if the whole page is affected and poisoned
  crypto: drbg - fix error return code in drbg_alloc_state()
  crypto: algapi - Avoid spurious modprobe on LOADED
  crypto: cavium/nitrox - Fix 'nitrox_get_first_device()' when ndevlist is fully iterated
  gup: document and work around "COW can break either way" issue
  PM: runtime: clk: Fix clk_pm_runtime_get() error path
  spi: bcm-qspi: when tx/rx buffer is NULL set to 0
  spi: bcm-qspi: Handle clock probe deferral
  spi: bcm2835aux: Fix controller unregister order
  spi: bcm2835: Fix controller unregister order
  spi: pxa2xx: Fix runtime PM ref imbalance on probe error
  spi: pxa2xx: Fix controller unregister order
  spi: Fix controller unregister order
  spi: dw: Fix controller unregister order
  nilfs2: fix null pointer dereference at nilfs_segctor_do_construct()
  lib/lzo: fix ambiguous encoding bug in lzo-rle
  arm64: acpi: fix UBSAN warning
  ACPI: PM: Avoid using power resources if there are none for D0
  ACPI: GED: add support for _Exx / _Lxx handler methods
  ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe()
  ACPI: sysfs: Fix reference count leak in acpi_sysfs_add_hotplug_profile()
  ALSA: usb-audio: Add vendor, product and profile name for HP Thunderbolt Dock
  ALSA: usb-audio: Fix inconsistent card PM state after resume
  ALSA: pcm: fix snd_pcm_link() lockdep splat
  ALSA: pcm: disallow linking stream to itself
  ALSA: hda/realtek - add a pintbl quirk for several Lenovo machines
  ALSA: fireface: fix configuration error for nominal sampling transfer frequency
  ALSA: es1688: Add the missed snd_card_free()
  watchdog: imx_sc_wdt: Fix reboot on crash
  smb3: add indatalen that can be a non-zero value to calculation of credit charge in smb2 ioctl
  smb3: fix incorrect number of credits when ioctl MaxOutputResponse > 64K
  efi/efivars: Add missing kobject_put() in sysfs entry creation error path
  io_uring: use kvfree() in io_sqe_buffer_register()
  ASoC: max9867: fix volume controls
  powerpc/ptdump: Properly handle non standard page size
  KVM: x86: Fix APIC page invalidation race
  KVM: x86: respect singlestep when emulating instruction
  KVM: x86/mmu: Set mmio_value to '0' if reserved #PF can't be generated
  perf/x86/intel: Add more available bits for OFFCORE_RESPONSE of Intel Tremont
  x86/reboot/quirks: Add MacBook6,1 reboot quirk
  x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branches.
  x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanced IBRS.
  x86/speculation: Prevent rogue cross-process SSBD shutdown
  x86/PCI: Mark Intel C620 MROMs as having non-compliant BARs
  x86_64: Fix jiffies ODR violation
  sctp: fix refcount bug in sctp_wfree
  sctp: fix possibly using a bad saddr with a given dst
  iwlwifi: mvm: fix NVM check for 3168 devices
  ipv4: fix a RCU-list lock in fib_triestat_seq_show
  aio: fix async fsync creds
  fanotify: fix ignore mask logic for events on child and on dir
  selftests: fix flower parent qdisc
  mm: add kvfree_sensitive() for freeing sensitive data objects
  perf probe: Accept the instance number of kretprobe event
  PCI/PM: Adjust pcie_wait_for_link_delay() for caller delay
  KVM: x86: only do L1TF workaround on affected processors
  x86/cpu/amd: Make erratum #1054 a legacy erratum
  s390/pci: Log new handle in clp_disable_fh()
  padata: add separate cpuhp node for CPUHP_PADATA_DEAD
  RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated
  smack: avoid unused 'sip' variable warning
  ath9k_htc: Silence undersized packet warnings
  spi: dw: Fix native CS being unset
  powerpc/xive: Clear the page tables for the ESB IO mapping
  drivers/net/ibmvnic: Update VNIC protocol version reporting
  gfs2: Even more gfs2_find_jhead fixes
  csky: Fixup abiv2 syscall_trace break a4 & a5
  Input: synaptics - add a second working PNP_ID for Lenovo T470s
  sched/fair: Don't NUMA balance for kthreads
  ARM: 8977/1: ptrace: Fix mask for thumb breakpoint hook
  Input: mms114 - fix handling of mms345l
  elfnote: mark all .note sections SHF_ALLOC
  bpf: Support llvm-objcopy for vmlinux BTF
  vxlan: Avoid infinite loop when suppressing NS messages with invalid options
  bridge: Avoid infinite loop when suppressing NS messages with invalid options
  tun: correct header offsets in napi frags mode
  net_failover: fixed rollback in net_failover_open()
  mlxsw: core: Use different get_trend() callbacks for different thermal zones
  ipv6: fix IPV6_ADDRFORM operation logic
  fs-verity: remove unnecessary extern keywords
  fs-verity: fix all kerneldoc warnings
  fscrypt: add support for IV_INO_LBLK_32 policies
  fscrypt: make test_dummy_encryption use v2 by default
  fscrypt: support test_dummy_encryption=v2
  fscrypt: add fscrypt_add_test_dummy_key()
  linux/parser.h: add include guards
  fscrypt: remove unnecessary extern keywords
  fscrypt: name all function parameters
  fscrypt: fix all kerneldoc warnings
  ANDROID: GKI: enable CONFIG_EXT4_FS_POSIX_ACL.
  ANDROID: arch: arm: Increase kernel command line size
  ANDROID: arch: arm64: Increase kernel command line size
  ANDROID: ABI: Add typec symbols to QCOM ABI whitelist
  UPSTREAM: usb: typec: Remove the callback members from struct typec_capability
  UPSTREAM: usb: typec: ucsi: Start using struct typec_operations
  UPSTREAM: usb: typec: tps6598x: Start using struct typec_operations
  UPSTREAM: usb: typec: tcpm: Start using struct typec_operations
  UPSTREAM: usb: typec: Separate the operations vector
  UPSTREAM: usb: typec: Introduce typec_get_drvdata()
  UPSTREAM: usb: typec: Copy everything from struct typec_capability during registration
  ANDROID: kbuild: merge more sections with LTO
  UPSTREAM: driver core: Remove unnecessary is_fwnode_dev variable in device_add()
  UPSTREAM: driver core: Remove check in driver_deferred_probe_force_trigger()
  UPSTREAM: of: platform: Batch fwnode parsing when adding all top level devices
  BACKPORT: driver core: fw_devlink: Add support for batching fwnode parsing
  BACKPORT: driver core: Look for waiting consumers only for a fwnode's primary device
  UPSTREAM: usb: musb: Add support for MediaTek musb controller
  UPSTREAM: usb: musb: Add musb_clearb/w() interface
  UPSTREAM: usb: musb: Add noirq type of dma create interface
  UPSTREAM: usb: musb: Add get/set toggle hooks
  UPSTREAM: dt-bindings: usb: musb: Add support for MediaTek musb controller
  Revert "ANDROID: Remove default y on BRIDGE_IGMP_SNOOPING"
  Linux 5.4.46
  Revert "net/mlx5: Annotate mutex destroy for root ns"
  uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned
  x86/speculation: Add Ivy Bridge to affected list
  x86/speculation: Add SRBDS vulnerability and mitigation documentation
  x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation
  x86/cpu: Add 'table' argument to cpu_matches()
  x86/cpu: Add a steppings field to struct x86_cpu_id
  x86/speculation/spectre_v2: Exclude Zhaoxin CPUs from SPECTRE_V2
  nvmem: qfprom: remove incorrect write support
  CDC-ACM: heed quirk also in error handling
  staging: rtl8712: Fix IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK
  tty: hvc_console, fix crashes on parallel open/close
  vt: keyboard: avoid signed integer overflow in k_ascii
  usb: musb: Fix runtime PM imbalance on error
  usb: musb: start session in resume for host port
  iio: adc: stm32-adc: fix a wrong error message when probing interrupts
  iio:chemical:pms7003: Fix timestamp alignment and prevent data leak.
  iio: vcnl4000: Fix i2c swapped word reading.
  iio:chemical:sps30: Fix timestamp alignment
  USB: serial: ch341: add basis for quirk detection
  USB: serial: option: add Telit LE910C1-EUX compositions
  USB: serial: usb_wwan: do not resubmit rx urb on fatal errors
  USB: serial: qcserial: add DW5816e QDL support
  net: be more gentle about silly gso requests coming from user
  net: check untrusted gso_size at kernel entry
  vsock: fix timeout in vsock_accept()
  nfp: flower: fix used time of merge flow statistics
  NFC: st21nfca: add missed kfree_skb() in an error path
  net: usb: qmi_wwan: add Telit LE910C1-EUX composition
  net: stmmac: enable timestamp snapshot for required PTP packets in dwmac v5.10a
  net/mlx5: Fix crash upon suspend/resume
  l2tp: do not use inet_hash()/inet_unhash()
  l2tp: add sk_family checks to l2tp_validate_socket
  devinet: fix memleak in inetdev_init()
  ANDROID: GKI: Update ABI after scsi/ufs changes
  FROMLIST: Documentation:sysfs-ufs: Add WriteBooster documentation
  FROMGIT: scsi: ufs-qcom: Configure write booster type
  FROMGIT: scsi: ufs: sysfs: Add sysfs entries for write booster
  BACKPORT: FROMGIT: scsi: ufs: Add write booster feature support
  ANDROID: ABI/Whitelist: update symbols of unisoc whitelist
  BACKPORT: FROMGIT: scsi: ufs: Remove unnecessary memset for dev_info
  ANDROID: staging: ion: Fix potential memory corruption
  ANDROID: staging: ion: optimize cache operation for non-cached buffer
  ANDROID: staging: ion: Skip sync if not mapped
  ANDROID: staging: ion: use dma_[un]map_sg_attrs
  ANDROID: arch: arm64: vdso: export the symbols for time()
  ANDROID: dm-bow: Add block_size option
  ANDROID: GKI: remove squashfs-needed symbols from exported abi
  ANDROID: GKI: remove erofs symbols from exported abi
  ANDROID: GKI: enable CONFIG_EROFS_FS=y
  ANDROID: scs: fix recursive spinlock in scs_check_usage
  f2fs: attach IO flags to the missing cases
  f2fs: add node_io_flag for bio flags likewise data_io_flag
  f2fs: remove unused parameter of f2fs_put_rpages_mapping()
  f2fs: handle readonly filesystem in f2fs_ioc_shutdown()
  f2fs: avoid utf8_strncasecmp() with unstable name
  f2fs: don't return vmalloc() memory from f2fs_kmalloc()
  ANDROID: GKI: set CONFIG_BLK_DEV_LOOP_MIN_COUNT to 16
  ANDROID: Incremental fs: Remove dependency on PKCS7_MESSAGE_PARSER
  ANDROID: Incremental fs: Cache successful hash calculations
  ANDROID: Incremental fs: Fix four error-path bugs
  f2fs: fix retry logic in f2fs_write_cache_pages()
  f2fs: fix wrong discard space
  f2fs: compress: don't compress any datas after cp stop
  f2fs: remove unneeded return value of __insert_discard_tree()
  f2fs: fix wrong value of tracepoint parameter
  f2fs: protect new segment allocation in expand_inode_data
  f2fs: code cleanup by removing ifdef macro surrounding
  writeback: Avoid skipping inode writeback
  f2fs: avoid inifinite loop to wait for flushing node pages at cp_error
  f2fs: compress: fix zstd data corruption
  f2fs: add compressed/gc data read IO stat
  f2fs: fix potential use-after-free issue
  f2fs: compress: don't handle non-compressed data in workqueue
  f2fs: remove redundant assignment to variable err
  f2fs: refactor resize_fs to avoid meta updates in progress
  f2fs: use round_up to enhance calculation
  f2fs: introduce F2FS_IOC_RESERVE_COMPRESS_BLOCKS
  f2fs: Avoid double lock for cp_rwsem during checkpoint
  f2fs: report delalloc reserve as non-free in statfs for project quota
  f2fs: Fix wrong stub helper update_sit_info
  f2fs: compress: let lz4 compressor handle output buffer budget properly
  f2fs: remove blk_plugging in block_operations
  f2fs: introduce F2FS_IOC_RELEASE_COMPRESS_BLOCKS
  f2fs: shrink spinlock coverage
  f2fs: correctly fix the parent inode number during fsync()
  f2fs: compress: support lzo-rle compress algorithm
  f2fs: introduce mempool for {,de}compress intermediate page allocation
  f2fs: introduce f2fs_bmap_compress()
  f2fs: support fiemap on compressed inode
  f2fs: support partial truncation on compressed inode
  f2fs: remove redundant compress inode check
  f2fs: use strcmp() in parse_options()
  f2fs: Use the correct style for SPDX License Identifier

Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
	abi_gki_aarch64_qcom_whitelist
	arch/x86/configs/gki_defconfig
	build.config.common
	drivers/hwtracing/coresight/coresight-tmc-etf.c
	drivers/mmc/host/sdhci-msm.c
	drivers/pinctrl/qcom/Kconfig
	drivers/pinctrl/qcom/pinctrl-msm.c
	drivers/pinctrl/qcom/pinctrl-spmi-gpio.c
	drivers/scsi/ufs/ufs-qcom.c
	drivers/scsi/ufs/ufs-sysfs.c
	drivers/scsi/ufs/ufs.h
	drivers/scsi/ufs/ufs_quirks.h
	drivers/scsi/ufs/ufshcd.c
	drivers/scsi/ufs/ufshcd.h
	drivers/usb/dwc3/gadget.c
	drivers/usb/host/xhci-plat.c
	drivers/usb/typec/ucsi/ucsi.c
	include/linux/usb/composite.h
	include/linux/usb/gadget.h
	init/Kconfig.gki
	net/wireless/nl80211.c
	scripts/headers_install.sh

Change-Id: Iadbe19b28a1d459bc7378e0b9060219a92a408b6
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
This commit is contained in:
Blagovest Kolenichev 2020-07-20 19:00:22 -07:00
commit c8f071d27c
1032 changed files with 77733 additions and 69848 deletions

View File

@ -486,6 +486,7 @@ What: /sys/devices/system/cpu/vulnerabilities
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
/sys/devices/system/cpu/vulnerabilities/l1tf
/sys/devices/system/cpu/vulnerabilities/mds
/sys/devices/system/cpu/vulnerabilities/srbds
/sys/devices/system/cpu/vulnerabilities/tsx_async_abort
/sys/devices/system/cpu/vulnerabilities/itlb_multihit
Date: January 2018

View File

@ -883,3 +883,139 @@ Contact: Subhash Jadavani <subhashj@codeaurora.org>
Description: This entry shows the target state of an UFS UIC link
for the chosen system power management level.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_presv_us_en
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows if preserve user-space was configured
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_shared_alloc_units
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the shared allocated units of WB buffer
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_type
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the configured WB type.
0x1 for shared buffer mode. 0x0 for dedicated buffer mode.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_buff_cap_adj
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the total user-space decrease in shared
buffer mode.
The value of this parameter is 3 for TLC NAND when SLC mode
is used as WriteBooster Buffer. 2 for MLC NAND.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_alloc_units
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the Maximum total WriteBooster Buffer size
which is supported by the entire device.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_wb_luns
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the maximum number of luns that can support
WriteBooster.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_red_type
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: The supportability of user space reduction mode
and preserve user space mode.
00h: WriteBooster Buffer can be configured only in
user space reduction type.
01h: WriteBooster Buffer can be configured only in
preserve user space type.
02h: Device can be configured in either user space
reduction type or preserve user space type.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_wb_type
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: The supportability of WriteBooster Buffer type.
00h: LU based WriteBooster Buffer configuration
01h: Single shared WriteBooster Buffer
configuration
02h: Supporting both LU based WriteBooster
Buffer and Single shared WriteBooster Buffer
configuration
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_enable
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the status of WriteBooster.
0: WriteBooster is not enabled.
1: WriteBooster is enabled
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_en
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows if flush is enabled.
0: Flush operation is not performed.
1: Flush operation is performed.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_during_h8
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: Flush WriteBooster Buffer during hibernate state.
0: Device is not allowed to flush the
WriteBooster Buffer during link hibernate
state.
1: Device is allowed to flush the
WriteBooster Buffer during link hibernate
state
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_avail_buf
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the amount of unused WriteBooster buffer
available.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_cur_buf
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the amount of unused current buffer.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_flush_status
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the flush operation status.
00h: idle
01h: Flush operation in progress
02h: Flush operation stopped prematurely.
03h: Flush operation completed successfully
04h: Flush operation general failure
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_life_time_est
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows an indication of the WriteBooster Buffer
lifetime based on the amount of performed program/erase cycles
01h: 0% - 10% WriteBooster Buffer life time used
...
0Ah: 90% - 100% WriteBooster Buffer life time used
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/wb_buf_alloc_units
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the configured size of WriteBooster buffer.
0400h corresponds to 4GB.
The file is read only.

View File

@ -333,6 +333,15 @@ Description: Give a way to attach REQ_META|FUA to data writes
* 5 | 4 | 3 | 2 | 1 | 0 |
* Cold | Warm | Hot | Cold | Warm | Hot |
What: /sys/fs/f2fs/<disk>/node_io_flag
Date: June 2020
Contact: "Jaegeuk Kim" <jaegeuk@kernel.org>
Description: Give a way to attach REQ_META|FUA to node writes
given temperature-based bits. Now the bits indicate:
* REQ_META | REQ_FUA |
* 5 | 4 | 3 | 2 | 1 | 0 |
* Cold | Warm | Hot | Cold | Warm | Hot |
What: /sys/fs/f2fs/<disk>/iostat_period_ms
Date: April 2020
Contact: "Daeho Jeong" <daehojeong@google.com>

View File

@ -14,3 +14,4 @@ are configurable at compile, boot or run time.
mds
tsx_async_abort
multihit.rst
special-register-buffer-data-sampling.rst

View File

@ -0,0 +1,149 @@
.. SPDX-License-Identifier: GPL-2.0
SRBDS - Special Register Buffer Data Sampling
=============================================
SRBDS is a hardware vulnerability that allows MDS :doc:`mds` techniques to
infer values returned from special register accesses. Special register
accesses are accesses to off core registers. According to Intel's evaluation,
the special register reads that have a security expectation of privacy are
RDRAND, RDSEED and SGX EGETKEY.
When RDRAND, RDSEED and EGETKEY instructions are used, the data is moved
to the core through the special register mechanism that is susceptible
to MDS attacks.
Affected processors
--------------------
Core models (desktop, mobile, Xeon-E3) that implement RDRAND and/or RDSEED may
be affected.
A processor is affected by SRBDS if its Family_Model and stepping is
in the following list, with the exception of the listed processors
exporting MDS_NO while Intel TSX is available yet not enabled. The
latter class of processors are only affected when Intel TSX is enabled
by software using TSX_CTRL_MSR otherwise they are not affected.
============= ============ ========
common name Family_Model Stepping
============= ============ ========
IvyBridge 06_3AH All
Haswell 06_3CH All
Haswell_L 06_45H All
Haswell_G 06_46H All
Broadwell_G 06_47H All
Broadwell 06_3DH All
Skylake_L 06_4EH All
Skylake 06_5EH All
Kabylake_L 06_8EH <= 0xC
Kabylake 06_9EH <= 0xD
============= ============ ========
Related CVEs
------------
The following CVE entry is related to this SRBDS issue:
============== ===== =====================================
CVE-2020-0543 SRBDS Special Register Buffer Data Sampling
============== ===== =====================================
Attack scenarios
----------------
An unprivileged user can extract values returned from RDRAND and RDSEED
executed on another core or sibling thread using MDS techniques.
Mitigation mechanism
-------------------
Intel will release microcode updates that modify the RDRAND, RDSEED, and
EGETKEY instructions to overwrite secret special register data in the shared
staging buffer before the secret data can be accessed by another logical
processor.
During execution of the RDRAND, RDSEED, or EGETKEY instructions, off-core
accesses from other logical processors will be delayed until the special
register read is complete and the secret data in the shared staging buffer is
overwritten.
This has three effects on performance:
#. RDRAND, RDSEED, or EGETKEY instructions have higher latency.
#. Executing RDRAND at the same time on multiple logical processors will be
serialized, resulting in an overall reduction in the maximum RDRAND
bandwidth.
#. Executing RDRAND, RDSEED or EGETKEY will delay memory accesses from other
logical processors that miss their core caches, with an impact similar to
legacy locked cache-line-split accesses.
The microcode updates provide an opt-out mechanism (RNGDS_MITG_DIS) to disable
the mitigation for RDRAND and RDSEED instructions executed outside of Intel
Software Guard Extensions (Intel SGX) enclaves. On logical processors that
disable the mitigation using this opt-out mechanism, RDRAND and RDSEED do not
take longer to execute and do not impact performance of sibling logical
processors memory accesses. The opt-out mechanism does not affect Intel SGX
enclaves (including execution of RDRAND or RDSEED inside an enclave, as well
as EGETKEY execution).
IA32_MCU_OPT_CTRL MSR Definition
--------------------------------
Along with the mitigation for this issue, Intel added a new thread-scope
IA32_MCU_OPT_CTRL MSR, (address 0x123). The presence of this MSR and
RNGDS_MITG_DIS (bit 0) is enumerated by CPUID.(EAX=07H,ECX=0).EDX[SRBDS_CTRL =
9]==1. This MSR is introduced through the microcode update.
Setting IA32_MCU_OPT_CTRL[0] (RNGDS_MITG_DIS) to 1 for a logical processor
disables the mitigation for RDRAND and RDSEED executed outside of an Intel SGX
enclave on that logical processor. Opting out of the mitigation for a
particular logical processor does not affect the RDRAND and RDSEED mitigations
for other logical processors.
Note that inside of an Intel SGX enclave, the mitigation is applied regardless
of the value of RNGDS_MITG_DS.
Mitigation control on the kernel command line
---------------------------------------------
The kernel command line allows control over the SRBDS mitigation at boot time
with the option "srbds=". The option for this is:
============= =============================================================
off This option disables SRBDS mitigation for RDRAND and RDSEED on
affected platforms.
============= =============================================================
SRBDS System Information
-----------------------
The Linux kernel provides vulnerability status information through sysfs. For
SRBDS this can be accessed by the following sysfs file:
/sys/devices/system/cpu/vulnerabilities/srbds
The possible values contained in this file are:
============================== =============================================
Not affected Processor not vulnerable
Vulnerable Processor vulnerable and mitigation disabled
Vulnerable: No microcode Processor vulnerable and microcode is missing
mitigation
Mitigation: Microcode Processor is vulnerable and mitigation is in
effect.
Mitigation: TSX disabled Processor is only vulnerable when TSX is
enabled while this system was booted with TSX
disabled.
Unknown: Dependent on
hypervisor status Running on virtual guest processor that is
affected but with no way to know if host
processor is mitigated or vulnerable.
============================== =============================================
SRBDS Default mitigation
------------------------
This new microcode serializes processor access during execution of RDRAND,
RDSEED ensures that the shared buffer is overwritten before it is released for
reuse. Use the "srbds=off" kernel command line to disable the mitigation for
RDRAND and RDSEED.

View File

@ -4589,6 +4589,26 @@
spia_pedr=
spia_peddr=
srbds= [X86,INTEL]
Control the Special Register Buffer Data Sampling
(SRBDS) mitigation.
Certain CPUs are vulnerable to an MDS-like
exploit which can leak bits from the random
number generator.
By default, this issue is mitigated by
microcode. However, the microcode fix can cause
the RDRAND and RDSEED instructions to become
much slower. Among other effects, this will
result in reduced throughput from /dev/urandom.
The microcode mitigation can be disabled with
the following option:
off: Disable mitigation and remove
performance impact to RDRAND and RDSEED
srcutree.counter_wrap_check [KNL]
Specifies how frequently to check for
grace-period sequence counter wrap for the

View File

@ -121,6 +121,31 @@ The directory file type is one of the following values:
* - 0x7
- Symbolic link.
To support directories that are both encrypted and casefolded directories, we
must also include hash information in the directory entry. We append
``ext4_extended_dir_entry_2`` to ``ext4_dir_entry_2`` except for the entries
for dot and dotdot, which are kept the same. The structure follows immediately
after ``name`` and is included in the size listed by ``rec_len`` If a directory
entry uses this extension, it may be up to 271 bytes.
.. list-table::
:widths: 8 8 24 40
:header-rows: 1
* - Offset
- Size
- Name
- Description
* - 0x0
- \_\_le32
- hash
- The hash of the directory name
* - 0x4
- \_\_le32
- minor\_hash
- The minor hash of the directory name
In order to add checksums to these classic directory blocks, a phony
``struct ext4_dir_entry`` is placed at the end of each leaf block to
hold the checksum. The directory entry is 12 bytes long. The inode
@ -322,6 +347,8 @@ The directory hash is one of the following values:
- Half MD4, unsigned.
* - 0x5
- Tea, unsigned.
* - 0x6
- Siphash.
Interior nodes of an htree are recorded as ``struct dx_node``, which is
also the full length of a data block:

View File

@ -217,8 +217,12 @@ fsync_mode=%s Control the policy of fsync. Currently supports "posix",
pass, but the performance will regress. "nobarrier" is
based on "posix", but doesn't issue flush command for
non-atomic files likewise "nobarrier" mount option.
test_dummy_encryption Enable dummy encryption, which provides a fake fscrypt
test_dummy_encryption
test_dummy_encryption=%s
Enable dummy encryption, which provides a fake fscrypt
context. The fake fscrypt context is used by xfstests.
The argument may be either "v1" or "v2", in order to
select the corresponding fscrypt policy version.
checkpoint=%s[:%u[%]] Set to "disable" to turn off checkpointing. Set to "enable"
to reenable checkpointing. Is enabled by default. While
disabled, any unmounting or unexpected shutdowns will cause

View File

@ -159,11 +159,15 @@ Byte sequences
distance = 16384 + (H << 14) + D
state = S (copy S literals after this block)
End of stream is reached if distance == 16384
In version 1 only, to prevent ambiguity with the RLE case when
((distance & 0x803f) == 0x803f) && (261 <= length <= 264), the
compressor must not emit block copies where distance and length
meet these conditions.
In version 1 only, this instruction is also used to encode a run of
zeros if distance = 0xbfff, i.e. H = 1 and the D bits are all 1.
zeros if distance = 0xbfff, i.e. H = 1 and the D bits are all 1.
In this case, it is followed by a fourth byte, X.
run length = ((X << 3) | (0 0 0 0 0 L L L)) + 4.
run length = ((X << 3) | (0 0 0 0 0 L L L)) + 4
0 0 1 L L L L L (32..63)
Copy of small block within 16kB distance (preferably less than 34B)

View File

@ -4444,9 +4444,11 @@ EOI was received.
#define KVM_EXIT_HYPERV_SYNIC 1
#define KVM_EXIT_HYPERV_HCALL 2
__u32 type;
__u32 pad1;
union {
struct {
__u32 msr;
__u32 pad2;
__u64 control;
__u64 evt_page;
__u64 msg_page;

View File

@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0
VERSION = 5
PATCHLEVEL = 4
SUBLEVEL = 45
SUBLEVEL = 50
EXTRAVERSION =
NAME = Kleptomaniac Octopus
@ -599,12 +599,8 @@ KBUILD_MODULES :=
KBUILD_BUILTIN := 1
# If we have only "make modules", don't compile built-in objects.
# When we're building modules with modversions, we need to consider
# the built-in objects during the descend as well, in order to
# make sure the checksums are up to date before we record them.
ifeq ($(MAKECMDGOALS),modules)
KBUILD_BUILTIN := $(if $(CONFIG_MODVERSIONS),1)
KBUILD_BUILTIN :=
endif
# If we have "make <whatever> modules", compile modules
@ -1227,12 +1223,17 @@ endif
# needs to be updated, so this check is forced on all builds
uts_len := 64
ifneq (,$(BUILD_NUMBER))
UTS_RELEASE=$(KERNELRELEASE)-ab$(BUILD_NUMBER)
else
UTS_RELEASE=$(KERNELRELEASE)
endif
define filechk_utsrelease.h
if [ `echo -n "$(KERNELRELEASE)" | wc -c ` -gt $(uts_len) ]; then \
echo '"$(KERNELRELEASE)" exceeds $(uts_len) characters' >&2; \
exit 1; \
fi; \
echo \#define UTS_RELEASE \"$(KERNELRELEASE)\"
if [ `echo -n "$(UTS_RELEASE)" | wc -c ` -gt $(uts_len) ]; then \
echo '"$(UTS_RELEASE)" exceeds $(uts_len) characters' >&2; \
exit 1; \
fi; \
echo \#define UTS_RELEASE \"$(UTS_RELEASE)\"
endef
define filechk_version.h
@ -1368,6 +1369,13 @@ ifdef CONFIG_MODULES
all: modules
# When we're building modules with modversions, we need to consider
# the built-in objects during the descend as well, in order to
# make sure the checksums are up to date before we record them.
ifdef CONFIG_MODVERSIONS
KBUILD_BUILTIN := 1
endif
# Build modules
#
# A module can be listed more than once in obj-m resulting in

File diff suppressed because it is too large Load Diff

View File

@ -67,7 +67,6 @@
kmem_cache_free
kmemdup
kstrdup
kstrtoull
ktime_get
__list_add_valid
__list_del_entry_valid
@ -77,7 +76,6 @@
memset
misc_deregister
misc_register
mod_timer
__module_get
module_layout
module_put
@ -114,10 +112,6 @@
pci_unregister_driver
perf_trace_buf_alloc
perf_trace_run_bpf_submit
platform_device_add
platform_device_alloc
platform_device_del
platform_device_put
platform_device_unregister
__platform_driver_register
platform_driver_unregister
@ -126,6 +120,7 @@
printk
__put_cred
put_device
__put_page
__put_task_struct
put_unused_fd
queue_delayed_work_on
@ -154,7 +149,6 @@
schedule
schedule_timeout
schedule_timeout_uninterruptible
scnprintf
seq_printf
sg_init_one
sg_init_table
@ -173,10 +167,8 @@
strlen
strncpy
strsep
strstr
synchronize_irq
synchronize_net
synchronize_rcu
system_wq
trace_define_field
trace_event_buffer_commit
@ -193,7 +185,6 @@
unregister_virtio_device
unregister_virtio_driver
up_write
usleep_range
virtio_check_driver_offered_feature
virtio_config_changed
virtio_max_dma_size
@ -239,6 +230,7 @@
device_find_child
device_match_name
platform_bus_type
strstr
# required by gnss-serial.ko
gnss_allocate_device
@ -259,6 +251,90 @@
serdev_device_write
serdev_device_write_wakeup
# required by incrementalfs.ko
bin2hex
__break_lease
clear_inode
__close_fd
crc32_le
crypto_alloc_shash
crypto_destroy_tfm
crypto_shash_digest
d_add
d_drop
deactivate_locked_super
dentry_open
dget_parent
d_instantiate
d_make_root
dput
fget
flush_dcache_page
flush_delayed_work
free_pages
fs_kobj
fsstack_copy_attr_all
generic_file_llseek
generic_file_mmap
generic_file_read_iter
generic_file_splice_read
generic_read_dir
generic_shutdown_super
__get_free_pages
get_zeroed_page
iget5_locked
ihold
inode_init_once
inode_init_owner
iput
iterate_dir
kernel_read
kernel_write
kern_path
kobject_create_and_add
kobject_put
lockref_get
lock_rename
lookup_one_len
LZ4_decompress_safe
match_int
match_token
__msecs_to_jiffies
mutex_is_locked
notify_change
pagecache_get_page
path_get
path_put
preempt_schedule
register_filesystem
seq_puts
set_anon_super
sget
simple_getattr
simple_setattr
simple_statfs
strndup_user
sync_filesystem
sysfs_create_group
sysfs_remove_group
truncate_inode_pages
unlock_new_inode
unlock_page
unlock_rename
unregister_filesystem
user_path_at_empty
vfs_create
vfs_fallocate
vfs_getattr
vfs_getxattr
vfs_link
vfs_listxattr
vfs_mkdir
vfs_rename
vfs_rmdir
vfs_setxattr
vfs_unlink
# required by nd_virtio.ko
bio_alloc_bioset
bio_chain
@ -289,6 +365,10 @@
device_init_wakeup
devm_rtc_allocate_device
ktime_get_real_seconds
platform_device_add
platform_device_alloc
platform_device_del
platform_device_put
__rtc_register_device
rtc_time64_to_tm
rtc_tm_to_time64
@ -372,6 +452,7 @@
memchr_inv
memremap
memunmap
mod_timer
of_find_property
of_get_property
of_property_match_string
@ -389,6 +470,7 @@
unregister_chrdev_region
up_read
__usecs_to_jiffies
usleep_range
# required by tpm_vtpm_proxy.ko
anon_inode_getfile
@ -414,6 +496,7 @@
# required by virt_wifi_sim.ko
ieee80211_get_channel
kstrtoull
release_firmware
request_firmware
@ -658,8 +741,8 @@
netif_set_real_num_tx_queues
__netif_set_xps_queue
net_ratelimit
nf_conntrack_destroy
__num_online_cpus
__put_page
_raw_spin_trylock
sched_clock
skb_add_rx_frag
@ -707,6 +790,9 @@
nvdimm_bus_unregister
nvdimm_pmem_region_create
# required by vmw_vsock_virtio_transport.ko
synchronize_rcu
# required by vmw_vsock_virtio_transport_common.ko
bpf_trace_run10
bpf_trace_run8

View File

@ -44,7 +44,6 @@
cpu_number
__cpu_online_mask
crc32_le
_ctype
delayed_work_timer_fn
del_timer
del_timer_sync
@ -137,6 +136,7 @@
extcon_get_state
extcon_register_notifier
extcon_unregister_notifier
fd_install
find_next_bit
find_next_zero_bit
finish_wait
@ -145,6 +145,7 @@
generic_handle_irq
generic_mii_ioctl
get_device
get_unused_fd_flags
gpiochip_add_data_with_key
gpiochip_add_pin_range
gpiochip_generic_free
@ -152,6 +153,7 @@
gpiochip_get_data
gpiochip_remove
gpiod_set_value_cansleep
handle_edge_irq
handle_level_irq
__hci_cmd_sync
hci_recv_frame
@ -167,8 +169,13 @@
iommu_present
__ioremap
iounmap
irq_chip_disable_parent
irq_chip_enable_parent
irq_chip_eoi_parent
irq_chip_mask_parent
irq_chip_set_parent_state
irq_chip_set_type_parent
irq_chip_set_wake_parent
irq_chip_unmask_parent
__irq_domain_add
irq_domain_free_irqs_common
@ -191,7 +198,6 @@
kmem_cache_alloc_trace
kmemdup
kstrdup
kstrtouint
ktime_get
ktime_get_mono_fast_ns
__list_add_valid
@ -202,12 +208,13 @@
mii_nway_restart
mod_timer
module_layout
module_put
__msecs_to_jiffies
msleep
msm_pinctrl_probe
msm_pinctrl_remove
__mutex_init
mutex_is_locked
mutex_lock
mutex_lock_interruptible
mutex_unlock
__netdev_alloc_skb
netdev_info
@ -371,6 +378,7 @@
trace_handle_return
trace_raw_output_prep
trace_seq_printf
try_module_get
tty_flip_buffer_push
__tty_insert_flip_char
tty_termios_encode_baud_rate
@ -395,7 +403,22 @@
usb_deregister
usb_disabled
usb_get_dr_mode
usb_hcd_check_unlink_urb
usb_hcd_end_port_resume
usb_hcd_giveback_urb
usb_hc_died
usb_hcd_is_primary_hcd
usb_hcd_link_urb_to_ep
usb_hcd_pci_pm_ops
usb_hcd_pci_probe
usb_hcd_pci_remove
usb_hcd_pci_shutdown
usb_hcd_platform_shutdown
usb_hcd_poll_rh_status
usb_hcd_resume_root_hub
usb_hcds_loaded
usb_hcd_start_port_resume
usb_hcd_unlink_urb_from_ep
usb_hub_clear_tt_buffer
usbnet_disconnect
usbnet_get_endpoints
@ -555,6 +578,7 @@
component_master_add_with_match
component_master_del
component_unbind_all
_ctype
devfreq_recommended_opp
devfreq_resume_device
devfreq_suspend_device
@ -743,10 +767,8 @@
drm_state_dump
drm_universal_plane_init
drm_vblank_init
fd_install
flush_workqueue
get_pid_task
get_unused_fd_flags
gpiod_direction_input
gpiod_direction_output
gpiod_get_value
@ -784,8 +806,6 @@
mipi_dsi_host_register
mipi_dsi_host_unregister
mipi_dsi_packet_format_is_long
mutex_is_locked
mutex_lock_interruptible
mutex_trylock_recursive
no_llseek
nsecs_to_jiffies
@ -901,13 +921,9 @@
__udelay
# required by qcom-pdc.ko
irq_chip_disable_parent
irq_chip_enable_parent
irq_chip_eoi_parent
irq_chip_get_parent_state
irq_chip_retrigger_hierarchy
irq_chip_set_affinity_parent
irq_chip_set_parent_state
irq_chip_set_vcpu_affinity_parent
irq_domain_alloc_irqs_parent
irq_domain_create_hierarchy
@ -983,14 +999,23 @@
of_property_read_variable_u8_array
reset_control_reset
# required by pinctrl-sdm845.ko
msm_pinctrl_dev_pm_ops
# required by pinctrl-msm.ko
device_property_read_u16_array
gpiochip_line_is_valid
gpiochip_lock_as_irq
gpiochip_set_chained_irqchip
gpiochip_unlock_as_irq
handle_bad_irq
pinctrl_force_default
pinctrl_force_sleep
pm_power_off
register_restart_handler
unregister_restart_handler
# required by pinctrl-spmi-gpio.ko
device_get_match_data
gpiochip_populate_parent_fwspec_fourcell
irq_chip_ack_parent
irq_chip_set_wake_parent
# required by pinctrl-spmi-mpp.ko
platform_irq_count
@ -1024,26 +1049,6 @@
rtc_update_irq
rtc_valid_tm
# required by ufs-qcom.ko
print_hex_dump
ufshcd_dme_get_attr
ufshcd_dme_set_attr
ufshcd_dump_regs
ufshcd_get_local_unipro_ver
ufshcd_get_pwr_dev_param
ufshcd_hold
ufshcd_pltfrm_init
ufshcd_pltfrm_resume
ufshcd_pltfrm_runtime_idle
ufshcd_pltfrm_runtime_resume
ufshcd_pltfrm_runtime_suspend
ufshcd_pltfrm_shutdown
ufshcd_pltfrm_suspend
ufshcd_release
ufshcd_remove
ufshcd_uic_hibern8_enter
ufshcd_uic_hibern8_exit
# required by mdt_loader.ko
request_firmware_into_buf
@ -1076,7 +1081,6 @@
qcom_smem_state_unregister
# required by spmi-pmic-arb.ko
handle_edge_irq
irq_domain_set_info
spmi_controller_add
spmi_controller_alloc
@ -1139,6 +1143,7 @@
device_remove_file
ehci_cf_port_reset_rwsem
hrtimer_cancel
kstrtouint
ktime_get_with_offset
usb_for_each_dev
@ -1209,13 +1214,95 @@
fwnode_get_parent
fwnode_property_present
kstrtobool
module_put
__sysfs_match_string
try_module_get
# required by qcom-wdt.ko
platform_get_irq_optional
# required by incrementalfs.ko
bcmp
bin2hex
__break_lease
clear_inode
__close_fd
crypto_alloc_shash
crypto_destroy_tfm
crypto_shash_digest
d_add
d_drop
deactivate_locked_super
dentry_open
dget_parent
d_instantiate
d_make_root
dput
fget
flush_dcache_page
flush_delayed_work
free_pages
fs_kobj
fsstack_copy_attr_all
generic_file_llseek
generic_file_mmap
generic_file_read_iter
generic_file_splice_read
generic_read_dir
generic_shutdown_super
__get_free_pages
get_zeroed_page
iget5_locked
ihold
inode_init_once
inode_init_owner
iput
iterate_dir
kernel_read
kernel_write
kern_path
kobject_create_and_add
kobject_put
lockref_get
lock_rename
lookup_one_len
LZ4_decompress_safe
match_int
match_token
noop_llseek
notify_change
pagecache_get_page
path_get
path_put
__put_cred
__put_page
register_filesystem
set_anon_super
sget
simple_getattr
simple_setattr
simple_statfs
strndup_user
strsep
sync_filesystem
sysfs_create_group
sysfs_remove_group
truncate_inode_pages
unlock_new_inode
unlock_page
unlock_rename
unregister_filesystem
user_path_at_empty
vfs_create
vfs_fallocate
vfs_getattr
vfs_getxattr
vfs_link
vfs_listxattr
vfs_mkdir
vfs_rename
vfs_rmdir
vfs_setxattr
vfs_unlink
# required by qrtr-tun.ko
_copy_to_iter
misc_deregister

View File

@ -344,7 +344,6 @@
find_vma
finish_wait
firmware_request_nowarn
flush_dcache_page
flush_delayed_work
flush_work
flush_workqueue

View File

@ -21,6 +21,7 @@
__check_object_size
__class_create
class_destroy
__close_fd
complete
__const_udelay
consume_skb
@ -56,6 +57,7 @@
eth_validate_addr
event_triggers_call
fd_install
fget
finish_wait
flush_work
fput
@ -85,6 +87,7 @@
kimage_voffset
__kmalloc
kmalloc_caches
kmalloc_order_trace
kmem_cache_alloc
kmem_cache_alloc_trace
kmem_cache_create
@ -92,12 +95,11 @@
kmem_cache_free
kmemdup
kobject_add
kobject_create_and_add
kobject_init
kobject_put
kobject_uevent
kstrdup
kstrtouint
kstrtoull
ktime_get_mono_fast_ns
ktime_get_raw_ts64
ktime_get_real_seconds
@ -112,7 +114,6 @@
memset
misc_deregister
misc_register
mod_timer
module_layout
module_put
__msecs_to_jiffies
@ -129,10 +130,11 @@
netif_device_detach
netif_tx_stop_all_queues
netif_tx_wake_queue
nf_conntrack_destroy
noop_llseek
nr_cpu_ids
param_ops_bool
param_ops_int
param_ops_uint
passthru_features_check
pci_disable_device
pci_enable_device
@ -146,16 +148,14 @@
perf_trace_buf_alloc
perf_trace_run_bpf_submit
physvirt_offset
platform_device_add
platform_device_alloc
platform_device_del
platform_device_put
platform_device_unregister
__platform_driver_register
platform_driver_unregister
platform_get_irq
platform_get_resource
pm_runtime_allow
__pm_runtime_suspend
__pm_runtime_use_autosuspend
preempt_schedule
preempt_schedule_notrace
prepare_to_wait_event
@ -180,7 +180,6 @@
__rcu_read_unlock
refcount_dec_and_test_checked
refcount_inc_checked
regcache_sync
register_blkdev
register_netdev
register_virtio_device
@ -221,7 +220,6 @@
submit_bio
sync_file_create
synchronize_irq
synchronize_rcu
sysfs_create_group
sysfs_remove_group
system_wq
@ -235,11 +233,11 @@
trace_raw_output_prep
trace_seq_printf
try_module_get
unlock_page
unregister_blkdev
unregister_netdev
unregister_virtio_device
unregister_virtio_driver
usleep_range
vabits_actual
virtio_check_driver_offered_feature
virtio_config_changed
@ -303,10 +301,87 @@
__tasklet_schedule
# required by goldfish_sync.ko
__close_fd
dma_fence_default_wait
dma_fence_free
# required by incrementalfs.ko
bin2hex
__break_lease
clear_inode
crc32_le
crypto_alloc_shash
crypto_destroy_tfm
crypto_shash_digest
d_add
d_drop
deactivate_locked_super
dentry_open
dget_parent
d_instantiate
d_make_root
down_write
dput
flush_dcache_page
flush_delayed_work
fs_kobj
fsstack_copy_attr_all
generic_file_llseek
generic_file_mmap
generic_file_read_iter
generic_file_splice_read
generic_read_dir
generic_shutdown_super
get_zeroed_page
iget5_locked
ihold
inode_init_once
inode_init_owner
iput
iterate_dir
kernel_read
kernel_write
kern_path
ktime_get
lockref_get
lock_rename
lookup_one_len
LZ4_decompress_safe
match_int
match_token
mutex_is_locked
notify_change
pagecache_get_page
path_get
path_put
__put_cred
register_filesystem
seq_puts
set_anon_super
sget
simple_getattr
simple_setattr
simple_statfs
strndup_user
strsep
sync_filesystem
truncate_inode_pages
unlock_new_inode
unlock_rename
unregister_filesystem
up_write
user_path_at_empty
vfs_create
vfs_fallocate
vfs_getattr
vfs_getxattr
vfs_link
vfs_listxattr
vfs_mkdir
vfs_rename
vfs_rmdir
vfs_setxattr
vfs_unlink
# required by mac80211_hwsim.ko
alloc_netdev_mqs
__cfg80211_alloc_event_skb
@ -421,7 +496,6 @@
check_disk_change
__cpu_possible_mask
del_timer_sync
fget
file_path
flush_signals
flush_workqueue
@ -437,6 +511,8 @@
kobject_get
kstrtobool
kstrtoll
kstrtouint
kstrtoull
kthread_create_on_node
kthread_parkme
kthread_should_park
@ -446,6 +522,7 @@
mempool_destroy
mempool_kfree
mempool_kmalloc
mod_timer
__per_cpu_offset
percpu_ref_exit
percpu_ref_init
@ -468,6 +545,7 @@
submit_bh
submit_bio_wait
sync_blockdev
synchronize_rcu
sysfs_create_link
sysfs_notify
sysfs_remove_link
@ -504,6 +582,10 @@
del_timer
device_init_wakeup
devm_rtc_allocate_device
platform_device_add
platform_device_alloc
platform_device_del
platform_device_put
__rtc_register_device
rtc_time64_to_tm
rtc_tm_to_time64
@ -524,7 +606,6 @@
get_device_system_crosststamp
kvasprintf
ns_to_timespec
pm_runtime_allow
__pm_runtime_disable
pm_runtime_enable
pm_runtime_forbid
@ -532,9 +613,7 @@
pm_runtime_force_suspend
__pm_runtime_idle
pm_runtime_set_autosuspend_delay
__pm_runtime_use_autosuspend
__printk_ratelimit
regcache_cache_only
regcache_mark_dirty
snd_card_rw_proc_new
snd_component_add
@ -577,21 +656,24 @@
device_initialize
dev_set_name
kasprintf
kobject_create_and_add
krealloc
kstrtoint
pm_runtime_get_if_in_use
__pm_runtime_resume
__pm_runtime_set_status
regcache_cache_only
regcache_sync
regmap_exit
__regmap_init
regmap_read
regmap_update_bits_base
regmap_write
snd_dma_alloc_pages
snd_dma_free_pages
snd_pcm_format_width
__sw_hweight64
timecounter_init
usleep_range
# required by snd-hda-intel.ko
bpf_trace_run1
@ -607,6 +689,7 @@
pci_get_device
pci_intx
pci_ioremap_bar
pci_match_id
pci_read_config_word
pci_release_regions
pci_request_regions
@ -708,11 +791,9 @@
drm_set_preferred_mode
drm_universal_plane_init
__get_task_comm
kmalloc_order_trace
kvfree
kvmalloc_node
memdup_user
noop_llseek
__sg_alloc_table_from_pages
sg_free_table
sg_next
@ -777,6 +858,7 @@
blk_status_to_errno
_dev_notice
kobject_uevent_env
param_ops_uint
string_get_size
__sysfs_match_string
@ -802,7 +884,6 @@
__register_chrdev
__splice_from_pipe
system_freezing_cnt
unlock_page
__unregister_chrdev
# required by virtio_input.ko

View File

@ -1043,20 +1043,6 @@
rtc_year_days
seq_puts
# required by ufs-hisi.ko
devm_platform_ioremap_resource
ufshcd_dme_get_attr
ufshcd_dme_set_attr
ufshcd_get_pwr_dev_param
ufshcd_pltfrm_init
ufshcd_pltfrm_resume
ufshcd_pltfrm_runtime_idle
ufshcd_pltfrm_runtime_resume
ufshcd_pltfrm_runtime_suspend
ufshcd_pltfrm_shutdown
ufshcd_pltfrm_suspend
ufshcd_remove
# required by spi-pl022.ko
devm_gpio_request
devm_spi_register_controller

View File

@ -375,6 +375,7 @@
device_online
device_property_present
device_property_read_string
device_property_read_u16_array
device_property_read_u32_array
device_property_read_u8_array
device_register
@ -984,6 +985,7 @@
gpiochip_generic_free
gpiochip_generic_request
gpiochip_get_data
gpiochip_line_is_valid
gpiochip_remove
gpiod_cansleep
gpiod_direction_input
@ -1009,6 +1011,7 @@
gro_cells_destroy
gro_cells_init
gro_cells_receive
handle_bad_irq
handle_edge_irq
handle_level_irq
handle_nested_irq
@ -1368,9 +1371,6 @@
__msecs_to_jiffies
msleep
msleep_interruptible
msm_gpio_mpm_wake_set
msm_pinctrl_probe
msm_pinctrl_remove
__mutex_init
mutex_is_locked
mutex_lock
@ -1639,6 +1639,8 @@
physvirt_offset
pinconf_generic_dt_node_to_map
pinctrl_dev_get_drvdata
pinctrl_force_default
pinctrl_force_sleep
pinctrl_get
pinctrl_lookup_state
pinctrl_pm_select_default_state
@ -2422,6 +2424,7 @@
unregister_pernet_subsys
unregister_pm_notifier
unregister_reboot_notifier
unregister_restart_handler
unregister_rpmsg_driver
unregister_shrinker
unregister_syscore_ops

View File

@ -206,17 +206,3 @@
__wait_on_buffer
io_schedule
is_bad_inode
# required by squashfs.ko
generic_ro_fops
get_tree_bdev
iget_failed
iget_locked
inode_nohighmem
ll_rw_block
logfc
page_get_link
zlib_inflate
zlib_inflateEnd
zlib_inflateInit2
zlib_inflate_workspacesize

View File

@ -346,6 +346,7 @@
__list_del_entry_valid
memcpy
__memcpy_fromio
memmove
memset
misc_deregister
misc_register
@ -592,6 +593,7 @@
strchr
strcmp
strcpy
strlcat
strlcpy
strlen
strncasecmp
@ -611,6 +613,7 @@
sysfs_create_link
__sysfs_match_string
sysfs_notify
sysfs_remove_file_ns
sysfs_remove_group
sysfs_remove_groups
sysfs_remove_link
@ -687,6 +690,7 @@
usb_gadget_udc_reset
usb_get_dr_mode
usb_get_intf
usb_hcd_is_primary_hcd
usb_interface_id
usb_kill_urb
usb_phy_get_charger_current
@ -1499,7 +1503,7 @@
dev_pm_opp_free_cpufreq_table
dev_pm_opp_init_cpufreq_table
# required by sprd-dpu.ko
# required by sprd-drm.ko
component_add
component_bind_all
component_del
@ -1664,6 +1668,7 @@
of_get_drm_display_mode
of_graph_get_endpoint_by_regs
of_graph_get_remote_port_parent
of_reserved_mem_device_release
__platform_register_drivers
platform_unregister_drivers
regmap_get_reg_stride
@ -1763,6 +1768,7 @@
# required by sprd_powerdebug.ko
cpu_pm_register_notifier
cpu_pm_unregister_notifier
pm_print_active_wakeup_sources
syscon_node_to_regmap
@ -2348,62 +2354,19 @@
zlib_inflateReset
zlib_inflate_workspacesize
# required by tc-dwc-g210-pltfrm.ko
ufshcd_pltfrm_init
ufshcd_pltfrm_resume
ufshcd_pltfrm_runtime_idle
ufshcd_pltfrm_runtime_resume
ufshcd_pltfrm_runtime_suspend
ufshcd_pltfrm_shutdown
ufshcd_pltfrm_suspend
# required by sprd_cpp.ko
clk_get_parent
of_iomap
# required by ufshcd-pci.ko
pcim_iomap_regions
pcim_iomap_table
ufshcd_alloc_host
ufshcd_dealloc_host
ufshcd_dme_get_attr
ufshcd_dme_set_attr
ufshcd_init
ufshcd_remove
ufshcd_runtime_idle
ufshcd_runtime_resume
ufshcd_runtime_suspend
ufshcd_shutdown
ufshcd_system_resume
ufshcd_system_suspend
# required by sprd_camera.ko
ion_alloc
ion_free
ktime_get_ts64
ns_to_timeval
of_irq_to_resource
_raw_spin_trylock
regulator_get_linear_step
# required by erofs.ko
add_to_page_cache_lru
bio_add_page
bio_alloc_bioset
bio_associate_blkg
bio_put
bit_wait
flush_dcache_page
fs_bio_set
fs_ftype_to_dtype
generic_ro_fops
iget_failed
init_user_ns
inode_nohighmem
__lock_page
LZ4_decompress_safe_partial
out_of_line_wait_on_bit_lock
pagecache_get_page
page_get_link
posix_acl_access_xattr_handler
posix_acl_default_xattr_handler
posix_acl_from_xattr
put_pages_list
radix_tree_gang_lookup
radix_tree_preload
read_cache_page
read_cache_page_gfp
simple_get_link
submit_bio
trace_print_flags_seq
unlock_page
vm_unmap_aliases
wake_up_bit
__wake_up_locked
# required by trusty-pm.ko
ktime_get_boot_fast_ns
unregister_syscore_ops

View File

@ -322,14 +322,18 @@ static inline int __is_mmio(const volatile void __iomem *addr)
#if IO_CONCAT(__IO_PREFIX,trivial_io_bw)
extern inline unsigned int ioread8(void __iomem *addr)
{
unsigned int ret = IO_CONCAT(__IO_PREFIX,ioread8)(addr);
unsigned int ret;
mb();
ret = IO_CONCAT(__IO_PREFIX,ioread8)(addr);
mb();
return ret;
}
extern inline unsigned int ioread16(void __iomem *addr)
{
unsigned int ret = IO_CONCAT(__IO_PREFIX,ioread16)(addr);
unsigned int ret;
mb();
ret = IO_CONCAT(__IO_PREFIX,ioread16)(addr);
mb();
return ret;
}
@ -370,7 +374,9 @@ extern inline void outw(u16 b, unsigned long port)
#if IO_CONCAT(__IO_PREFIX,trivial_io_lq)
extern inline unsigned int ioread32(void __iomem *addr)
{
unsigned int ret = IO_CONCAT(__IO_PREFIX,ioread32)(addr);
unsigned int ret;
mb();
ret = IO_CONCAT(__IO_PREFIX,ioread32)(addr);
mb();
return ret;
}
@ -415,14 +421,18 @@ extern inline void __raw_writew(u16 b, volatile void __iomem *addr)
extern inline u8 readb(const volatile void __iomem *addr)
{
u8 ret = __raw_readb(addr);
u8 ret;
mb();
ret = __raw_readb(addr);
mb();
return ret;
}
extern inline u16 readw(const volatile void __iomem *addr)
{
u16 ret = __raw_readw(addr);
u16 ret;
mb();
ret = __raw_readw(addr);
mb();
return ret;
}
@ -463,14 +473,18 @@ extern inline void __raw_writeq(u64 b, volatile void __iomem *addr)
extern inline u32 readl(const volatile void __iomem *addr)
{
u32 ret = __raw_readl(addr);
u32 ret;
mb();
ret = __raw_readl(addr);
mb();
return ret;
}
extern inline u64 readq(const volatile void __iomem *addr)
{
u64 ret = __raw_readq(addr);
u64 ret;
mb();
ret = __raw_readq(addr);
mb();
return ret;
}
@ -499,14 +513,44 @@ extern inline void writeq(u64 b, volatile void __iomem *addr)
#define outb_p outb
#define outw_p outw
#define outl_p outl
#define readb_relaxed(addr) __raw_readb(addr)
#define readw_relaxed(addr) __raw_readw(addr)
#define readl_relaxed(addr) __raw_readl(addr)
#define readq_relaxed(addr) __raw_readq(addr)
#define writeb_relaxed(b, addr) __raw_writeb(b, addr)
#define writew_relaxed(b, addr) __raw_writew(b, addr)
#define writel_relaxed(b, addr) __raw_writel(b, addr)
#define writeq_relaxed(b, addr) __raw_writeq(b, addr)
extern u8 readb_relaxed(const volatile void __iomem *addr);
extern u16 readw_relaxed(const volatile void __iomem *addr);
extern u32 readl_relaxed(const volatile void __iomem *addr);
extern u64 readq_relaxed(const volatile void __iomem *addr);
#if IO_CONCAT(__IO_PREFIX,trivial_io_bw)
extern inline u8 readb_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readb(addr);
}
extern inline u16 readw_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readw(addr);
}
#endif
#if IO_CONCAT(__IO_PREFIX,trivial_io_lq)
extern inline u32 readl_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readl(addr);
}
extern inline u64 readq_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readq(addr);
}
#endif
#define writeb_relaxed writeb
#define writew_relaxed writew
#define writel_relaxed writel
#define writeq_relaxed writeq
/*
* String version of IO memory access ops:

View File

@ -16,21 +16,27 @@
unsigned int
ioread8(void __iomem *addr)
{
unsigned int ret = IO_CONCAT(__IO_PREFIX,ioread8)(addr);
unsigned int ret;
mb();
ret = IO_CONCAT(__IO_PREFIX,ioread8)(addr);
mb();
return ret;
}
unsigned int ioread16(void __iomem *addr)
{
unsigned int ret = IO_CONCAT(__IO_PREFIX,ioread16)(addr);
unsigned int ret;
mb();
ret = IO_CONCAT(__IO_PREFIX,ioread16)(addr);
mb();
return ret;
}
unsigned int ioread32(void __iomem *addr)
{
unsigned int ret = IO_CONCAT(__IO_PREFIX,ioread32)(addr);
unsigned int ret;
mb();
ret = IO_CONCAT(__IO_PREFIX,ioread32)(addr);
mb();
return ret;
}
@ -148,28 +154,36 @@ EXPORT_SYMBOL(__raw_writeq);
u8 readb(const volatile void __iomem *addr)
{
u8 ret = __raw_readb(addr);
u8 ret;
mb();
ret = __raw_readb(addr);
mb();
return ret;
}
u16 readw(const volatile void __iomem *addr)
{
u16 ret = __raw_readw(addr);
u16 ret;
mb();
ret = __raw_readw(addr);
mb();
return ret;
}
u32 readl(const volatile void __iomem *addr)
{
u32 ret = __raw_readl(addr);
u32 ret;
mb();
ret = __raw_readl(addr);
mb();
return ret;
}
u64 readq(const volatile void __iomem *addr)
{
u64 ret = __raw_readq(addr);
u64 ret;
mb();
ret = __raw_readq(addr);
mb();
return ret;
}
@ -207,6 +221,38 @@ EXPORT_SYMBOL(writew);
EXPORT_SYMBOL(writel);
EXPORT_SYMBOL(writeq);
/*
* The _relaxed functions must be ordered w.r.t. each other, but they don't
* have to be ordered w.r.t. other memory accesses.
*/
u8 readb_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readb(addr);
}
u16 readw_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readw(addr);
}
u32 readl_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readl(addr);
}
u64 readq_relaxed(const volatile void __iomem *addr)
{
mb();
return __raw_readq(addr);
}
EXPORT_SYMBOL(readb_relaxed);
EXPORT_SYMBOL(readw_relaxed);
EXPORT_SYMBOL(readl_relaxed);
EXPORT_SYMBOL(readq_relaxed);
/*
* Read COUNT 8-bit bytes from port PORT into memory starting at SRC.

View File

@ -88,7 +88,6 @@
AM33XX_PADCONF(AM335X_PIN_MMC0_DAT3, PIN_INPUT_PULLUP, MUX_MODE0)
AM33XX_PADCONF(AM335X_PIN_MMC0_CMD, PIN_INPUT_PULLUP, MUX_MODE0)
AM33XX_PADCONF(AM335X_PIN_MMC0_CLK, PIN_INPUT_PULLUP, MUX_MODE0)
AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKR, PIN_INPUT, MUX_MODE4) /* (B12) mcasp0_aclkr.mmc0_sdwp */
>;
};

View File

@ -40,7 +40,7 @@
ahb {
usb0: gadget@300000 {
atmel,vbus-gpio = <&pioA PIN_PA27 GPIO_ACTIVE_HIGH>;
atmel,vbus-gpio = <&pioA PIN_PB11 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usba_vbus>;
status = "okay";
@ -125,8 +125,6 @@
bus-width = <8>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc0_default>;
non-removable;
mmc-ddr-1_8v;
status = "okay";
};

View File

@ -257,10 +257,10 @@
status = "disabled";
};
mailbox: mailbox@25000 {
mailbox: mailbox@25c00 {
compatible = "brcm,iproc-fa2-mbox";
reg = <0x25000 0x445>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
reg = <0x25c00 0x400>;
interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
#mbox-cells = <1>;
brcm,rx-status-len = <32>;
brcm,use-bcm-hdr;

View File

@ -68,7 +68,7 @@
i2c_cm36651: i2c-gpio-2 {
compatible = "i2c-gpio";
gpios = <&gpf0 0 GPIO_ACTIVE_LOW>, <&gpf0 1 GPIO_ACTIVE_LOW>;
gpios = <&gpf0 0 GPIO_ACTIVE_HIGH>, <&gpf0 1 GPIO_ACTIVE_HIGH>;
i2c-gpio,delay-us = <2>;
#address-cells = <1>;
#size-cells = <0>;

View File

@ -139,7 +139,7 @@
ethernet@gpmc {
reg = <5 0 0xff>;
interrupt-parent = <&gpio2>;
interrupts = <12 IRQ_TYPE_EDGE_FALLING>; /* gpio_44 */
interrupts = <12 IRQ_TYPE_LEVEL_LOW>; /* gpio_44 */
phy-mode = "mii";

View File

@ -338,7 +338,7 @@
#thermal-sensor-cells = <0>;
};
ipmmu_sy0: mmu@e6280000 {
ipmmu_sy0: iommu@e6280000 {
compatible = "renesas,ipmmu-r8a7743",
"renesas,ipmmu-vmsa";
reg = <0 0xe6280000 0 0x1000>;
@ -348,7 +348,7 @@
status = "disabled";
};
ipmmu_sy1: mmu@e6290000 {
ipmmu_sy1: iommu@e6290000 {
compatible = "renesas,ipmmu-r8a7743",
"renesas,ipmmu-vmsa";
reg = <0 0xe6290000 0 0x1000>;
@ -357,7 +357,7 @@
status = "disabled";
};
ipmmu_ds: mmu@e6740000 {
ipmmu_ds: iommu@e6740000 {
compatible = "renesas,ipmmu-r8a7743",
"renesas,ipmmu-vmsa";
reg = <0 0xe6740000 0 0x1000>;
@ -367,7 +367,7 @@
status = "disabled";
};
ipmmu_mp: mmu@ec680000 {
ipmmu_mp: iommu@ec680000 {
compatible = "renesas,ipmmu-r8a7743",
"renesas,ipmmu-vmsa";
reg = <0 0xec680000 0 0x1000>;
@ -376,7 +376,7 @@
status = "disabled";
};
ipmmu_mx: mmu@fe951000 {
ipmmu_mx: iommu@fe951000 {
compatible = "renesas,ipmmu-r8a7743",
"renesas,ipmmu-vmsa";
reg = <0 0xfe951000 0 0x1000>;
@ -386,7 +386,7 @@
status = "disabled";
};
ipmmu_gp: mmu@e62a0000 {
ipmmu_gp: iommu@e62a0000 {
compatible = "renesas,ipmmu-r8a7743",
"renesas,ipmmu-vmsa";
reg = <0 0xe62a0000 0 0x1000>;

View File

@ -338,7 +338,7 @@
#thermal-sensor-cells = <0>;
};
ipmmu_sy0: mmu@e6280000 {
ipmmu_sy0: iommu@e6280000 {
compatible = "renesas,ipmmu-r8a7744",
"renesas,ipmmu-vmsa";
reg = <0 0xe6280000 0 0x1000>;
@ -348,7 +348,7 @@
status = "disabled";
};
ipmmu_sy1: mmu@e6290000 {
ipmmu_sy1: iommu@e6290000 {
compatible = "renesas,ipmmu-r8a7744",
"renesas,ipmmu-vmsa";
reg = <0 0xe6290000 0 0x1000>;
@ -357,7 +357,7 @@
status = "disabled";
};
ipmmu_ds: mmu@e6740000 {
ipmmu_ds: iommu@e6740000 {
compatible = "renesas,ipmmu-r8a7744",
"renesas,ipmmu-vmsa";
reg = <0 0xe6740000 0 0x1000>;
@ -367,7 +367,7 @@
status = "disabled";
};
ipmmu_mp: mmu@ec680000 {
ipmmu_mp: iommu@ec680000 {
compatible = "renesas,ipmmu-r8a7744",
"renesas,ipmmu-vmsa";
reg = <0 0xec680000 0 0x1000>;
@ -376,7 +376,7 @@
status = "disabled";
};
ipmmu_mx: mmu@fe951000 {
ipmmu_mx: iommu@fe951000 {
compatible = "renesas,ipmmu-r8a7744",
"renesas,ipmmu-vmsa";
reg = <0 0xfe951000 0 0x1000>;
@ -386,7 +386,7 @@
status = "disabled";
};
ipmmu_gp: mmu@e62a0000 {
ipmmu_gp: iommu@e62a0000 {
compatible = "renesas,ipmmu-r8a7744",
"renesas,ipmmu-vmsa";
reg = <0 0xe62a0000 0 0x1000>;

View File

@ -302,7 +302,7 @@
resets = <&cpg 407>;
};
ipmmu_sy0: mmu@e6280000 {
ipmmu_sy0: iommu@e6280000 {
compatible = "renesas,ipmmu-r8a7745",
"renesas,ipmmu-vmsa";
reg = <0 0xe6280000 0 0x1000>;
@ -312,7 +312,7 @@
status = "disabled";
};
ipmmu_sy1: mmu@e6290000 {
ipmmu_sy1: iommu@e6290000 {
compatible = "renesas,ipmmu-r8a7745",
"renesas,ipmmu-vmsa";
reg = <0 0xe6290000 0 0x1000>;
@ -321,7 +321,7 @@
status = "disabled";
};
ipmmu_ds: mmu@e6740000 {
ipmmu_ds: iommu@e6740000 {
compatible = "renesas,ipmmu-r8a7745",
"renesas,ipmmu-vmsa";
reg = <0 0xe6740000 0 0x1000>;
@ -331,7 +331,7 @@
status = "disabled";
};
ipmmu_mp: mmu@ec680000 {
ipmmu_mp: iommu@ec680000 {
compatible = "renesas,ipmmu-r8a7745",
"renesas,ipmmu-vmsa";
reg = <0 0xec680000 0 0x1000>;
@ -340,7 +340,7 @@
status = "disabled";
};
ipmmu_mx: mmu@fe951000 {
ipmmu_mx: iommu@fe951000 {
compatible = "renesas,ipmmu-r8a7745",
"renesas,ipmmu-vmsa";
reg = <0 0xfe951000 0 0x1000>;
@ -350,7 +350,7 @@
status = "disabled";
};
ipmmu_gp: mmu@e62a0000 {
ipmmu_gp: iommu@e62a0000 {
compatible = "renesas,ipmmu-r8a7745",
"renesas,ipmmu-vmsa";
reg = <0 0xe62a0000 0 0x1000>;

View File

@ -427,7 +427,7 @@
#thermal-sensor-cells = <0>;
};
ipmmu_sy0: mmu@e6280000 {
ipmmu_sy0: iommu@e6280000 {
compatible = "renesas,ipmmu-r8a7790",
"renesas,ipmmu-vmsa";
reg = <0 0xe6280000 0 0x1000>;
@ -437,7 +437,7 @@
status = "disabled";
};
ipmmu_sy1: mmu@e6290000 {
ipmmu_sy1: iommu@e6290000 {
compatible = "renesas,ipmmu-r8a7790",
"renesas,ipmmu-vmsa";
reg = <0 0xe6290000 0 0x1000>;
@ -446,7 +446,7 @@
status = "disabled";
};
ipmmu_ds: mmu@e6740000 {
ipmmu_ds: iommu@e6740000 {
compatible = "renesas,ipmmu-r8a7790",
"renesas,ipmmu-vmsa";
reg = <0 0xe6740000 0 0x1000>;
@ -456,7 +456,7 @@
status = "disabled";
};
ipmmu_mp: mmu@ec680000 {
ipmmu_mp: iommu@ec680000 {
compatible = "renesas,ipmmu-r8a7790",
"renesas,ipmmu-vmsa";
reg = <0 0xec680000 0 0x1000>;
@ -465,7 +465,7 @@
status = "disabled";
};
ipmmu_mx: mmu@fe951000 {
ipmmu_mx: iommu@fe951000 {
compatible = "renesas,ipmmu-r8a7790",
"renesas,ipmmu-vmsa";
reg = <0 0xfe951000 0 0x1000>;
@ -475,7 +475,7 @@
status = "disabled";
};
ipmmu_rt: mmu@ffc80000 {
ipmmu_rt: iommu@ffc80000 {
compatible = "renesas,ipmmu-r8a7790",
"renesas,ipmmu-vmsa";
reg = <0 0xffc80000 0 0x1000>;

View File

@ -350,7 +350,7 @@
#thermal-sensor-cells = <0>;
};
ipmmu_sy0: mmu@e6280000 {
ipmmu_sy0: iommu@e6280000 {
compatible = "renesas,ipmmu-r8a7791",
"renesas,ipmmu-vmsa";
reg = <0 0xe6280000 0 0x1000>;
@ -360,7 +360,7 @@
status = "disabled";
};
ipmmu_sy1: mmu@e6290000 {
ipmmu_sy1: iommu@e6290000 {
compatible = "renesas,ipmmu-r8a7791",
"renesas,ipmmu-vmsa";
reg = <0 0xe6290000 0 0x1000>;
@ -369,7 +369,7 @@
status = "disabled";
};
ipmmu_ds: mmu@e6740000 {
ipmmu_ds: iommu@e6740000 {
compatible = "renesas,ipmmu-r8a7791",
"renesas,ipmmu-vmsa";
reg = <0 0xe6740000 0 0x1000>;
@ -379,7 +379,7 @@
status = "disabled";
};
ipmmu_mp: mmu@ec680000 {
ipmmu_mp: iommu@ec680000 {
compatible = "renesas,ipmmu-r8a7791",
"renesas,ipmmu-vmsa";
reg = <0 0xec680000 0 0x1000>;
@ -388,7 +388,7 @@
status = "disabled";
};
ipmmu_mx: mmu@fe951000 {
ipmmu_mx: iommu@fe951000 {
compatible = "renesas,ipmmu-r8a7791",
"renesas,ipmmu-vmsa";
reg = <0 0xfe951000 0 0x1000>;
@ -398,7 +398,7 @@
status = "disabled";
};
ipmmu_rt: mmu@ffc80000 {
ipmmu_rt: iommu@ffc80000 {
compatible = "renesas,ipmmu-r8a7791",
"renesas,ipmmu-vmsa";
reg = <0 0xffc80000 0 0x1000>;
@ -407,7 +407,7 @@
status = "disabled";
};
ipmmu_gp: mmu@e62a0000 {
ipmmu_gp: iommu@e62a0000 {
compatible = "renesas,ipmmu-r8a7791",
"renesas,ipmmu-vmsa";
reg = <0 0xe62a0000 0 0x1000>;

View File

@ -336,7 +336,7 @@
#thermal-sensor-cells = <0>;
};
ipmmu_sy0: mmu@e6280000 {
ipmmu_sy0: iommu@e6280000 {
compatible = "renesas,ipmmu-r8a7793",
"renesas,ipmmu-vmsa";
reg = <0 0xe6280000 0 0x1000>;
@ -346,7 +346,7 @@
status = "disabled";
};
ipmmu_sy1: mmu@e6290000 {
ipmmu_sy1: iommu@e6290000 {
compatible = "renesas,ipmmu-r8a7793",
"renesas,ipmmu-vmsa";
reg = <0 0xe6290000 0 0x1000>;
@ -355,7 +355,7 @@
status = "disabled";
};
ipmmu_ds: mmu@e6740000 {
ipmmu_ds: iommu@e6740000 {
compatible = "renesas,ipmmu-r8a7793",
"renesas,ipmmu-vmsa";
reg = <0 0xe6740000 0 0x1000>;
@ -365,7 +365,7 @@
status = "disabled";
};
ipmmu_mp: mmu@ec680000 {
ipmmu_mp: iommu@ec680000 {
compatible = "renesas,ipmmu-r8a7793",
"renesas,ipmmu-vmsa";
reg = <0 0xec680000 0 0x1000>;
@ -374,7 +374,7 @@
status = "disabled";
};
ipmmu_mx: mmu@fe951000 {
ipmmu_mx: iommu@fe951000 {
compatible = "renesas,ipmmu-r8a7793",
"renesas,ipmmu-vmsa";
reg = <0 0xfe951000 0 0x1000>;
@ -384,7 +384,7 @@
status = "disabled";
};
ipmmu_rt: mmu@ffc80000 {
ipmmu_rt: iommu@ffc80000 {
compatible = "renesas,ipmmu-r8a7793",
"renesas,ipmmu-vmsa";
reg = <0 0xffc80000 0 0x1000>;
@ -393,7 +393,7 @@
status = "disabled";
};
ipmmu_gp: mmu@e62a0000 {
ipmmu_gp: iommu@e62a0000 {
compatible = "renesas,ipmmu-r8a7793",
"renesas,ipmmu-vmsa";
reg = <0 0xe62a0000 0 0x1000>;

View File

@ -290,7 +290,7 @@
resets = <&cpg 407>;
};
ipmmu_sy0: mmu@e6280000 {
ipmmu_sy0: iommu@e6280000 {
compatible = "renesas,ipmmu-r8a7794",
"renesas,ipmmu-vmsa";
reg = <0 0xe6280000 0 0x1000>;
@ -300,7 +300,7 @@
status = "disabled";
};
ipmmu_sy1: mmu@e6290000 {
ipmmu_sy1: iommu@e6290000 {
compatible = "renesas,ipmmu-r8a7794",
"renesas,ipmmu-vmsa";
reg = <0 0xe6290000 0 0x1000>;
@ -309,7 +309,7 @@
status = "disabled";
};
ipmmu_ds: mmu@e6740000 {
ipmmu_ds: iommu@e6740000 {
compatible = "renesas,ipmmu-r8a7794",
"renesas,ipmmu-vmsa";
reg = <0 0xe6740000 0 0x1000>;
@ -319,7 +319,7 @@
status = "disabled";
};
ipmmu_mp: mmu@ec680000 {
ipmmu_mp: iommu@ec680000 {
compatible = "renesas,ipmmu-r8a7794",
"renesas,ipmmu-vmsa";
reg = <0 0xec680000 0 0x1000>;
@ -328,7 +328,7 @@
status = "disabled";
};
ipmmu_mx: mmu@fe951000 {
ipmmu_mx: iommu@fe951000 {
compatible = "renesas,ipmmu-r8a7794",
"renesas,ipmmu-vmsa";
reg = <0 0xfe951000 0 0x1000>;
@ -338,7 +338,7 @@
status = "disabled";
};
ipmmu_gp: mmu@e62a0000 {
ipmmu_gp: iommu@e62a0000 {
compatible = "renesas,ipmmu-r8a7794",
"renesas,ipmmu-vmsa";
reg = <0 0xe62a0000 0 0x1000>;

View File

@ -454,6 +454,7 @@
pinctrl-names = "default";
cap-sd-highspeed;
cap-mmc-highspeed;
keep-power-in-suspend;
mmc-pwrseq = <&wifi_pwrseq>;
non-removable;

View File

@ -91,6 +91,9 @@
#address-cells = <1>;
#size-cells = <0>;
compatible = "snps,dwmac-mdio";
reset-gpios = <&gpioz 2 GPIO_ACTIVE_LOW>;
reset-delay-us = <1000>;
phy0: ethernet-phy@7 {
reg = <7>;
};

View File

@ -31,7 +31,7 @@
pwr_led {
label = "bananapi-m2-zero:red:pwr";
gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */
gpios = <&r_pio 0 10 GPIO_ACTIVE_LOW>; /* PL10 */
default-state = "on";
};
};

View File

@ -31,7 +31,7 @@
#interrupt-cells = <1>;
ranges;
nor_flash: flash@0,00000000 {
nor_flash: flash@0 {
compatible = "arm,vexpress-flash", "cfi-flash";
reg = <0 0x00000000 0x04000000>,
<4 0x00000000 0x04000000>;
@ -41,13 +41,13 @@
};
};
psram@1,00000000 {
psram@100000000 {
compatible = "arm,vexpress-psram", "mtd-ram";
reg = <1 0x00000000 0x02000000>;
bank-width = <4>;
};
ethernet@2,02000000 {
ethernet@202000000 {
compatible = "smsc,lan9118", "smsc,lan9115";
reg = <2 0x02000000 0x10000>;
interrupts = <15>;
@ -59,14 +59,14 @@
vddvario-supply = <&v2m_fixed_3v3>;
};
usb@2,03000000 {
usb@203000000 {
compatible = "nxp,usb-isp1761";
reg = <2 0x03000000 0x20000>;
interrupts = <16>;
port1-otg;
};
iofpga@3,00000000 {
iofpga@300000000 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;

View File

@ -363,6 +363,7 @@ static inline unsigned long vcpu_data_host_to_guest(struct kvm_vcpu *vcpu,
}
}
static inline void vcpu_ptrauth_setup_lazy(struct kvm_vcpu *vcpu) {}
static inline bool vcpu_has_ptrauth(struct kvm_vcpu *vcpu) { return false; }
static inline void vcpu_ptrauth_disable(struct kvm_vcpu *vcpu) { }
#endif /* __ARM_KVM_EMULATE_H__ */

View File

@ -421,4 +421,6 @@ static inline bool kvm_arm_vcpu_is_finalized(struct kvm_vcpu *vcpu)
return true;
}
#define kvm_arm_vcpu_loaded(vcpu) (false)
#endif /* __ARM_KVM_HOST_H__ */

View File

@ -17,7 +17,7 @@
#include <linux/types.h>
#define COMMAND_LINE_SIZE 1024
#define COMMAND_LINE_SIZE 4096
/* The list ends with an ATAG_NONE node. */
#define ATAG_NONE 0x00000000

View File

@ -219,8 +219,8 @@ static struct undef_hook arm_break_hook = {
};
static struct undef_hook thumb_break_hook = {
.instr_mask = 0xffff,
.instr_val = 0xde01,
.instr_mask = 0xffffffff,
.instr_val = 0x0000de01,
.cpsr_mask = PSR_T_BIT,
.cpsr_val = PSR_T_BIT,
.fn = break_trap,

View File

@ -295,14 +295,14 @@ static int __init imx_suspend_alloc_ocram(
if (!ocram_pool) {
pr_warn("%s: ocram pool unavailable!\n", __func__);
ret = -ENODEV;
goto put_node;
goto put_device;
}
ocram_base = gen_pool_alloc(ocram_pool, size);
if (!ocram_base) {
pr_warn("%s: unable to alloc ocram!\n", __func__);
ret = -ENOMEM;
goto put_node;
goto put_device;
}
phys = gen_pool_virt_to_phys(ocram_pool, ocram_base);
@ -312,6 +312,8 @@ static int __init imx_suspend_alloc_ocram(
if (virt_out)
*virt_out = virt;
put_device:
put_device(&pdev->dev);
put_node:
of_node_put(node);

View File

@ -4,6 +4,8 @@ menuconfig ARCH_INTEGRATOR
depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V6
select ARM_AMBA
select COMMON_CLK_VERSATILE
select CMA
select DMA_CMA
select HAVE_TCM
select ICST
select MFD_SYSCON
@ -35,14 +37,13 @@ config INTEGRATOR_IMPD1
select ARM_VIC
select GPIO_PL061
select GPIOLIB
select REGULATOR
select REGULATOR_FIXED_VOLTAGE
help
The IM-PD1 is an add-on logic module for the Integrator which
allows ARM(R) Ltd PrimeCells to be developed and evaluated.
The IM-PD1 can be found on the Integrator/PP2 platform.
To compile this driver as a module, choose M here: the
module will be called impd1.
config INTEGRATOR_CM7TDMI
bool "Integrator/CM7TDMI core module"
depends on ARCH_INTEGRATOR_AP

View File

@ -3535,7 +3535,7 @@ static const struct omap_hwmod_reset dra7_reset_quirks[] = {
};
static const struct omap_hwmod_reset omap_reset_quirks[] = {
{ .match = "dss", .len = 3, .reset = omap_dss_reset, },
{ .match = "dss_core", .len = 8, .reset = omap_dss_reset, },
{ .match = "hdq1w", .len = 5, .reset = omap_hdq1w_reset, },
{ .match = "i2c", .len = 3, .reset = omap_i2c_reset, },
{ .match = "wd_timer", .len = 8, .reset = omap2_wd_timer_reset, },

View File

@ -106,8 +106,8 @@ static const char * const tegra_dt_board_compat[] = {
};
DT_MACHINE_START(TEGRA_DT, "NVIDIA Tegra SoC (Flattened Device Tree)")
.l2c_aux_val = 0x3c400001,
.l2c_aux_mask = 0xc20fc3fe,
.l2c_aux_val = 0x3c400000,
.l2c_aux_mask = 0xc20fc3ff,
.smp = smp_ops(tegra_smp_ops),
.map_io = tegra_map_common_io,
.init_early = tegra_init_early,

View File

@ -5,6 +5,7 @@
* VMA_VM_FLAGS
* VM_EXEC
*/
#include <linux/const.h>
#include <asm/asm-offsets.h>
#include <asm/thread_info.h>
@ -30,7 +31,7 @@
* act_mm - get current->active_mm
*/
.macro act_mm, rd
bic \rd, sp, #8128
bic \rd, sp, #(THREAD_SIZE - 1) & ~63
bic \rd, \rd, #63
ldr \rd, [\rd, #TI_TASK]
.if (TSK_ACTIVE_MM > IMM12_MASK)

View File

@ -1728,18 +1728,18 @@
};
sram: sram@fffc0000 {
compatible = "amlogic,meson-axg-sram", "mmio-sram";
compatible = "mmio-sram";
reg = <0x0 0xfffc0000 0x0 0x20000>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 0x0 0xfffc0000 0x20000>;
cpu_scp_lpri: scp-shmem@13000 {
cpu_scp_lpri: scp-sram@13000 {
compatible = "amlogic,meson-axg-scp-shmem";
reg = <0x13000 0x400>;
};
cpu_scp_hpri: scp-shmem@13400 {
cpu_scp_hpri: scp-sram@13400 {
compatible = "amlogic,meson-axg-scp-shmem";
reg = <0x13400 0x400>;
};

View File

@ -345,20 +345,20 @@
};
sram: sram@c8000000 {
compatible = "amlogic,meson-gx-sram", "amlogic,meson-gxbb-sram", "mmio-sram";
compatible = "mmio-sram";
reg = <0x0 0xc8000000 0x0 0x14000>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 0x0 0xc8000000 0x14000>;
cpu_scp_lpri: scp-shmem@0 {
compatible = "amlogic,meson-gx-scp-shmem", "amlogic,meson-gxbb-scp-shmem";
cpu_scp_lpri: scp-sram@0 {
compatible = "amlogic,meson-gxbb-scp-shmem";
reg = <0x13000 0x400>;
};
cpu_scp_hpri: scp-shmem@200 {
compatible = "amlogic,meson-gx-scp-shmem", "amlogic,meson-gxbb-scp-shmem";
cpu_scp_hpri: scp-sram@200 {
compatible = "amlogic,meson-gxbb-scp-shmem";
reg = <0x13400 0x400>;
};
};

View File

@ -8,7 +8,7 @@
gic: interrupt-controller@2c001000 {
compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
#interrupt-cells = <3>;
#address-cells = <2>;
#address-cells = <1>;
interrupt-controller;
reg = <0x0 0x2c001000 0 0x1000>,
<0x0 0x2c002000 0 0x2000>,

View File

@ -8,9 +8,9 @@
gic: interrupt-controller@2f000000 {
compatible = "arm,gic-v3";
#interrupt-cells = <3>;
#address-cells = <2>;
#size-cells = <2>;
ranges;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x0 0x2f000000 0x100000>;
interrupt-controller;
reg = <0x0 0x2f000000 0x0 0x10000>,
<0x0 0x2f100000 0x0 0x200000>,
@ -22,7 +22,7 @@
its: its@2f020000 {
compatible = "arm,gic-v3-its";
msi-controller;
reg = <0x0 0x2f020000 0x0 0x20000>;
reg = <0x20000 0x20000>;
};
};
};

View File

@ -107,51 +107,51 @@
#interrupt-cells = <1>;
interrupt-map-mask = <0 0 63>;
interrupt-map = <0 0 0 &gic 0 0 GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
<0 0 1 &gic 0 0 GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
<0 0 2 &gic 0 0 GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
<0 0 3 &gic 0 0 GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
<0 0 4 &gic 0 0 GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
<0 0 5 &gic 0 0 GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
<0 0 6 &gic 0 0 GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
<0 0 7 &gic 0 0 GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
<0 0 8 &gic 0 0 GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
<0 0 9 &gic 0 0 GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
<0 0 10 &gic 0 0 GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
<0 0 11 &gic 0 0 GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
<0 0 12 &gic 0 0 GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
<0 0 13 &gic 0 0 GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
<0 0 14 &gic 0 0 GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
<0 0 15 &gic 0 0 GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
<0 0 16 &gic 0 0 GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
<0 0 17 &gic 0 0 GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
<0 0 18 &gic 0 0 GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
<0 0 19 &gic 0 0 GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
<0 0 20 &gic 0 0 GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
<0 0 21 &gic 0 0 GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
<0 0 22 &gic 0 0 GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
<0 0 23 &gic 0 0 GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
<0 0 24 &gic 0 0 GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
<0 0 25 &gic 0 0 GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
<0 0 26 &gic 0 0 GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
<0 0 27 &gic 0 0 GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
<0 0 28 &gic 0 0 GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,
<0 0 29 &gic 0 0 GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
<0 0 30 &gic 0 0 GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
<0 0 31 &gic 0 0 GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
<0 0 32 &gic 0 0 GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
<0 0 33 &gic 0 0 GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
<0 0 34 &gic 0 0 GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
<0 0 35 &gic 0 0 GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
<0 0 36 &gic 0 0 GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
<0 0 37 &gic 0 0 GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
<0 0 38 &gic 0 0 GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,
<0 0 39 &gic 0 0 GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
<0 0 40 &gic 0 0 GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
<0 0 41 &gic 0 0 GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
<0 0 42 &gic 0 0 GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
interrupt-map = <0 0 0 &gic 0 GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
<0 0 1 &gic 0 GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
<0 0 2 &gic 0 GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
<0 0 3 &gic 0 GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
<0 0 4 &gic 0 GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
<0 0 5 &gic 0 GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
<0 0 6 &gic 0 GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
<0 0 7 &gic 0 GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
<0 0 8 &gic 0 GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
<0 0 9 &gic 0 GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
<0 0 10 &gic 0 GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
<0 0 11 &gic 0 GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
<0 0 12 &gic 0 GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
<0 0 13 &gic 0 GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
<0 0 14 &gic 0 GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
<0 0 15 &gic 0 GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
<0 0 16 &gic 0 GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
<0 0 17 &gic 0 GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
<0 0 18 &gic 0 GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
<0 0 19 &gic 0 GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
<0 0 20 &gic 0 GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
<0 0 21 &gic 0 GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
<0 0 22 &gic 0 GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
<0 0 23 &gic 0 GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
<0 0 24 &gic 0 GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
<0 0 25 &gic 0 GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
<0 0 26 &gic 0 GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
<0 0 27 &gic 0 GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
<0 0 28 &gic 0 GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>,
<0 0 29 &gic 0 GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>,
<0 0 30 &gic 0 GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
<0 0 31 &gic 0 GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
<0 0 32 &gic 0 GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
<0 0 33 &gic 0 GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
<0 0 34 &gic 0 GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
<0 0 35 &gic 0 GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
<0 0 36 &gic 0 GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
<0 0 37 &gic 0 GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
<0 0 38 &gic 0 GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,
<0 0 39 &gic 0 GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
<0 0 40 &gic 0 GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
<0 0 41 &gic 0 GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
<0 0 42 &gic 0 GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
ethernet@2,02000000 {
ethernet@202000000 {
compatible = "smsc,lan91c111";
reg = <2 0x02000000 0x10000>;
interrupts = <15>;
@ -178,7 +178,7 @@
clock-output-names = "v2m:refclk32khz";
};
iofpga@3,00000000 {
iofpga@300000000 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;

View File

@ -62,35 +62,35 @@
<0x0 0x2c02f000 0 0x2000>,
<0x0 0x2c04f000 0 0x2000>,
<0x0 0x2c06f000 0 0x2000>;
#address-cells = <2>;
#address-cells = <1>;
#interrupt-cells = <3>;
#size-cells = <2>;
#size-cells = <1>;
interrupt-controller;
interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_HIGH)>;
ranges = <0 0 0 0x2c1c0000 0 0x40000>;
ranges = <0 0 0x2c1c0000 0x40000>;
v2m_0: v2m@0 {
compatible = "arm,gic-v2m-frame";
msi-controller;
reg = <0 0 0 0x10000>;
reg = <0 0x10000>;
};
v2m@10000 {
compatible = "arm,gic-v2m-frame";
msi-controller;
reg = <0 0x10000 0 0x10000>;
reg = <0x10000 0x10000>;
};
v2m@20000 {
compatible = "arm,gic-v2m-frame";
msi-controller;
reg = <0 0x20000 0 0x10000>;
reg = <0x20000 0x10000>;
};
v2m@30000 {
compatible = "arm,gic-v2m-frame";
msi-controller;
reg = <0 0x30000 0 0x10000>;
reg = <0x30000 0x10000>;
};
};
@ -519,10 +519,10 @@
<0x42000000 0x40 0x00000000 0x40 0x00000000 0x1 0x00000000>;
#interrupt-cells = <1>;
interrupt-map-mask = <0 0 0 7>;
interrupt-map = <0 0 0 1 &gic 0 0 GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
<0 0 0 2 &gic 0 0 GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
<0 0 0 3 &gic 0 0 GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
<0 0 0 4 &gic 0 0 GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
interrupt-map = <0 0 0 1 &gic 0 GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
<0 0 0 2 &gic 0 GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
<0 0 0 3 &gic 0 GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
<0 0 0 4 &gic 0 GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
msi-parent = <&v2m_0>;
status = "disabled";
iommu-map-mask = <0x0>; /* RC has no means to output PCI RID */
@ -786,19 +786,19 @@
#interrupt-cells = <1>;
interrupt-map-mask = <0 0 15>;
interrupt-map = <0 0 0 &gic 0 0 GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
<0 0 1 &gic 0 0 GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
<0 0 2 &gic 0 0 GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
<0 0 3 &gic 0 0 GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
<0 0 4 &gic 0 0 GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
<0 0 5 &gic 0 0 GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
<0 0 6 &gic 0 0 GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
<0 0 7 &gic 0 0 GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
<0 0 8 &gic 0 0 GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
<0 0 9 &gic 0 0 GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>,
<0 0 10 &gic 0 0 GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>,
<0 0 11 &gic 0 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
<0 0 12 &gic 0 0 GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
interrupt-map = <0 0 0 &gic 0 GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
<0 0 1 &gic 0 GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
<0 0 2 &gic 0 GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
<0 0 3 &gic 0 GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
<0 0 4 &gic 0 GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
<0 0 5 &gic 0 GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
<0 0 6 &gic 0 GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
<0 0 7 &gic 0 GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
<0 0 8 &gic 0 GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
<0 0 9 &gic 0 GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>,
<0 0 10 &gic 0 GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>,
<0 0 11 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
<0 0 12 &gic 0 GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
};
site2: tlx@60000000 {
@ -808,6 +808,6 @@
ranges = <0 0 0x60000000 0x10000000>;
#interrupt-cells = <1>;
interrupt-map-mask = <0 0>;
interrupt-map = <0 0 &gic 0 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
interrupt-map = <0 0 &gic 0 GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
};
};

View File

@ -103,7 +103,7 @@
};
};
flash@0,00000000 {
flash@0 {
/* 2 * 32MiB NOR Flash memory mounted on CS0 */
compatible = "arm,vexpress-flash", "cfi-flash";
reg = <0 0x00000000 0x04000000>;
@ -120,7 +120,7 @@
};
};
ethernet@2,00000000 {
ethernet@200000000 {
compatible = "smsc,lan9118", "smsc,lan9115";
reg = <2 0x00000000 0x10000>;
interrupts = <3>;
@ -133,7 +133,7 @@
vddvario-supply = <&mb_fixed_3v3>;
};
iofpga@3,00000000 {
iofpga@300000000 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;

View File

@ -9,7 +9,7 @@
motherboard {
arm,v2m-memory-map = "rs2";
iofpga@3,00000000 {
iofpga@300000000 {
virtio-p9@140000 {
compatible = "virtio,mmio";
reg = <0x140000 0x200>;

View File

@ -17,14 +17,14 @@
#interrupt-cells = <1>;
ranges;
flash@0,00000000 {
flash@0 {
compatible = "arm,vexpress-flash", "cfi-flash";
reg = <0 0x00000000 0x04000000>,
<4 0x00000000 0x04000000>;
bank-width = <4>;
};
ethernet@2,02000000 {
ethernet@202000000 {
compatible = "smsc,lan91c111";
reg = <2 0x02000000 0x10000>;
interrupts = <15>;
@ -51,7 +51,7 @@
clock-output-names = "v2m:refclk32khz";
};
iofpga@3,00000000 {
iofpga@300000000 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;

View File

@ -231,7 +231,7 @@
ldo1_reg: LDO1 {
regulator-name = "LDO1";
regulator-min-microvolt = <3000000>;
regulator-min-microvolt = <1600000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
@ -239,7 +239,7 @@
ldo2_reg: LDO2 {
regulator-name = "LDO2";
regulator-min-microvolt = <900000>;
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <900000>;
regulator-boot-on;
regulator-always-on;

View File

@ -268,7 +268,7 @@
ldo1_reg: LDO1 {
regulator-name = "LDO1";
regulator-min-microvolt = <3000000>;
regulator-min-microvolt = <1600000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
@ -276,7 +276,7 @@
ldo2_reg: LDO2 {
regulator-name = "LDO2";
regulator-min-microvolt = <900000>;
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <900000>;
regulator-boot-on;
regulator-always-on;

View File

@ -95,7 +95,7 @@
};
sfp: sfp {
compatible = "sff,sfp+";
compatible = "sff,sfp";
i2c-bus = <&i2c0>;
los-gpio = <&moxtet_sfp 0 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&moxtet_sfp 1 GPIO_ACTIVE_HIGH>;
@ -171,6 +171,8 @@
marvell,pad-type = "sd";
vqmmc-supply = <&vsdio_reg>;
mmc-pwrseq = <&sdhci1_pwrseq>;
/* forbid SDR104 for FCC purposes */
sdhci-caps-mask = <0x2 0x0>;
status = "okay";
};

View File

@ -238,21 +238,21 @@
cpu_on = <0x84000003>;
};
clk26m: oscillator@0 {
clk26m: oscillator0 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <26000000>;
clock-output-names = "clk26m";
};
clk32k: oscillator@1 {
clk32k: oscillator1 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32000>;
clock-output-names = "clk32k";
};
cpum_ck: oscillator@2 {
cpum_ck: oscillator2 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <0>;
@ -268,19 +268,19 @@
sustainable-power = <1500>; /* milliwatts */
trips {
threshold: trip-point@0 {
threshold: trip-point0 {
temperature = <68000>;
hysteresis = <2000>;
type = "passive";
};
target: trip-point@1 {
target: trip-point1 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cpu_crit: cpu_crit@0 {
cpu_crit: cpu_crit0 {
temperature = <115000>;
hysteresis = <2000>;
type = "critical";
@ -288,13 +288,13 @@
};
cooling-maps {
map@0 {
map0 {
trip = <&target>;
cooling-device = <&cpu0 0 0>,
<&cpu1 0 0>;
contribution = <3072>;
};
map@1 {
map1 {
trip = <&target>;
cooling-device = <&cpu2 0 0>,
<&cpu3 0 0>;
@ -308,7 +308,7 @@
#address-cells = <2>;
#size-cells = <2>;
ranges;
vpu_dma_reserved: vpu_dma_mem_region {
vpu_dma_reserved: vpu_dma_mem_region@b7000000 {
compatible = "shared-dma-pool";
reg = <0 0xb7000000 0 0x500000>;
alignment = <0x1000>;
@ -360,7 +360,7 @@
reg = <0 0x10005000 0 0x1000>;
};
pio: pinctrl@10005000 {
pio: pinctrl@1000b000 {
compatible = "mediatek,mt8173-pinctrl";
reg = <0 0x1000b000 0 0x1000>;
mediatek,pctl-regmap = <&syscfg_pctl_a>;
@ -567,7 +567,7 @@
status = "disabled";
};
gic: interrupt-controller@10220000 {
gic: interrupt-controller@10221000 {
compatible = "arm,gic-400";
#interrupt-cells = <3>;
interrupt-parent = <&gic>;

View File

@ -32,7 +32,7 @@
phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 5) GPIO_ACTIVE_LOW>;
phy-handle = <&phy>;
phy-mode = "rgmii";
phy-mode = "rgmii-id";
mdio {
#address-cells = <1>;

View File

@ -1192,7 +1192,7 @@
bus-range = <0x0 0xff>;
ranges = <0x81000000 0x0 0x30100000 0x0 0x30100000 0x0 0x00100000 /* downstream I/O (1MB) */
0xc2000000 0x12 0x00000000 0x12 0x00000000 0x0 0x30000000 /* prefetchable memory (768MB) */
0xc3000000 0x12 0x00000000 0x12 0x00000000 0x0 0x30000000 /* prefetchable memory (768MB) */
0x82000000 0x0 0x40000000 0x12 0x30000000 0x0 0x10000000>; /* non-prefetchable memory (256MB) */
};
@ -1238,7 +1238,7 @@
bus-range = <0x0 0xff>;
ranges = <0x81000000 0x0 0x32100000 0x0 0x32100000 0x0 0x00100000 /* downstream I/O (1MB) */
0xc2000000 0x12 0x40000000 0x12 0x40000000 0x0 0x30000000 /* prefetchable memory (768MB) */
0xc3000000 0x12 0x40000000 0x12 0x40000000 0x0 0x30000000 /* prefetchable memory (768MB) */
0x82000000 0x0 0x40000000 0x12 0x70000000 0x0 0x10000000>; /* non-prefetchable memory (256MB) */
};
@ -1284,7 +1284,7 @@
bus-range = <0x0 0xff>;
ranges = <0x81000000 0x0 0x34100000 0x0 0x34100000 0x0 0x00100000 /* downstream I/O (1MB) */
0xc2000000 0x12 0x80000000 0x12 0x80000000 0x0 0x30000000 /* prefetchable memory (768MB) */
0xc3000000 0x12 0x80000000 0x12 0x80000000 0x0 0x30000000 /* prefetchable memory (768MB) */
0x82000000 0x0 0x40000000 0x12 0xb0000000 0x0 0x10000000>; /* non-prefetchable memory (256MB) */
};
@ -1330,7 +1330,7 @@
bus-range = <0x0 0xff>;
ranges = <0x81000000 0x0 0x36100000 0x0 0x36100000 0x0 0x00100000 /* downstream I/O (1MB) */
0xc2000000 0x14 0x00000000 0x14 0x00000000 0x3 0x40000000 /* prefetchable memory (13GB) */
0xc3000000 0x14 0x00000000 0x14 0x00000000 0x3 0x40000000 /* prefetchable memory (13GB) */
0x82000000 0x0 0x40000000 0x17 0x40000000 0x0 0xc0000000>; /* non-prefetchable memory (3GB) */
};
@ -1376,7 +1376,7 @@
bus-range = <0x0 0xff>;
ranges = <0x81000000 0x0 0x38100000 0x0 0x38100000 0x0 0x00100000 /* downstream I/O (1MB) */
0xc2000000 0x18 0x00000000 0x18 0x00000000 0x3 0x40000000 /* prefetchable memory (13GB) */
0xc3000000 0x18 0x00000000 0x18 0x00000000 0x3 0x40000000 /* prefetchable memory (13GB) */
0x82000000 0x0 0x40000000 0x1b 0x40000000 0x0 0xc0000000>; /* non-prefetchable memory (3GB) */
};
@ -1426,7 +1426,7 @@
bus-range = <0x0 0xff>;
ranges = <0x81000000 0x0 0x3a100000 0x0 0x3a100000 0x0 0x00100000 /* downstream I/O (1MB) */
0xc2000000 0x1c 0x00000000 0x1c 0x00000000 0x3 0x40000000 /* prefetchable memory (13GB) */
0xc3000000 0x1c 0x00000000 0x1c 0x00000000 0x3 0x40000000 /* prefetchable memory (13GB) */
0x82000000 0x0 0x40000000 0x1f 0x40000000 0x0 0xc0000000>; /* non-prefetchable memory (3GB) */
};

View File

@ -212,7 +212,7 @@
thermal-sensors = <&tsens 3>;
trips {
cpu2_3_alert0: trip-point@0 {
cpu2_3_alert0: trip-point0 {
temperature = <75000>;
hysteresis = <2000>;
type = "passive";
@ -242,7 +242,7 @@
thermal-sensors = <&tsens 2>;
trips {
gpu_alert0: trip-point@0 {
gpu_alert0: trip-point0 {
temperature = <75000>;
hysteresis = <2000>;
type = "passive";
@ -262,7 +262,7 @@
thermal-sensors = <&tsens 1>;
trips {
cam_alert0: trip-point@0 {
cam_alert0: trip-point0 {
temperature = <75000>;
hysteresis = <2000>;
type = "hot";
@ -277,7 +277,7 @@
thermal-sensors = <&tsens 0>;
trips {
modem_alert0: trip-point@0 {
modem_alert0: trip-point0 {
temperature = <85000>;
hysteresis = <2000>;
type = "hot";

View File

@ -1681,16 +1681,16 @@
"csi_clk_mux",
"vfe0",
"vfe1";
interrupts = <GIC_SPI 78 0>,
<GIC_SPI 79 0>,
<GIC_SPI 80 0>,
<GIC_SPI 296 0>,
<GIC_SPI 297 0>,
<GIC_SPI 298 0>,
<GIC_SPI 299 0>,
<GIC_SPI 309 0>,
<GIC_SPI 314 0>,
<GIC_SPI 315 0>;
interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 79 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 80 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 296 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 297 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 298 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 299 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 309 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 314 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 315 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "csiphy0",
"csiphy1",
"csiphy2",

View File

@ -73,18 +73,8 @@
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
interrupts = <0x0 0xc0 0x0 IRQ_TYPE_NONE>,
<0x0 0xc1 0x0 IRQ_TYPE_NONE>,
<0x0 0xc2 0x0 IRQ_TYPE_NONE>,
<0x0 0xc3 0x0 IRQ_TYPE_NONE>,
<0x0 0xc4 0x0 IRQ_TYPE_NONE>,
<0x0 0xc5 0x0 IRQ_TYPE_NONE>,
<0x0 0xc6 0x0 IRQ_TYPE_NONE>,
<0x0 0xc7 0x0 IRQ_TYPE_NONE>,
<0x0 0xc8 0x0 IRQ_TYPE_NONE>,
<0x0 0xc9 0x0 IRQ_TYPE_NONE>,
<0x0 0xca 0x0 IRQ_TYPE_NONE>,
<0x0 0xcb 0x0 IRQ_TYPE_NONE>;
interrupt-controller;
#interrupt-cells = <2>;
};
};

View File

@ -62,18 +62,8 @@
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
interrupts = <0x2 0xc0 0x0 IRQ_TYPE_NONE>,
<0x2 0xc1 0x0 IRQ_TYPE_NONE>,
<0x2 0xc2 0x0 IRQ_TYPE_NONE>,
<0x2 0xc3 0x0 IRQ_TYPE_NONE>,
<0x2 0xc4 0x0 IRQ_TYPE_NONE>,
<0x2 0xc5 0x0 IRQ_TYPE_NONE>,
<0x2 0xc6 0x0 IRQ_TYPE_NONE>,
<0x2 0xc7 0x0 IRQ_TYPE_NONE>,
<0x2 0xc8 0x0 IRQ_TYPE_NONE>,
<0x2 0xc9 0x0 IRQ_TYPE_NONE>,
<0x2 0xca 0x0 IRQ_TYPE_NONE>,
<0x2 0xcb 0x0 IRQ_TYPE_NONE>;
interrupt-controller;
#interrupt-cells = <2>;
};
};

View File

@ -56,18 +56,8 @@
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
interrupts = <0x4 0xc0 0x0 IRQ_TYPE_NONE>,
<0x4 0xc1 0x0 IRQ_TYPE_NONE>,
<0x4 0xc2 0x0 IRQ_TYPE_NONE>,
<0x4 0xc3 0x0 IRQ_TYPE_NONE>,
<0x4 0xc4 0x0 IRQ_TYPE_NONE>,
<0x4 0xc5 0x0 IRQ_TYPE_NONE>,
<0x4 0xc6 0x0 IRQ_TYPE_NONE>,
<0x4 0xc7 0x0 IRQ_TYPE_NONE>,
<0x4 0xc8 0x0 IRQ_TYPE_NONE>,
<0x4 0xc9 0x0 IRQ_TYPE_NONE>,
<0x4 0xca 0x0 IRQ_TYPE_NONE>,
<0x4 0xcb 0x0 IRQ_TYPE_NONE>;
interrupt-controller;
#interrupt-cells = <2>;
};
};

View File

@ -68,3 +68,5 @@ CONFIG_INTERCONNECT_QCOM_SDM845=m
CONFIG_QCOM_PDC=m
CONFIG_QCOM_SCM=m
CONFIG_ARM_SMMU=m
CONFIG_INCREMENTAL_FS=m
CONFIG_PINCTRL_MSM=m

View File

@ -224,6 +224,7 @@ CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
CONFIG_GNSS=y
CONFIG_ZRAM=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_LOOP_MIN_COUNT=16
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_UID_SYS_STATS=y
@ -231,7 +232,10 @@ CONFIG_SCSI=y
# CONFIG_SCSI_PROC_FS is not set
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_UFSHCD=y
CONFIG_SCSI_UFSHCD_PCI=y
CONFIG_SCSI_UFSHCD_PLATFORM=y
CONFIG_SCSI_UFS_DWC_TC_PLATFORM=y
CONFIG_SCSI_UFS_HISI=y
CONFIG_SCSI_UFS_CRYPTO=y
CONFIG_MD=y
CONFIG_BLK_DEV_DM=y
@ -367,12 +371,14 @@ CONFIG_USB_DUMMY_HCD=y
CONFIG_USB_CONFIGFS=y
CONFIG_USB_CONFIGFS_UEVENT=y
CONFIG_USB_CONFIGFS_SERIAL=y
CONFIG_USB_CONFIGFS_ACM=y
CONFIG_USB_CONFIGFS_RNDIS=y
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
CONFIG_USB_CONFIGFS_F_FS=y
CONFIG_USB_CONFIGFS_F_ACC=y
CONFIG_USB_CONFIGFS_F_AUDIO_SRC=y
CONFIG_USB_CONFIGFS_F_MIDI=y
CONFIG_USB_CONFIGFS_F_HID=y
CONFIG_TYPEC=y
CONFIG_MMC=y
# CONFIG_PWRSEQ_EMMC is not set
@ -417,6 +423,7 @@ CONFIG_LIBNVDIMM=y
# CONFIG_ND_BLK is not set
CONFIG_INTERCONNECT=y
CONFIG_EXT4_FS=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_F2FS_FS=y
CONFIG_F2FS_FS_SECURITY=y
@ -429,7 +436,6 @@ CONFIG_QUOTA=y
CONFIG_QFMT_V2=y
CONFIG_FUSE_FS=y
CONFIG_OVERLAY_FS=y
CONFIG_INCREMENTAL_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_TMPFS=y
@ -437,6 +443,7 @@ CONFIG_TMPFS=y
CONFIG_PSTORE=y
CONFIG_PSTORE_CONSOLE=y
CONFIG_PSTORE_RAM=y
CONFIG_EROFS_FS=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_CODEPAGE_737=y
CONFIG_NLS_CODEPAGE_775=y

View File

@ -63,3 +63,4 @@ CONFIG_MALI_PLATFORM_NAME="hisilicon"
CONFIG_MALI_EXPERT=y
CONFIG_MALI_PWRSOFT_765=y
CONFIG_PHY_HI3660_USB=m
CONFIG_INCREMENTAL_FS=m

View File

@ -6,6 +6,7 @@ CONFIG_UNUSED_KSYMS_WHITELIST="abi_gki_aarch64_qcom_whitelist abi_gki_aarch64_qc
CONFIG_UNUSED_KSYMS_WHITELIST_ONLY=y
CONFIG_REGULATOR_STUB=m
CONFIG_REGULATOR_PROXY_CONSUMER=m
CONFIG_PINCTRL_MSM=m
CONFIG_PINCTRL_LAHAINA=m
CONFIG_PINCTRL_SHIMA=m
CONFIG_KEYBOARD_GPIO=m

View File

@ -12,6 +12,7 @@
#include <linux/efi.h>
#include <linux/memblock.h>
#include <linux/psci.h>
#include <linux/stddef.h>
#include <asm/cputype.h>
#include <asm/io.h>
@ -31,14 +32,14 @@
* is therefore used to delimit the MADT GICC structure minimum length
* appropriately.
*/
#define ACPI_MADT_GICC_MIN_LENGTH ACPI_OFFSET( \
#define ACPI_MADT_GICC_MIN_LENGTH offsetof( \
struct acpi_madt_generic_interrupt, efficiency_class)
#define BAD_MADT_GICC_ENTRY(entry, end) \
(!(entry) || (entry)->header.length < ACPI_MADT_GICC_MIN_LENGTH || \
(unsigned long)(entry) + (entry)->header.length > (end))
#define ACPI_MADT_GICC_SPE (ACPI_OFFSET(struct acpi_madt_generic_interrupt, \
#define ACPI_MADT_GICC_SPE (offsetof(struct acpi_madt_generic_interrupt, \
spe_interrupt) + sizeof(u16))
/* Basic configuration for ACPI */

View File

@ -84,7 +84,7 @@ static inline void flush_icache_range(unsigned long start, unsigned long end)
* IPI all online CPUs so that they undergo a context synchronization
* event and are forced to refetch the new instructions.
*/
#ifdef CONFIG_KGDB
/*
* KGDB performs cache maintenance with interrupts disabled, so we
* will deadlock trying to IPI the secondary CPUs. In theory, we can
@ -94,9 +94,9 @@ static inline void flush_icache_range(unsigned long start, unsigned long end)
* the patching operation, so we don't need extra IPIs here anyway.
* In which case, add a KGDB-specific bodge and return early.
*/
if (kgdb_connected && irqs_disabled())
if (in_dbg_master())
return;
#endif
kick_all_cpus_sync();
}

View File

@ -97,12 +97,6 @@ static inline void vcpu_ptrauth_disable(struct kvm_vcpu *vcpu)
vcpu->arch.hcr_el2 &= ~(HCR_API | HCR_APK);
}
static inline void vcpu_ptrauth_setup_lazy(struct kvm_vcpu *vcpu)
{
if (vcpu_has_ptrauth(vcpu))
vcpu_ptrauth_disable(vcpu);
}
static inline unsigned long vcpu_get_vsesr(struct kvm_vcpu *vcpu)
{
return vcpu->arch.vsesr_el2;

View File

@ -392,8 +392,10 @@ void vcpu_write_sys_reg(struct kvm_vcpu *vcpu, u64 val, int reg);
* CP14 and CP15 live in the same array, as they are backed by the
* same system registers.
*/
#define vcpu_cp14(v,r) ((v)->arch.ctxt.copro[(r)])
#define vcpu_cp15(v,r) ((v)->arch.ctxt.copro[(r)])
#define CPx_BIAS IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)
#define vcpu_cp14(v,r) ((v)->arch.ctxt.copro[(r) ^ CPx_BIAS])
#define vcpu_cp15(v,r) ((v)->arch.ctxt.copro[(r) ^ CPx_BIAS])
struct kvm_vm_stat {
ulong remote_tlb_flush;
@ -677,4 +679,6 @@ bool kvm_arm_vcpu_is_finalized(struct kvm_vcpu *vcpu);
#define kvm_arm_vcpu_sve_finalized(vcpu) \
((vcpu)->arch.flags & KVM_ARM64_VCPU_SVE_FINALIZED)
#define kvm_arm_vcpu_loaded(vcpu) ((vcpu)->arch.sysregs_loaded_on_cpu)
#endif /* __ARM64_KVM_HOST_H__ */

View File

@ -456,6 +456,7 @@ extern pgd_t init_pg_dir[PTRS_PER_PGD];
extern pgd_t init_pg_end[];
extern pgd_t swapper_pg_dir[PTRS_PER_PGD];
extern pgd_t idmap_pg_dir[PTRS_PER_PGD];
extern pgd_t idmap_pg_end[];
extern pgd_t tramp_pg_dir[PTRS_PER_PGD];
extern void set_swapper_pgd(pgd_t *pgdp, pgd_t pgd);

View File

@ -16,6 +16,8 @@
#define VDSO_HAS_CLOCK_GETRES 1
#define VDSO_HAS_TIME 1
#define VDSO_HAS_32BIT_FALLBACK 1
#define BUILD_VDSO32 1

View File

@ -13,6 +13,8 @@
#define VDSO_HAS_CLOCK_GETRES 1
#define VDSO_HAS_TIME 1
static __always_inline
int gettimeofday_fallback(struct __kernel_old_timeval *_tv,
struct timezone *_tz)

View File

@ -22,6 +22,6 @@
#include <linux/types.h>
#define COMMAND_LINE_SIZE 2048
#define COMMAND_LINE_SIZE 4096
#endif

View File

@ -338,7 +338,7 @@ static unsigned int find_supported_vector_length(unsigned int vl)
return sve_vl_from_vq(__bit_to_vq(bit));
}
#ifdef CONFIG_SYSCTL
#if defined(CONFIG_ARM64_SVE) && defined(CONFIG_SYSCTL)
static int sve_proc_do_default_vl(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp,
@ -384,9 +384,9 @@ static int __init sve_sysctl_init(void)
return 0;
}
#else /* ! CONFIG_SYSCTL */
#else /* ! (CONFIG_ARM64_SVE && CONFIG_SYSCTL) */
static int __init sve_sysctl_init(void) { return 0; }
#endif /* ! CONFIG_SYSCTL */
#endif /* ! (CONFIG_ARM64_SVE && CONFIG_SYSCTL) */
#define ZREG(sve_state, vq, n) ((char *)(sve_state) + \
(SVE_SIG_ZREG_OFFSET(vq, n) - SVE_SIG_REGS_OFFSET))

View File

@ -394,13 +394,19 @@ __create_page_tables:
/*
* Since the page tables have been populated with non-cacheable
* accesses (MMU disabled), invalidate the idmap and swapper page
* tables again to remove any speculatively loaded cache lines.
* accesses (MMU disabled), invalidate those tables again to
* remove any speculatively loaded cache lines.
*/
dmb sy
adrp x0, idmap_pg_dir
adrp x1, idmap_pg_end
sub x1, x1, x0
bl __inval_dcache_area
adrp x0, init_pg_dir
adrp x1, init_pg_end
sub x1, x1, x0
dmb sy
bl __inval_dcache_area
ret x28

View File

@ -730,6 +730,27 @@ static u64 get_distance_from_watchpoint(unsigned long addr, u64 val,
return 0;
}
static int watchpoint_report(struct perf_event *wp, unsigned long addr,
struct pt_regs *regs)
{
int step = is_default_overflow_handler(wp);
struct arch_hw_breakpoint *info = counter_arch_bp(wp);
info->trigger = addr;
/*
* If we triggered a user watchpoint from a uaccess routine, then
* handle the stepping ourselves since userspace really can't help
* us with this.
*/
if (!user_mode(regs) && info->ctrl.privilege == AARCH64_BREAKPOINT_EL0)
step = 1;
else
perf_bp_event(wp, regs);
return step;
}
static int watchpoint_handler(unsigned long addr, unsigned int esr,
struct pt_regs *regs)
{
@ -739,7 +760,6 @@ static int watchpoint_handler(unsigned long addr, unsigned int esr,
u64 val;
struct perf_event *wp, **slots;
struct debug_info *debug_info;
struct arch_hw_breakpoint *info;
struct arch_hw_breakpoint_ctrl ctrl;
slots = this_cpu_ptr(wp_on_reg);
@ -777,25 +797,13 @@ static int watchpoint_handler(unsigned long addr, unsigned int esr,
if (dist != 0)
continue;
info = counter_arch_bp(wp);
info->trigger = addr;
perf_bp_event(wp, regs);
/* Do we need to handle the stepping? */
if (is_default_overflow_handler(wp))
step = 1;
step = watchpoint_report(wp, addr, regs);
}
if (min_dist > 0 && min_dist != -1) {
/* No exact match found. */
wp = slots[closest_match];
info = counter_arch_bp(wp);
info->trigger = addr;
perf_bp_event(wp, regs);
/* Do we need to handle the stepping? */
if (is_default_overflow_handler(wp))
step = 1;
}
/* No exact match found? */
if (min_dist > 0 && min_dist != -1)
step = watchpoint_report(slots[closest_match], addr, regs);
rcu_read_unlock();
if (!step)

View File

@ -1508,16 +1508,10 @@ static u32 aarch64_encode_immediate(u64 imm,
u32 insn)
{
unsigned int immr, imms, n, ones, ror, esz, tmp;
u64 mask = ~0UL;
/* Can't encode full zeroes or full ones */
if (!imm || !~imm)
return AARCH64_BREAK_FAULT;
u64 mask;
switch (variant) {
case AARCH64_INSN_VARIANT_32BIT:
if (upper_32_bits(imm))
return AARCH64_BREAK_FAULT;
esz = 32;
break;
case AARCH64_INSN_VARIANT_64BIT:
@ -1529,6 +1523,12 @@ static u32 aarch64_encode_immediate(u64 imm,
return AARCH64_BREAK_FAULT;
}
mask = GENMASK(esz - 1, 0);
/* Can't encode full zeroes, full ones, or value wider than the mask */
if (!imm || imm == mask || imm & ~mask)
return AARCH64_BREAK_FAULT;
/*
* Inverse of Replicate(). Try to spot a repeating pattern
* with a pow2 stride.

View File

@ -15,15 +15,34 @@ u64 perf_reg_value(struct pt_regs *regs, int idx)
return 0;
/*
* Compat (i.e. 32 bit) mode:
* - PC has been set in the pt_regs struct in kernel_entry,
* - Handle SP and LR here.
* Our handling of compat tasks (PERF_SAMPLE_REGS_ABI_32) is weird, but
* we're stuck with it for ABI compatability reasons.
*
* For a 32-bit consumer inspecting a 32-bit task, then it will look at
* the first 16 registers (see arch/arm/include/uapi/asm/perf_regs.h).
* These correspond directly to a prefix of the registers saved in our
* 'struct pt_regs', with the exception of the PC, so we copy that down
* (x15 corresponds to SP_hyp in the architecture).
*
* So far, so good.
*
* The oddity arises when a 64-bit consumer looks at a 32-bit task and
* asks for registers beyond PERF_REG_ARM_MAX. In this case, we return
* SP_usr, LR_usr and PC in the positions where the AArch64 SP, LR and
* PC registers would normally live. The initial idea was to allow a
* 64-bit unwinder to unwind a 32-bit task and, although it's not clear
* how well that works in practice, somebody might be relying on it.
*
* At the time we make a sample, we don't know whether the consumer is
* 32-bit or 64-bit, so we have to cater for both possibilities.
*/
if (compat_user_mode(regs)) {
if ((u32)idx == PERF_REG_ARM64_SP)
return regs->compat_sp;
if ((u32)idx == PERF_REG_ARM64_LR)
return regs->compat_lr;
if (idx == 15)
return regs->pc;
}
if ((u32)idx == PERF_REG_ARM64_SP)

View File

@ -77,6 +77,7 @@ VERSION
__kernel_gettimeofday;
__kernel_clock_gettime;
__kernel_clock_getres;
__kernel_time;
local: *;
};
}

View File

@ -23,3 +23,8 @@ int __kernel_clock_getres(clockid_t clock_id,
{
return __cvdso_clock_getres(clock_id, res);
}
time_t __kernel_time(time_t *time)
{
return __cvdso_time(time);
}

View File

@ -69,6 +69,7 @@ VERSION
__kernel_rt_sigreturn_arm;
__kernel_rt_sigreturn_thumb;
__vdso_clock_gettime64;
__vdso_time;
local: *;
};
}

View File

@ -30,6 +30,11 @@ int __vdso_clock_getres(clockid_t clock_id,
return __cvdso_clock_getres_time32(clock_id, res);
}
time_t __vdso_time(time_t *time)
{
return __cvdso_time(time);
}
/* Avoid unresolved references emitted by GCC */
void __aeabi_unwind_cpp_pr0(void)

View File

@ -151,6 +151,7 @@ SECTIONS
. = ALIGN(PAGE_SIZE);
idmap_pg_dir = .;
. += IDMAP_DIR_SIZE;
idmap_pg_end = .;
#ifdef CONFIG_UNMAP_KERNEL_AT_EL0
tramp_pg_dir = .;

View File

@ -162,31 +162,16 @@ static int handle_sve(struct kvm_vcpu *vcpu, struct kvm_run *run)
return 1;
}
#define __ptrauth_save_key(regs, key) \
({ \
regs[key ## KEYLO_EL1] = read_sysreg_s(SYS_ ## key ## KEYLO_EL1); \
regs[key ## KEYHI_EL1] = read_sysreg_s(SYS_ ## key ## KEYHI_EL1); \
})
/*
* Handle the guest trying to use a ptrauth instruction, or trying to access a
* ptrauth register.
*/
void kvm_arm_vcpu_ptrauth_trap(struct kvm_vcpu *vcpu)
{
struct kvm_cpu_context *ctxt;
if (vcpu_has_ptrauth(vcpu)) {
if (vcpu_has_ptrauth(vcpu))
vcpu_ptrauth_enable(vcpu);
ctxt = vcpu->arch.host_cpu_context;
__ptrauth_save_key(ctxt->sys_regs, APIA);
__ptrauth_save_key(ctxt->sys_regs, APIB);
__ptrauth_save_key(ctxt->sys_regs, APDA);
__ptrauth_save_key(ctxt->sys_regs, APDB);
__ptrauth_save_key(ctxt->sys_regs, APGA);
} else {
else
kvm_inject_undefined(vcpu);
}
}
/*

View File

@ -1280,10 +1280,16 @@ static bool access_clidr(struct kvm_vcpu *vcpu, struct sys_reg_params *p,
static bool access_csselr(struct kvm_vcpu *vcpu, struct sys_reg_params *p,
const struct sys_reg_desc *r)
{
int reg = r->reg;
/* See the 32bit mapping in kvm_host.h */
if (p->is_aarch32)
reg = r->reg / 2;
if (p->is_write)
vcpu_write_sys_reg(vcpu, p->regval, r->reg);
vcpu_write_sys_reg(vcpu, p->regval, reg);
else
p->regval = vcpu_read_sys_reg(vcpu, r->reg);
p->regval = vcpu_read_sys_reg(vcpu, reg);
return true;
}

View File

@ -13,6 +13,8 @@
#define LSAVE_A1 28
#define LSAVE_A2 32
#define LSAVE_A3 36
#define LSAVE_A4 40
#define LSAVE_A5 44
#define KSPTOUSP
#define USPTOKSP

View File

@ -170,8 +170,10 @@ csky_syscall_trace:
ldw a3, (sp, LSAVE_A3)
#if defined(__CSKYABIV2__)
subi sp, 8
stw r5, (sp, 0x4)
stw r4, (sp, 0x0)
ldw r9, (sp, LSAVE_A4)
stw r9, (sp, 0x0)
ldw r9, (sp, LSAVE_A5)
stw r9, (sp, 0x4)
#else
ldw r6, (sp, LSAVE_A4)
ldw r7, (sp, LSAVE_A5)

View File

@ -216,8 +216,10 @@ static int __init mcf_pci_init(void)
/* Keep a virtual mapping to IO/config space active */
iospace = (unsigned long) ioremap(PCI_IO_PA, PCI_IO_SIZE);
if (iospace == 0)
if (iospace == 0) {
pci_free_host_bridge(bridge);
return -ENODEV;
}
pr_info("Coldfire: PCI IO/config window mapped to 0x%x\n",
(u32) iospace);

View File

@ -257,6 +257,7 @@ extern int rbv_present,via_alt_mapping;
struct irq_desc;
extern void via_l2_flush(int writeback);
extern void via_register_interrupts(void);
extern void via_irq_enable(int);
extern void via_irq_disable(int);

View File

@ -59,7 +59,6 @@ extern void iop_preinit(void);
extern void iop_init(void);
extern void via_init(void);
extern void via_init_clock(irq_handler_t func);
extern void via_flush_cache(void);
extern void oss_init(void);
extern void psc_init(void);
extern void baboon_init(void);
@ -130,21 +129,6 @@ int __init mac_parse_bootinfo(const struct bi_record *record)
return unknown;
}
/*
* Flip into 24bit mode for an instant - flushes the L2 cache card. We
* have to disable interrupts for this. Our IRQ handlers will crap
* themselves if they take an IRQ in 24bit mode!
*/
static void mac_cache_card_flush(int writeback)
{
unsigned long flags;
local_irq_save(flags);
via_flush_cache();
local_irq_restore(flags);
}
void __init config_mac(void)
{
if (!MACH_IS_MAC)
@ -175,9 +159,8 @@ void __init config_mac(void)
* not.
*/
if (macintosh_config->ident == MAC_MODEL_IICI
|| macintosh_config->ident == MAC_MODEL_IIFX)
mach_l2_flush = mac_cache_card_flush;
if (macintosh_config->ident == MAC_MODEL_IICI)
mach_l2_flush = via_l2_flush;
}

View File

@ -294,10 +294,14 @@ void via_debug_dump(void)
* the system into 24-bit mode for an instant.
*/
void via_flush_cache(void)
void via_l2_flush(int writeback)
{
unsigned long flags;
local_irq_save(flags);
via2[gBufB] &= ~VIA2B_vMode32;
via2[gBufB] |= VIA2B_vMode32;
local_irq_restore(flags);
}
/*

View File

@ -285,12 +285,23 @@ ifdef CONFIG_64BIT
endif
endif
# When linking a 32-bit executable the LLVM linker cannot cope with a
# 32-bit load address that has been sign-extended to 64 bits. Simply
# remove the upper 32 bits then, as it is safe to do so with other
# linkers.
ifdef CONFIG_64BIT
load-ld = $(load-y)
else
load-ld = $(subst 0xffffffff,0x,$(load-y))
endif
KBUILD_AFLAGS += $(cflags-y)
KBUILD_CFLAGS += $(cflags-y)
KBUILD_CPPFLAGS += -DVMLINUX_LOAD_ADDRESS=$(load-y)
KBUILD_CPPFLAGS += -DVMLINUX_LOAD_ADDRESS=$(load-y) -DLINKER_LOAD_ADDRESS=$(load-ld)
KBUILD_CPPFLAGS += -DDATAOFFSET=$(if $(dataoffset-y),$(dataoffset-y),0)
bootvars-y = VMLINUX_LOAD_ADDRESS=$(load-y) \
LINKER_LOAD_ADDRESS=$(load-ld) \
VMLINUX_ENTRY_ADDRESS=$(entry-y) \
PLATFORM="$(platform-y)" \
ITS_INPUTS="$(its-y)"

View File

@ -90,7 +90,7 @@ ifneq ($(zload-y),)
VMLINUZ_LOAD_ADDRESS := $(zload-y)
else
VMLINUZ_LOAD_ADDRESS = $(shell $(obj)/calc_vmlinuz_load_addr \
$(obj)/vmlinux.bin $(VMLINUX_LOAD_ADDRESS))
$(obj)/vmlinux.bin $(LINKER_LOAD_ADDRESS))
endif
UIMAGE_LOADADDR = $(VMLINUZ_LOAD_ADDRESS)

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