mirror of
https://github.com/lkl/linux.git
synced 2025-12-19 08:03:01 +09:00
Merge tag 'char-misc-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull char/misc driver updates from Greg KH: "Here is the big set of char/misc and other small driver subsystem changes for 6.6-rc1. Stuff all over the place here, lots of driver updates and changes and new additions. Short summary is: - new IIO drivers and updates - Interconnect driver updates - fpga driver updates and additions - fsi driver updates - mei driver updates - coresight driver updates - nvmem driver updates - counter driver updates - lots of smaller misc and char driver updates and additions All of these have been in linux-next for a long time with no reported problems" * tag 'char-misc-6.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (267 commits) nvmem: core: Notify when a new layout is registered nvmem: core: Do not open-code existing functions nvmem: core: Return NULL when no nvmem layout is found nvmem: core: Create all cells before adding the nvmem device nvmem: u-boot-env:: Replace zero-length array with DECLARE_FLEX_ARRAY() helper nvmem: sec-qfprom: Add Qualcomm secure QFPROM support dt-bindings: nvmem: sec-qfprom: Add bindings for secure qfprom dt-bindings: nvmem: Add compatible for QCM2290 nvmem: Kconfig: Fix typo "drive" -> "driver" nvmem: Explicitly include correct DT includes nvmem: add new NXP QorIQ eFuse driver dt-bindings: nvmem: Add t1023-sfp efuse support dt-bindings: nvmem: qfprom: Add compatible for MSM8226 nvmem: uniphier: Use devm_platform_get_and_ioremap_resource() nvmem: qfprom: do some cleanup nvmem: stm32-romem: Use devm_platform_get_and_ioremap_resource() nvmem: rockchip-efuse: Use devm_platform_get_and_ioremap_resource() nvmem: meson-mx-efuse: Convert to devm_platform_ioremap_resource() nvmem: lpc18xx_otp: Convert to devm_platform_ioremap_resource() nvmem: brcm_nvram: Use devm_platform_get_and_ioremap_resource() ...
This commit is contained in:
@@ -122,6 +122,37 @@ TRACE_EVENT(fsi_master_break,
|
||||
)
|
||||
);
|
||||
|
||||
TRACE_EVENT(fsi_master_scan,
|
||||
TP_PROTO(const struct fsi_master *master, bool scan),
|
||||
TP_ARGS(master, scan),
|
||||
TP_STRUCT__entry(
|
||||
__field(int, master_idx)
|
||||
__field(int, n_links)
|
||||
__field(bool, scan)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->master_idx = master->idx;
|
||||
__entry->n_links = master->n_links;
|
||||
__entry->scan = scan;
|
||||
),
|
||||
TP_printk("fsi%d (%d links) %s", __entry->master_idx, __entry->n_links,
|
||||
__entry->scan ? "scan" : "unscan")
|
||||
);
|
||||
|
||||
TRACE_EVENT(fsi_master_unregister,
|
||||
TP_PROTO(const struct fsi_master *master),
|
||||
TP_ARGS(master),
|
||||
TP_STRUCT__entry(
|
||||
__field(int, master_idx)
|
||||
__field(int, n_links)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->master_idx = master->idx;
|
||||
__entry->n_links = master->n_links;
|
||||
),
|
||||
TP_printk("fsi%d (%d links)", __entry->master_idx, __entry->n_links)
|
||||
);
|
||||
|
||||
TRACE_EVENT(fsi_slave_init,
|
||||
TP_PROTO(const struct fsi_slave *slave),
|
||||
TP_ARGS(slave),
|
||||
|
||||
107
include/trace/events/fsi_master_i2cr.h
Normal file
107
include/trace/events/fsi_master_i2cr.h
Normal file
@@ -0,0 +1,107 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#undef TRACE_SYSTEM
|
||||
#define TRACE_SYSTEM fsi_master_i2cr
|
||||
|
||||
#if !defined(_TRACE_FSI_MASTER_I2CR_H) || defined(TRACE_HEADER_MULTI_READ)
|
||||
#define _TRACE_FSI_MASTER_I2CR_H
|
||||
|
||||
#include <linux/tracepoint.h>
|
||||
|
||||
TRACE_EVENT(i2cr_i2c_error,
|
||||
TP_PROTO(const struct i2c_client *client, uint32_t command, int rc),
|
||||
TP_ARGS(client, command, rc),
|
||||
TP_STRUCT__entry(
|
||||
__field(int, bus)
|
||||
__field(int, rc)
|
||||
__array(unsigned char, command, sizeof(uint32_t))
|
||||
__field(unsigned short, addr)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->bus = client->adapter->nr;
|
||||
__entry->rc = rc;
|
||||
memcpy(__entry->command, &command, sizeof(uint32_t));
|
||||
__entry->addr = client->addr;
|
||||
),
|
||||
TP_printk("%d-%02x command:{ %*ph } rc:%d", __entry->bus, __entry->addr,
|
||||
(int)sizeof(uint32_t), __entry->command, __entry->rc)
|
||||
);
|
||||
|
||||
TRACE_EVENT(i2cr_read,
|
||||
TP_PROTO(const struct i2c_client *client, uint32_t command, uint64_t *data),
|
||||
TP_ARGS(client, command, data),
|
||||
TP_STRUCT__entry(
|
||||
__field(int, bus)
|
||||
__array(unsigned char, data, sizeof(uint64_t))
|
||||
__array(unsigned char, command, sizeof(uint32_t))
|
||||
__field(unsigned short, addr)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->bus = client->adapter->nr;
|
||||
memcpy(__entry->data, data, sizeof(uint64_t));
|
||||
memcpy(__entry->command, &command, sizeof(uint32_t));
|
||||
__entry->addr = client->addr;
|
||||
),
|
||||
TP_printk("%d-%02x command:{ %*ph } { %*ph }", __entry->bus, __entry->addr,
|
||||
(int)sizeof(uint32_t), __entry->command, (int)sizeof(uint64_t), __entry->data)
|
||||
);
|
||||
|
||||
TRACE_EVENT(i2cr_status,
|
||||
TP_PROTO(const struct i2c_client *client, uint64_t status),
|
||||
TP_ARGS(client, status),
|
||||
TP_STRUCT__entry(
|
||||
__field(uint64_t, status)
|
||||
__field(int, bus)
|
||||
__field(unsigned short, addr)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->status = status;
|
||||
__entry->bus = client->adapter->nr;
|
||||
__entry->addr = client->addr;
|
||||
),
|
||||
TP_printk("%d-%02x %016llx", __entry->bus, __entry->addr, __entry->status)
|
||||
);
|
||||
|
||||
TRACE_EVENT(i2cr_status_error,
|
||||
TP_PROTO(const struct i2c_client *client, uint64_t status, uint64_t error, uint64_t log),
|
||||
TP_ARGS(client, status, error, log),
|
||||
TP_STRUCT__entry(
|
||||
__field(uint64_t, error)
|
||||
__field(uint64_t, log)
|
||||
__field(uint64_t, status)
|
||||
__field(int, bus)
|
||||
__field(unsigned short, addr)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->error = error;
|
||||
__entry->log = log;
|
||||
__entry->status = status;
|
||||
__entry->bus = client->adapter->nr;
|
||||
__entry->addr = client->addr;
|
||||
),
|
||||
TP_printk("%d-%02x status:%016llx error:%016llx log:%016llx", __entry->bus, __entry->addr,
|
||||
__entry->status, __entry->error, __entry->log)
|
||||
);
|
||||
|
||||
TRACE_EVENT(i2cr_write,
|
||||
TP_PROTO(const struct i2c_client *client, uint32_t command, uint64_t data),
|
||||
TP_ARGS(client, command, data),
|
||||
TP_STRUCT__entry(
|
||||
__field(int, bus)
|
||||
__array(unsigned char, data, sizeof(uint64_t))
|
||||
__array(unsigned char, command, sizeof(uint32_t))
|
||||
__field(unsigned short, addr)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->bus = client->adapter->nr;
|
||||
memcpy(__entry->data, &data, sizeof(uint64_t));
|
||||
memcpy(__entry->command, &command, sizeof(uint32_t));
|
||||
__entry->addr = client->addr;
|
||||
),
|
||||
TP_printk("%d-%02x command:{ %*ph } { %*ph }", __entry->bus, __entry->addr,
|
||||
(int)sizeof(uint32_t), __entry->command, (int)sizeof(uint64_t), __entry->data)
|
||||
);
|
||||
|
||||
#endif
|
||||
|
||||
#include <trace/define_trace.h>
|
||||
Reference in New Issue
Block a user