Commit f82282ef authored by Lorenzo Bianconi's avatar Lorenzo Bianconi Committed by Felix Fietkau

mt76: mt7615: add mt7663e support to mt7615_reg_map

Introduce mt7663e support to mt7615_reg_map routine in order to reuse it
adding support for mt7663e driver
Co-developed-by: default avatarSean Wang <sean.wang@mediatek.com>
Signed-off-by: default avatarSean Wang <sean.wang@mediatek.com>
Co-developed-by: default avatarRyder Lee <ryder.lee@mediatek.com>
Signed-off-by: default avatarRyder Lee <ryder.lee@mediatek.com>
Signed-off-by: default avatarLorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
parent 94f83b66
...@@ -30,9 +30,15 @@ const u32 mt7615e_reg_map[] = { ...@@ -30,9 +30,15 @@ const u32 mt7615e_reg_map[] = {
u32 mt7615_reg_map(struct mt7615_dev *dev, u32 addr) u32 mt7615_reg_map(struct mt7615_dev *dev, u32 addr)
{ {
u32 base = addr & MT_MCU_PCIE_REMAP_2_BASE; u32 base, offset;
u32 offset = addr & MT_MCU_PCIE_REMAP_2_OFFSET;
if (is_mt7663(&dev->mt76)) {
base = addr & MT7663_MCU_PCIE_REMAP_2_BASE;
offset = addr & MT7663_MCU_PCIE_REMAP_2_OFFSET;
} else {
base = addr & MT_MCU_PCIE_REMAP_2_BASE;
offset = addr & MT_MCU_PCIE_REMAP_2_OFFSET;
}
mt76_wr(dev, MT_MCU_PCIE_REMAP_2, base); mt76_wr(dev, MT_MCU_PCIE_REMAP_2, base);
return MT_PCIE_REMAP_BASE_2 + offset; return MT_PCIE_REMAP_BASE_2 + offset;
......
...@@ -343,6 +343,11 @@ static inline bool is_mt7615(struct mt76_dev *dev) ...@@ -343,6 +343,11 @@ static inline bool is_mt7615(struct mt76_dev *dev)
return mt76_chip(dev) == 0x7615; return mt76_chip(dev) == 0x7615;
} }
static inline bool is_mt7663(struct mt76_dev *dev)
{
return mt76_chip(dev) == 0x7663;
}
static inline void mt7615_irq_enable(struct mt7615_dev *dev, u32 mask) static inline void mt7615_irq_enable(struct mt7615_dev *dev, u32 mask)
{ {
mt76_set_irq_mask(&dev->mt76, MT_INT_MASK_CSR, 0, mask); mt76_set_irq_mask(&dev->mt76, MT_INT_MASK_CSR, 0, mask);
......
...@@ -55,6 +55,9 @@ enum mt7615_reg_base { ...@@ -55,6 +55,9 @@ enum mt7615_reg_base {
#define MT_HIF(ofs) ((dev)->reg_map[MT_HIF_BASE] + (ofs)) #define MT_HIF(ofs) ((dev)->reg_map[MT_HIF_BASE] + (ofs))
#define MT7663_MCU_PCIE_REMAP_2_OFFSET GENMASK(15, 0)
#define MT7663_MCU_PCIE_REMAP_2_BASE GENMASK(31, 16)
#define MT_CFG_LPCR_HOST MT_HIF(0x1f0) #define MT_CFG_LPCR_HOST MT_HIF(0x1f0)
#define MT_CFG_LPCR_HOST_FW_OWN BIT(0) #define MT_CFG_LPCR_HOST_FW_OWN BIT(0)
#define MT_CFG_LPCR_HOST_DRV_OWN BIT(1) #define MT_CFG_LPCR_HOST_DRV_OWN BIT(1)
......
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