Commit 06c7a070 authored by Juan David González Cobas's avatar Juan David González Cobas Committed by Alessandro Rubini

kernel: export output config regs through sysfs

A channel start, end and delta time registers are exported
read-only through sysfs to allow easy readback of the configured
values.
parent 8fabc19c
......@@ -160,6 +160,55 @@ static int fd_zio_info_output(struct device *dev, struct zio_attribute *zattr,
*usr_val = t ? 0x80 : 0; /* low bits will return mode */
return 0;
}
/* readout of output config delays */
if (zattr->id == FD_ATTR_OUT_START_H) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_U_STARTH);
return 0;
}
if (zattr->id == FD_ATTR_OUT_START_L) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_U_STARTL);
return 0;
}
if (zattr->id == FD_ATTR_OUT_START_COARSE) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_C_START);
return 0;
}
if (zattr->id == FD_ATTR_OUT_START_FINE) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_F_START);
return 0;
}
if (zattr->id == FD_ATTR_OUT_END_H) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_U_ENDH);
return 0;
}
if (zattr->id == FD_ATTR_OUT_END_L) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_U_ENDL);
return 0;
}
if (zattr->id == FD_ATTR_OUT_END_COARSE) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_C_END);
return 0;
}
if (zattr->id == FD_ATTR_OUT_END_FINE) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_F_END);
return 0;
}
if (zattr->id == FD_ATTR_OUT_DELTA_L) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_U_DELTA);
return 0;
}
if (zattr->id == FD_ATTR_OUT_DELTA_COARSE) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_C_DELTA);
return 0;
}
if (zattr->id == FD_ATTR_OUT_DELTA_FINE) {
*usr_val = fd_ch_readl(fd, ch, FD_REG_F_DELTA);
return 0;
}
return 0;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment