On 27 June 2018 at 08:55, Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> wrote: > Those values control the amount of "dummy" clocks between commands and > between a command and its response. > > This adds a way to configure them from sysfs (to be later extended to > defaults in the device-tree). The default remains 16 (the HW default). We should add these to Documentation/ABI/testing/sysfs-bus-fsi. > This is only supported if the backend supports the new link_config() > callback to configure the generation of those delays. > > Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> Reviewed-by: Joel Stanley <joel@xxxxxxxxx> > --- > --- > drivers/fsi/fsi-core.c | 109 ++++++++++++++++++++++++++++++++------- > drivers/fsi/fsi-master.h | 2 + > 2 files changed, 93 insertions(+), 18 deletions(-) > > diff --git a/drivers/fsi/fsi-core.c b/drivers/fsi/fsi-core.c > index 2f6f9b8c75e4..1ae5be31b4bf 100644 > --- a/drivers/fsi/fsi-core.c > +++ b/drivers/fsi/fsi-core.c > @@ -81,6 +81,8 @@ struct fsi_slave { > int id; > int link; > uint32_t size; /* size of slave address space */ > + u8 t_send_delay; > + u8 t_echo_delay; > }; > > #define to_fsi_master(d) container_of(d, struct fsi_master, dev) > @@ -239,15 +241,15 @@ static inline uint32_t fsi_smode_sid(int x) > return (x & FSI_SMODE_SID_MASK) << FSI_SMODE_SID_SHIFT; > } > > -static uint32_t fsi_slave_smode(int id) > +static uint32_t fsi_slave_smode(int id, u8 t_senddly, u8 t_echodly) Can I buy you a vowel? :) > { > return FSI_SMODE_WSC | FSI_SMODE_ECRC > | fsi_smode_sid(id) > - | fsi_smode_echodly(0xf) | fsi_smode_senddly(0xf) > + | fsi_smode_echodly(t_echodly - 1) | fsi_smode_senddly(t_senddly - 1) > | fsi_smode_lbcrr(0x8); > } > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html