diff options
| author | Miquel Raynal <miquel.raynal@bootlin.com> | 2023-06-06 10:42:42 +0200 | 
|---|---|---|
| committer | Miquel Raynal <miquel.raynal@bootlin.com> | 2023-06-06 10:42:42 +0200 | 
| commit | 5c68005083d620b1499fc81926a514d39ae8b88c (patch) | |
| tree | af84a24baea0fb494193a29a896ec0be7d7c7234 /drivers/fpga/zynqmp-fpga.c | |
| parent | 1af3de62f03f651c5e50c0e00f8fed34d07b9df3 (diff) | |
| parent | 7877cb91f1081754a1487c144d85dc0d2e2e7fc4 (diff) | |
Merge tag 'v6.4-rc4' into wpan-next/staging
Linux 6.4-rc4
Diffstat (limited to 'drivers/fpga/zynqmp-fpga.c')
| -rw-r--r-- | drivers/fpga/zynqmp-fpga.c | 21 | 
1 files changed, 21 insertions, 0 deletions
| diff --git a/drivers/fpga/zynqmp-fpga.c b/drivers/fpga/zynqmp-fpga.c index c60f20949c47..f3434e2c487b 100644 --- a/drivers/fpga/zynqmp-fpga.c +++ b/drivers/fpga/zynqmp-fpga.c @@ -77,6 +77,26 @@ static enum fpga_mgr_states zynqmp_fpga_ops_state(struct fpga_manager *mgr)  	return FPGA_MGR_STATE_UNKNOWN;  } +static ssize_t status_show(struct device *dev, +			   struct device_attribute *attr, char *buf) +{ +	u32 status; +	int ret; + +	ret = zynqmp_pm_fpga_get_config_status(&status); +	if (ret) +		return ret; + +	return sysfs_emit(buf, "0x%x\n", status); +} +static DEVICE_ATTR_RO(status); + +static struct attribute *zynqmp_fpga_attrs[] = { +	&dev_attr_status.attr, +	NULL, +}; +ATTRIBUTE_GROUPS(zynqmp_fpga); +  static const struct fpga_manager_ops zynqmp_fpga_ops = {  	.state = zynqmp_fpga_ops_state,  	.write_init = zynqmp_fpga_ops_write_init, @@ -113,6 +133,7 @@ static struct platform_driver zynqmp_fpga_driver = {  	.driver = {  		.name = "zynqmp_fpga_manager",  		.of_match_table = of_match_ptr(zynqmp_fpga_of_match), +		.dev_groups = zynqmp_fpga_groups,  	},  }; | 
