[GIT PULL] Driver core patches for 5.9-rc1

Greg KH
2020-08-04T17:37:22Z

The following changes since commit 92ed301919932f777713b9172e525674157e983d:

Linux 5.8-rc7 (2020-07-26 14:14:06 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git tags/driver-core-5.9-rc1

for you to fetch changes up to 76acb5ee76b1ae5870cac9c8125ca09e9106d5b2:

drm/bridge: lvds-codec: simplify error handling (2020-07-30 09:03:44 +0200)

----------------------------------------------------------------
Driver core changes for 5.9-rc1

Here is the "big" set of changes to the driver core, and some drivers
using the changes, for 5.9-rc1.

"Biggest" thing in here is the device link exposure in sysfs, to help
to tame the madness that is SoC device tree representations and driver
interactions with it.

Other stuff in here that is interesting is:
- device probe log helper so that drivers can report problems in
a unified way easier.
- devres functions added
- DEVICE_ATTR_ADMIN_* macro added to make it harder to write
incorrect sysfs file permissions
- documentation cleanups
- ability for debugfs to be present in the kernel, yet not
exposed to userspace. Needed for systems that want it
enabled, but do not trust users, so they can still use some
kernel functions that were otherwise disabled.
- other minor fixes and cleanups

The patches outside of drivers/base/ all have acks from the respective
subsystem maintainers to go through this tree instead of theirs.

All of these have been in linux-next with no reported issues.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

----------------------------------------------------------------
Andrzej Hajda (4):
driver core: add device probe log helper
driver core: add deferring probe reason to devices_deferred property
drm/bridge/sii8620: fix resource acquisition error handling
drm/bridge: lvds-codec: simplify error handling

Andy Shevchenko (1):
software node: Use software_node_unregister() when unregistering group of nodes

Barry Song (2):
driver core: platform: need consistent spacing around '-'
driver core: platform: expose numa_node to users in sysfs

Bartosz Golaszewski (4):
devres: remove stray space from devm_kmalloc() definition
devres: move the size check from alloc_dr() into a separate function
device: remove 'extern' attribute from function prototypes in device.h
devres: handle zero size in devm_kmalloc()

Christophe JAILLET (1):
topology: mark a function as __init to save some memory

Dan Carpenter (1):
lib: devres: add a comment about the devm_of_iomap() function

Dan Williams (1):
driver-core: Introduce DEVICE_ATTR_ADMIN_{RO,RW}

Garrit Franke (1):
kobject: remove unused KOBJ_MAX action

Greg Kroah-Hartman (3):
Merge 5.8-rc6 into driver-core-next
Revert "test_firmware: Test platform fw loading on non-EFI systems"
Merge 5.8-rc7 into driver-core-next

Heikki Krogerus (1):
kobject: Avoid premature parent object freeing in kobject_cleanup()

Kees Cook (3):
test_firmware: Test platform fw loading on non-EFI systems
selftest/firmware: Add selftest timeout in settings
firmware_loader: EFI firmware loader must handle pre-allocated buffer

Lukas Wunner (2):
driver core: Drop mention of obsolete bus rwsem from kernel-doc
driver core: Avoid binding drivers to dead devices

Matthias Brugger (1):
drivers: base: Convert to printk alias functions

Matthias Maennich (1):
scripts: add dummy report mode to add_namespace.cocci

Peter Enderborg (2):
tracefs: Remove unnecessary debug_fs checks.
debugfs: Add access restriction option

Randy Dunlap (1):
Documentation/driver-api: driver-model/platform: drop doubled word

Saravana Kannan (5):
driver core: Expose device link details in sysfs
driver core: Add state_synced sysfs file for devices that support it
driver core: Add waiting_for_supplier sysfs file for devices
driver core: Fix sleeping in invalid context during device link deletion
driver core: Change delimiter in devlink device's name to "--"

Tetsuo Handa (1):
driver core: Fix probe_count imbalance in really_probe()

Vladimir Oltean (1):
devres: keep both device name and resource name in pretty name

Wei Yang (2):
drivers/base/memory: init_memory_block() first parameter is not necessary
drivers/base/memory: rename base_memory_block_id to memory_block_id

Wolfram Sang (2):
firmware: improve description of firmware_request_nowarn
lib: update DEBUG_SHIRQ docs to match reality

Xu Wang (1):
debugfs: file: Remove unnecessary cast in kfree()

Documentation/ABI/testing/sysfs-bus-platform | 10 +
Documentation/ABI/testing/sysfs-class-devlink | 126 ++++++++
Documentation/ABI/testing/sysfs-devices-consumer | 8 +
.../ABI/testing/sysfs-devices-state_synced | 24 ++
Documentation/ABI/testing/sysfs-devices-supplier | 8 +
.../ABI/testing/sysfs-devices-waiting_for_supplier | 17 ++
Documentation/admin-guide/kernel-parameters.txt | 15 +
Documentation/driver-api/driver-model/platform.rst | 2 +-
drivers/base/base.h | 3 +
drivers/base/core.c | 324 +++++++++++++++++++--
drivers/base/dd.c | 63 +++-
drivers/base/devres.c | 25 +-
drivers/base/driver.c | 4 +-
drivers/base/firmware_loader/fallback_platform.c | 5 +-
drivers/base/firmware_loader/main.c | 12 +-
drivers/base/memory.c | 15 +-
drivers/base/platform.c | 28 +-
drivers/base/swnode.c | 8 +-
drivers/base/topology.c | 2 +-
drivers/gpu/drm/bridge/lvds-codec.c | 10 +-
drivers/gpu/drm/bridge/sil-sii8620.c | 21 +-
fs/debugfs/file.c | 2 +-
fs/debugfs/inode.c | 39 +++
fs/debugfs/internal.h | 14 +
include/linux/device.h | 288 +++++++++---------
include/linux/kobject.h | 1 -
include/linux/sysfs.h | 7 +
kernel/trace/trace.c | 4 +-
lib/Kconfig.debug | 40 ++-
lib/devres.c | 17 +-
lib/kobject.c | 33 ++-
scripts/coccinelle/misc/add_namespace.cocci | 8 +-
scripts/nsdeps | 2 +-
tools/testing/selftests/firmware/settings | 8 +
tools/testing/selftests/kselftest/runner.sh | 6 +-
35 files changed, 945 insertions(+), 254 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-class-devlink
create mode 100644 Documentation/ABI/testing/sysfs-devices-consumer
create mode 100644 Documentation/ABI/testing/sysfs-devices-state_synced
create mode 100644 Documentation/ABI/testing/sysfs-devices-supplier
create mode 100644 Documentation/ABI/testing/sysfs-devices-waiting_for_supplier
create mode 100644 tools/testing/selftests/firmware/settings