drivers: npcx: Drop DRV_CONFIG/DRV_DATA usage
Stop using DRV_CONFIG/DRV_DATA macros and use dev->data and dev->config instead. Signed-off-by: Wealian Liao <WHLIAO@nuvoton.com>
This commit is contained in:
parent
3565f71a72
commit
6d6c5e1155
15 changed files with 146 additions and 180 deletions
|
@ -79,10 +79,6 @@ sys_slist_t cb_list_gpio;
|
|||
*/
|
||||
sys_slist_t cb_list_generic;
|
||||
|
||||
/* Driver convenience defines */
|
||||
#define DRV_CONFIG(dev) \
|
||||
((const struct intc_miwu_config *)(dev)->config)
|
||||
|
||||
BUILD_ASSERT(sizeof(struct miwu_io_callback) == sizeof(struct gpio_callback),
|
||||
"Size of struct miwu_io_callback must equal to struct gpio_callback");
|
||||
|
||||
|
@ -135,7 +131,8 @@ static void intc_miwu_dispatch_generic_isr(uint8_t wui_table,
|
|||
static void intc_miwu_isr_pri(int wui_table, int wui_group)
|
||||
{
|
||||
int wui_bit;
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui_table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui_table]->config;
|
||||
const uint32_t base = config->base;
|
||||
uint8_t mask = NPCX_WKPND(base, wui_group) & NPCX_WKEN(base, wui_group);
|
||||
|
||||
/* Clear pending bits before dispatch ISR */
|
||||
|
@ -158,42 +155,48 @@ static void intc_miwu_isr_pri(int wui_table, int wui_group)
|
|||
/* Platform specific MIWU functions */
|
||||
void npcx_miwu_irq_enable(const struct npcx_wui *wui)
|
||||
{
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui->table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui->table]->config;
|
||||
const uint32_t base = config->base;
|
||||
|
||||
NPCX_WKEN(base, wui->group) |= BIT(wui->bit);
|
||||
}
|
||||
|
||||
void npcx_miwu_irq_disable(const struct npcx_wui *wui)
|
||||
{
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui->table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui->table]->config;
|
||||
const uint32_t base = config->base;
|
||||
|
||||
NPCX_WKEN(base, wui->group) &= ~BIT(wui->bit);
|
||||
}
|
||||
|
||||
void npcx_miwu_io_enable(const struct npcx_wui *wui)
|
||||
{
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui->table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui->table]->config;
|
||||
const uint32_t base = config->base;
|
||||
|
||||
NPCX_WKINEN(base, wui->group) |= BIT(wui->bit);
|
||||
}
|
||||
|
||||
void npcx_miwu_io_disable(const struct npcx_wui *wui)
|
||||
{
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui->table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui->table]->config;
|
||||
const uint32_t base = config->base;
|
||||
|
||||
NPCX_WKINEN(base, wui->group) &= ~BIT(wui->bit);
|
||||
}
|
||||
|
||||
bool npcx_miwu_irq_get_state(const struct npcx_wui *wui)
|
||||
{
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui->table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui->table]->config;
|
||||
const uint32_t base = config->base;
|
||||
|
||||
return IS_BIT_SET(NPCX_WKEN(base, wui->group), wui->bit);
|
||||
}
|
||||
|
||||
bool npcx_miwu_irq_get_and_clear_pending(const struct npcx_wui *wui)
|
||||
{
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui->table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui->table]->config;
|
||||
const uint32_t base = config->base;
|
||||
bool pending = IS_BIT_SET(NPCX_WKPND(base, wui->group), wui->bit);
|
||||
|
||||
if (pending) {
|
||||
|
@ -206,7 +209,8 @@ bool npcx_miwu_irq_get_and_clear_pending(const struct npcx_wui *wui)
|
|||
int npcx_miwu_interrupt_configure(const struct npcx_wui *wui,
|
||||
enum miwu_int_mode mode, enum miwu_int_trig trig)
|
||||
{
|
||||
const uint32_t base = DRV_CONFIG(miwu_devs[wui->table])->base;
|
||||
const struct intc_miwu_config *config = miwu_devs[wui->table]->config;
|
||||
const uint32_t base = config->base;
|
||||
uint8_t pmask = BIT(wui->bit);
|
||||
|
||||
/* Disable interrupt of wake-up input source before configuring it */
|
||||
|
@ -350,7 +354,8 @@ int npcx_miwu_manage_dev_callback(struct miwu_dev_callback *cb, bool set)
|
|||
static int intc_miwu_init##inst(const struct device *dev) \
|
||||
{ \
|
||||
int i; \
|
||||
const uint32_t base = DRV_CONFIG(dev)->base; \
|
||||
const struct intc_miwu_config *config = dev->config; \
|
||||
const uint32_t base = config->base; \
|
||||
\
|
||||
/* Clear all MIWUs' pending and enable bits of MIWU device */ \
|
||||
for (i = 0; i < NPCX_MIWU_GROUP_COUNT; i++) { \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue