On Wed, Aug 19, 2015 at 7:52 PM, Lee Jones [off-list ref] wrote:
....
+
+#define MBOX_BASE(mdev, inst) ((mdev)->base + (inst * 4))
It should be (inst) * 4
+/**
+ * STi Mailbox device data
+ *
+ * An IP Mailbox is currently composed of 4 instances
+ * Each instance is currently composed of 32 channels
+ * This means that we have 128 channels per Mailbox
+ * A channel an be used for TX or RX
+ *
+ * @dev: Device to which it is attached
+ * @mbox: Representation of a communication channel controller
+ * @base: Base address of the register mapping region
+ * @name: Name of the mailbox
+ * @enabled: Local copy of enabled channels
+ * @lock: Mutex protecting enabled status
+ */
+struct sti_mbox_device {
+ struct device *dev;
+ struct mbox_controller *mbox;
+ void __iomem *base;
+ const char *name;
+ u32 enabled[STI_MBOX_INST_MAX];
+ spinlock_t lock;
+ bool txonly;
txonly is never used after being initialized from DT :) which is a
good sign. So maybe just drop it and the optional property 'tx-only'.
Cheers!