zephyr/drivers
Chuck Jordan 4ad41d8d7f arc: early init should invalidate d-cache and set vector table
Some ARC targets can have a data-cache. Although there is no special
instruction to clear exceptions during early init, it is necessary to
invalidate the d-cache BEFORE any data is fetched. The ARC on arduino 101
doesn't have d-cache, and will thus skip this d-cache invalidate.

Also, it is important to set the vector table base register to point to
the interrupt vector table EARLY, so that if an exception is encountered,
the correct vector table is found. Set this base only if it is found to be
different from the one compiled in to the code.
These initialization steps assure that proper exception handling
is in place during early init.

Change-Id: Ie8b5928e5813e104680a6d6510c85d32dc8ed8f3
Signed-off-by: Chuck Jordan <cjordan@synopsys.com>
2016-05-11 11:10:52 +00:00
..
adc adc/qmsi: use new DEVICE_AND_API_INIT() 2016-04-28 01:03:38 +00:00
aio aio_comparator/qmsi: use new DEVICE_AND_API_INIT() 2016-04-28 01:03:38 +00:00
bluetooth drivers/nble: Make sure gatt_private is reset properly 2016-05-11 11:29:08 +03:00
clock_control
console console: fix spelling error in comment 2016-05-09 20:56:51 +00:00
counter counter/qmsi: use new DEVICE_AND_API_INIT() 2016-04-28 01:03:38 +00:00
ethernet
flash
gpio gpio: For EM Starterkit, some additional GPIO register defines are needed 2016-05-09 21:51:54 +00:00
grove i2c: use I2C_X nameing instead of I2CX 2016-04-25 17:01:48 +00:00
i2c i2c: use I2C_X nameing instead of I2CX 2016-04-25 17:01:48 +00:00
ieee802154 ieee802154: cc2520: SPI workaround when QMSI drivers are in use 2016-05-04 13:47:17 +00:00
interrupt_controller arc: early init should invalidate d-cache and set vector table 2016-05-11 11:10:52 +00:00
ipm
pci
pinmux pinmux_dev: Remove PINMUX_SELECT_REGISTER from quark_mcu driver 2016-05-04 13:53:00 +00:00
pwm pwm/qmsi: use new DEVICE_AND_API_INIT() 2016-04-28 01:03:39 +00:00
qmsi qmsi: use QMSI_LIBRARY instead of QMSI_DRIVERS 2016-04-22 20:55:36 -04:00
random
rtc rtc/qmsi: use new DEVICE_AND_API_INIT() 2016-04-28 01:03:39 +00:00
sensor sensor: sx9500: fix compile error 2016-05-05 19:06:16 +00:00
serial drivers: uart_qmsi: Re-enable HW FC for arduino_101 & quark_se_devboard 2016-04-25 11:42:50 +00:00
shared_irq
spi spi/qmsi: don't assign driver_api if init fails 2016-04-28 01:03:39 +00:00
timer arc: clarify in comment that ARC must have timer0 2016-05-09 20:56:51 +00:00
watchdog watchdog/qmsi: use new DEVICE_AND_API_INIT() 2016-04-28 01:03:39 +00:00
Kconfig
Makefile aio: build only when driver is configured in 2016-04-25 17:01:48 +00:00