cpu: make use of ARRAY_SIZE macro
This commit is contained in:
parent
d16afe5422
commit
b8c4ab5b69
@ -129,7 +129,7 @@ static const struct _irq_alloc_table_t _irq_alloc_table[] = {
|
||||
|
||||
typedef void (*intr_handler_t)(void *arg);
|
||||
|
||||
#define IRQ_ALLOC_TABLE_SIZE (sizeof(_irq_alloc_table)/sizeof(struct _irq_alloc_table_t))
|
||||
#define IRQ_ALLOC_TABLE_SIZE ARRAY_SIZE(_irq_alloc_table)
|
||||
#define ESP_INTR_FLAG_INTRDISABLED (1<<11)
|
||||
|
||||
/**
|
||||
|
||||
@ -100,7 +100,7 @@ static const struct _pwm_hw_t _pwm_hw[] =
|
||||
.mod = PERIPH_PWM0_MODULE,
|
||||
.int_src = ETS_PWM0_INTR_SOURCE,
|
||||
.signal_group = PWM0_OUT0A_IDX,
|
||||
.gpio_num = sizeof(pwm0_channels) / sizeof(pwm0_channels[0]),
|
||||
.gpio_num = ARRAY_SIZE(pwm0_channels),
|
||||
.gpios = pwm0_channels,
|
||||
},
|
||||
#endif
|
||||
@ -110,7 +110,7 @@ static const struct _pwm_hw_t _pwm_hw[] =
|
||||
.mod = PERIPH_PWM1_MODULE,
|
||||
.int_src = ETS_PWM1_INTR_SOURCE,
|
||||
.signal_group = PWM1_OUT0A_IDX,
|
||||
.gpio_num = sizeof(pwm1_channels) / sizeof(pwm1_channels[0]),
|
||||
.gpio_num = ARRAY_SIZE(pwm1_channels),
|
||||
.gpios = pwm1_channels,
|
||||
},
|
||||
#endif
|
||||
|
||||
@ -113,7 +113,7 @@ static const struct station_config station_cfg = {
|
||||
*/
|
||||
static const struct softap_config softap_cfg = {
|
||||
.ssid = ESP_WIFI_SSID,
|
||||
.ssid_len = sizeof(ESP_WIFI_SSID) / sizeof(ESP_WIFI_SSID[0]),
|
||||
.ssid_len = ARRAY_SIZE(ESP_WIFI_SSID),
|
||||
.ssid_hidden = 1, /* don't make the AP visible */
|
||||
.password = ESP_WIFI_PASS,
|
||||
.authmode = AUTH_WPA2_PSK,
|
||||
|
||||
@ -137,10 +137,10 @@ static void _i2c_clear (_i2c_bus_t* bus);
|
||||
/* implementation of i2c interface */
|
||||
void i2c_init(i2c_t dev)
|
||||
{
|
||||
if (I2C_NUMOF != sizeof(_i2c_bus)/sizeof(_i2c_bus_t)) {
|
||||
if (I2C_NUMOF != ARRAY_SIZE(_i2c_bus)) {
|
||||
LOG_INFO("I2C_NUMOF does not match number of I2C_SDA_x/I2C_SCL_x definitions\n");
|
||||
LOG_INFO("Please check your board configuration in 'board.h'\n");
|
||||
assert(I2C_NUMOF < sizeof(_i2c_bus)/sizeof(_i2c_bus_t));
|
||||
assert(I2C_NUMOF < ARRAY_SIZE(_i2c_bus));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@ -297,7 +297,7 @@ void timer_print_config(void)
|
||||
{
|
||||
for (int i = 0; i < HW_TIMER_NUMOF; i++) {
|
||||
LOG_INFO("\tTIMER_DEV(%d): %d channel(s)\n", i,
|
||||
sizeof(timers[i].channels) / sizeof(struct hw_channel_t));
|
||||
ARRAY_SIZE(timers[i].channels));
|
||||
}
|
||||
}
|
||||
|
||||
@ -562,7 +562,7 @@ void timer_print_config(void)
|
||||
{
|
||||
for (int i = 0; i < OS_TIMER_NUMOF; i++) {
|
||||
LOG_INFO("\tTIMER_DEV(%d): %d channel(s)\n", i,
|
||||
sizeof(timers[i].channels) / sizeof(struct phy_channel_t));
|
||||
ARRAY_SIZE(timers[i].channels));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -195,7 +195,7 @@ int main(int argc, char **argv)
|
||||
|
||||
puts("static const uint32_t spi_clk_config[] = {");
|
||||
|
||||
for (i = 0; i < (sizeof(targets) / sizeof(targets[0])); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(targets); i++) {
|
||||
uint8_t tmp, ptmp;
|
||||
long res;
|
||||
/* bus clock */
|
||||
@ -229,7 +229,7 @@ int main(int argc, char **argv)
|
||||
}
|
||||
printf(" SPI_CTAR_PDT(%i) | SPI_CTAR_DT(%i)\n", (int)ptmp, (int)tmp);
|
||||
|
||||
if (i == (sizeof(targets) / sizeof(targets[0])) - 1) {
|
||||
if (i == ARRAY_SIZE(targets) - 1) {
|
||||
puts(" )");
|
||||
}
|
||||
else {
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
{ .dev = ADC0, .pin = GPIO_PIN(PORT_C, 1), .chan = 15 }, // PTC1
|
||||
{ .dev = ADC0, .pin = GPIO_PIN(PORT_C, 2), .chan = 4 }, // PTC2
|
||||
};
|
||||
#define ADC_NUMOF (sizeof(adc_config) / sizeof(adc_config[0]))
|
||||
#define ADC_NUMOF ARRAYSIZE(adc_config)
|
||||
|
||||
|
||||
@defgroup cpu_kinetis_cpuid Kinetis CPUID
|
||||
@ -59,7 +59,7 @@ No configuration is necessary.
|
||||
.sda_pcr = (PORT_PCR_MUX(2) | PORT_PCR_ODE_MASK),
|
||||
},
|
||||
};
|
||||
#define I2C_NUMOF (sizeof(i2c_config) / sizeof(i2c_config[0]))
|
||||
#define I2C_NUMOF ARRAYSIZE(i2c_config)
|
||||
#define I2C_0_ISR (isr_i2c0)
|
||||
|
||||
|
||||
@ -195,7 +195,7 @@ because of the additional overhead of calling gpio_set/clear at every transfer.
|
||||
.simmask = SIM_SCGC6_SPI1_MASK
|
||||
}
|
||||
};
|
||||
#define SPI_NUMOF (sizeof(spi_config) / sizeof(spi_config[0]))
|
||||
#define SPI_NUMOF ARRAYSIZE(spi_config)
|
||||
|
||||
|
||||
@defgroup cpu_kinetis_timer Kinetis Timer
|
||||
@ -281,6 +281,6 @@ available.
|
||||
.mode = UART_MODE_8N1,
|
||||
},
|
||||
};
|
||||
#define UART_NUMOF (sizeof(uart_config) / sizeof(uart_config[0]))
|
||||
#define UART_NUMOF ARRAYSIZE(uart_config)
|
||||
|
||||
*/
|
||||
|
||||
@ -129,7 +129,7 @@ static uint8_t i2c_find_divider(unsigned freq, unsigned speed)
|
||||
{
|
||||
unsigned diff = UINT_MAX;
|
||||
/* Use maximum divider if nothing matches */
|
||||
uint8_t F = sizeof(i2c_dividers) / sizeof(i2c_dividers[0]) - 1;
|
||||
uint8_t F = ARRAY_SIZE(i2c_dividers) - 1;
|
||||
/* We avoid using the MULT field to simplify the driver and avoid having to
|
||||
* work around hardware errata on some Kinetis parts
|
||||
*
|
||||
@ -151,7 +151,7 @@ static uint8_t i2c_find_divider(unsigned freq, unsigned speed)
|
||||
* the I2Cx_F [MULT] field to the original value after the repeated start
|
||||
* has occurred
|
||||
*/
|
||||
for (unsigned k = 0; k < sizeof(i2c_dividers) / sizeof(i2c_dividers[0]); ++k) {
|
||||
for (unsigned k = 0; k < ARRAY_SIZE(i2c_dividers); ++k) {
|
||||
/* Test dividers until we find one that gives a good match */
|
||||
unsigned lim = (speed * i2c_dividers[k]);
|
||||
if (lim >= freq) {
|
||||
|
||||
@ -158,7 +158,7 @@ uint32_t pwm_init(pwm_t dev, pwm_mode_t mode, uint32_t freq, uint16_t res)
|
||||
|
||||
uint8_t pwm_channels(pwm_t dev)
|
||||
{
|
||||
return sizeof(pwm_config[dev].chan) / sizeof(pwm_config[dev].chan[0]);
|
||||
return ARRAY_SIZE(pwm_config[dev].chan);
|
||||
}
|
||||
|
||||
void pwm_set(pwm_t dev, uint8_t channel, uint16_t value)
|
||||
|
||||
@ -72,7 +72,7 @@ static int real_clk(int bus, int br)
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int tnum = sizeof(targets) / sizeof(targets[0]);
|
||||
int tnum = ARRAY_SIZE(targets);
|
||||
int apb[2];
|
||||
|
||||
if (argc != 3) {
|
||||
@ -90,7 +90,7 @@ int main(int argc, char **argv)
|
||||
|
||||
printf("static const uint8_t spi_divtable[2][%i] = {\n", tnum);
|
||||
|
||||
for (int bus = 0; bus < (sizeof(apb) / sizeof(apb[0])); bus ++) {
|
||||
for (int bus = 0; bus < ARRAY_SIZE(apb); bus ++) {
|
||||
printf(" { /* for APB%i @ %iHz */\n", (bus + 1), apb[bus]);
|
||||
for (int t = 0; t < tnum; t++) {
|
||||
int br = find_best(apb[bus], targets[t]);
|
||||
|
||||
@ -586,7 +586,7 @@ static void shared_isr(uint8_t *streams, size_t nb)
|
||||
void DMA_SHARED_ISR_0(void)
|
||||
{
|
||||
uint8_t streams[] = DMA_SHARED_ISR_0_STREAMS;
|
||||
shared_isr(streams, sizeof(streams) / sizeof(streams[0]));
|
||||
shared_isr(streams, ARRAY_SIZE(streams));
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -594,6 +594,6 @@ void DMA_SHARED_ISR_0(void)
|
||||
void DMA_SHARED_ISR_1(void)
|
||||
{
|
||||
uint8_t streams[] = DMA_SHARED_ISR_1_STREAMS;
|
||||
shared_isr(streams, sizeof(streams) / sizeof(streams[0]));
|
||||
shared_isr(streams, ARRAY_SIZE(streams));
|
||||
}
|
||||
#endif
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user