Lines Matching refs:rifsc_controller

110 	struct stm32_firewall_controller *rifsc_controller = ctrl;  in stm32_rifsc_grant_access()  local
114 if (firewall_id >= rifsc_controller->max_entries) { in stm32_rifsc_grant_access()
115 dev_err(rifsc_controller->dev, "Invalid sys bus ID %u", firewall_id); in stm32_rifsc_grant_access()
126 sec_reg_value = readl(rifsc_controller->mmio + RIFSC_RISC_SECCFGR0 + 0x4 * reg_id); in stm32_rifsc_grant_access()
127 cid_reg_value = readl(rifsc_controller->mmio + RIFSC_RISC_PER0_CIDCFGR + 0x8 * firewall_id); in stm32_rifsc_grant_access()
135 dev_dbg(rifsc_controller->dev, in stm32_rifsc_grant_access()
151 dev_dbg(rifsc_controller->dev, "Invalid CID configuration for peripheral: %d\n", in stm32_rifsc_grant_access()
159 dev_dbg(rifsc_controller->dev, in stm32_rifsc_grant_access()
169 rc = stm32_rif_acquire_semaphore(rifsc_controller, firewall_id); in stm32_rifsc_grant_access()
171 dev_err(rifsc_controller->dev, in stm32_rifsc_grant_access()
187 struct stm32_firewall_controller *rifsc_controller; in stm32_rifsc_probe() local
194 rifsc_controller = devm_kzalloc(&pdev->dev, sizeof(*rifsc_controller), GFP_KERNEL); in stm32_rifsc_probe()
195 if (!rifsc_controller) in stm32_rifsc_probe()
202 rifsc_controller->dev = &pdev->dev; in stm32_rifsc_probe()
203 rifsc_controller->mmio = mmio; in stm32_rifsc_probe()
204 rifsc_controller->name = dev_driver_string(rifsc_controller->dev); in stm32_rifsc_probe()
205 rifsc_controller->type = STM32_PERIPHERAL_FIREWALL | STM32_MEMORY_FIREWALL; in stm32_rifsc_probe()
206 rifsc_controller->grant_access = stm32_rifsc_grant_access; in stm32_rifsc_probe()
207 rifsc_controller->release_access = stm32_rifsc_release_access; in stm32_rifsc_probe()
210 nb_risup = readl(rifsc_controller->mmio + RIFSC_RISC_HWCFGR2) & HWCFGR2_CONF1_MASK; in stm32_rifsc_probe()
211 nb_rimu = readl(rifsc_controller->mmio + RIFSC_RISC_HWCFGR2) & HWCFGR2_CONF2_MASK; in stm32_rifsc_probe()
212 nb_risal = readl(rifsc_controller->mmio + RIFSC_RISC_HWCFGR2) & HWCFGR2_CONF3_MASK; in stm32_rifsc_probe()
213 rifsc_controller->max_entries = nb_risup + nb_rimu + nb_risal; in stm32_rifsc_probe()
215 platform_set_drvdata(pdev, rifsc_controller); in stm32_rifsc_probe()
217 rc = stm32_firewall_controller_register(rifsc_controller); in stm32_rifsc_probe()
219 dev_err(rifsc_controller->dev, "Couldn't register as a firewall controller: %d", in stm32_rifsc_probe()
224 rc = stm32_firewall_populate_bus(rifsc_controller); in stm32_rifsc_probe()
226 dev_err(rifsc_controller->dev, "Couldn't populate RIFSC bus: %d", in stm32_rifsc_probe()