mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
fsi: Add trace events in initialization path
Add definitions for trace events to show the scanning flow. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org> Link: https://lore.kernel.org/r/20220207161640.35605-1-eajames@linux.ibm.com Signed-off-by: Joel Stanley <joel@jms.id.au>
This commit is contained in:
committed by
Joel Stanley
parent
a1dc630886
commit
f2af60bb7c
@@ -24,9 +24,6 @@
|
||||
|
||||
#include "fsi-master.h"
|
||||
|
||||
#define CREATE_TRACE_POINTS
|
||||
#include <trace/events/fsi.h>
|
||||
|
||||
#define FSI_SLAVE_CONF_NEXT_MASK GENMASK(31, 31)
|
||||
#define FSI_SLAVE_CONF_SLOTS_MASK GENMASK(23, 16)
|
||||
#define FSI_SLAVE_CONF_SLOTS_SHIFT 16
|
||||
@@ -95,6 +92,9 @@ struct fsi_slave {
|
||||
u8 t_echo_delay;
|
||||
};
|
||||
|
||||
#define CREATE_TRACE_POINTS
|
||||
#include <trace/events/fsi.h>
|
||||
|
||||
#define to_fsi_master(d) container_of(d, struct fsi_master, dev)
|
||||
#define to_fsi_slave(d) container_of(d, struct fsi_slave, dev)
|
||||
|
||||
@@ -524,6 +524,8 @@ static int fsi_slave_scan(struct fsi_slave *slave)
|
||||
dev->addr = engine_addr;
|
||||
dev->size = slots * engine_page_size;
|
||||
|
||||
trace_fsi_dev_init(dev);
|
||||
|
||||
dev_dbg(&slave->dev,
|
||||
"engine[%i]: type %x, version %x, addr %x size %x\n",
|
||||
dev->unit, dev->engine_type, version,
|
||||
@@ -1006,6 +1008,7 @@ static int fsi_slave_init(struct fsi_master *master, int link, uint8_t id)
|
||||
|
||||
crc = crc4(0, cfam_id, 32);
|
||||
if (crc) {
|
||||
trace_fsi_slave_invalid_cfam(master, link, cfam_id);
|
||||
dev_warn(&master->dev, "slave %02x:%02x invalid cfam id CRC!\n",
|
||||
link, id);
|
||||
return -EIO;
|
||||
@@ -1080,6 +1083,8 @@ static int fsi_slave_init(struct fsi_master *master, int link, uint8_t id)
|
||||
if (rc)
|
||||
goto err_free;
|
||||
|
||||
trace_fsi_slave_init(slave);
|
||||
|
||||
/* Create chardev for userspace access */
|
||||
cdev_init(&slave->cdev, &cfam_fops);
|
||||
rc = cdev_device_add(&slave->cdev, &slave->dev);
|
||||
|
||||
@@ -449,11 +449,13 @@ static ssize_t cfam_reset_store(struct device *dev, struct device_attribute *att
|
||||
{
|
||||
struct fsi_master_aspeed *aspeed = dev_get_drvdata(dev);
|
||||
|
||||
trace_fsi_master_aspeed_cfam_reset(true);
|
||||
mutex_lock(&aspeed->lock);
|
||||
gpiod_set_value(aspeed->cfam_reset_gpio, 1);
|
||||
usleep_range(900, 1000);
|
||||
gpiod_set_value(aspeed->cfam_reset_gpio, 0);
|
||||
mutex_unlock(&aspeed->lock);
|
||||
trace_fsi_master_aspeed_cfam_reset(false);
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user