Originally, x86 just supported APIC. Then later support
for the Mint Valley Interrupt Controller was added. This
controller is mostly similar to the APIC with some differences,
but was integrated in a somewhat hacked-up fashion.
Now we define irq_controller.h, which is a layer of abstraction
between the core arch code and the interrupt controller
implementation.
Contents of the API:
- Controllers with a fixed irq-to-vector mapping define
_IRQ_CONTROLLER_VECTOR_MAPPING(irq) to obtain a compile-time
map between the two.
- _irq_controller_program() notifies the interrupt controller
what vector will be used for a particular IRQ along with triggering
flags
- _irq_controller_isr_vector_get() reports the vector number of
the IRQ currently being serviced
- In assembly language domain, _irq_controller_eoi implements
EOI handling.
- Since triggering options can vary, some common defines for
triggering IRQ_TRIGGER_EDGE, IRQ_TRIGGER_LEVEL, IRQ_POLARITY_HIGH,
IRQ_POLARITY_LOW introduced.
Specific changes made:
- New Kconfig X86_FIXED_IRQ_MAPPING for those interrupt controllers
that have a fixed relationship between IRQ lines and IDT vectors.
- MVIC driver rewritten per the HAS instead of the tortuous methods
used to get it to behave like LOAPIC. We are no longer writing values
to reserved registers. Additional assertions added.
- Some cleanup in the loapic_timer driver to make the MVIC differences
clearer.
- Unused APIs removed, or folded into calling code when used just once.
- MVIC doesn't bother to write a -1 to the intList priority field since
it gets ignored anyway
Issue: ZEP-48
Change-Id: I071a477ea68c36e00c3d0653ce74b3583454154d
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Treat the sensor subsystem as an independent board that can send
messages to UART and disable IPM and the messaging interface. IPM
can be enabled by applications that require such interface.
Fix all samples that are affected by this change to make sanitycheck
pass.
Jira: ZEP-451
Change-Id: I3df6af16adefaefec02b97778d6c68ffc920ac35
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Many Kinetis SoCs contain an Oscillator (OSC) module and a Multipurpose
Clock Generator (MCG) module to configure clocks. Adding options to
configure these modules for PLL operation with different external
oscillator frequencies, which can vary across boards. More options may
be added later to support other clocking modes such as FLL.
Jira: ZEP-715
Change-Id: Ia121cc5b464d7e681883507bd756d331a8abd6ef
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
This will lead to conflicts and warning coming from Kconfig, so just
whitelist the board in the samples where this hardware is supported
Jira: ZEP-739
Change-Id: I4a2f3bdcfdb44fc75df0e272c237789ee16e0de1
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Kconfig allows selecting NETWORKING_WITH_15_4_TI_CC2520 even if the
current board doesn't support it, and also selects it by default. This
breaks building the 15.4 sample with qemu_x86. Add a config option for
having CC2520 support and enable the choise only if it is available.
In addition, remove unused function from iee802154 code, as it now
fails the tests.
Jira: ZEP-697
Change-Id: Ib082f82acdd0f86d3306bbd3bb827f61b0fd0be1
Signed-off-by: Jaakko Hannikainen <jaakko.hannikainen@intel.com>
Contains an nRF52832 as the main SoC and a LPC11U35 that provides onboard
debugging capabilities and a USB-ISP interface.
Change-Id: Ie6457cc5586bda9bbc0c073f96d23cc2205332c5
Signed-off-by: Amit Kucheria <amit.kucheria@linaro.org>
Flashing issues have been resolved. The build system support for
flashing and debugging has been changed back to UFM scenario.
XIP and reset vector no longer disabled. Wiki documentation updated.
Change-Id: Iffe326485c20808dabc1e19e0b18b7b60a83d797
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This is not needed anyore since we don't have a binary rom available.
Change-Id: I35b1488753857a887b1fd2b011660a9d7734cc5a
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
There is no code in the board file so remove it.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I200a39970bba851e238d4c52070cc9e0ea362782
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
There is no code in the board file so remove it.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I4e3d520a7a23b3ce853c4784e3a6401e824f25fc
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
There is no code in the board file so remove it.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: If690a5b0758e7bf430e21a3c8b8fbe4d0bcb022c
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I6e5ce35bd7b9b4411820bc112a08dd0d809495d6
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I742bc695e8a1efb34003e651f57c8aba4fb798f6
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I54e94ff2cc2d2bfbfb8a016ae49b4b4d13f25dd2
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: Ifa824af1c5c7566ab1379b467cb9bef50f887729
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I1ed09f05ea2c2d08d11fc742d76f32c1f8f2fbbd
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I71892fd950f422d77cb28c2a9fb5391ca151ff34
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: Ia29cbf53670e254202c3d8916a28a1ba2254107c
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I28f3ccc6e6c7c20c679fd0e4ab36aaa8b1e72d75
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I2e824e1baf582517e713cabe1850c9accd509a5a
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I891f5130f5bfd7a07b644ee0223b18fd86061cfa
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
CONFIG_UART_NS16550_ACCESS_MMIO doesn't exist anywhere so remove it from
the defconfig.
Change-Id: I221cbb4a9fe5c4ee567e994f2c617b50b1228d13
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
CONFIG_SPI_INTEL_LEVEL_LOW doesn't exist anywhere so remove it from the
defconfig.
Change-Id: I5241101a1b4b2f74aaac3a59721e65f71f88cdfd
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: Ia55a2614d3eea1920f1be7880be2bf82c6c3c7db
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
For Arduino 101, users must use the original ROM FW provided for this
board. For Quark SE development boards (!Arduino 101), users should use
the QMSI bootloader.
Here we remove the old ROM binary we were shipping with Zephyr as these
are now provided as part of QMSI releases on github.
The arduino_101_load.sh script was also updated to avoid trying this
step since the binary is no longer available.
Change-Id: I822a9d005355cb69177bb1a1d0ddef087ea07309
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
CONFIG_UART_CONSOLE_BAUDRATE doesn't exist and we will get the buad rate
setup from the UART_STELLARIS config defaulting to 115200
Change-Id: I268051055689134c54c92f696a9a560ca5336844
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Use Kconfig symbol CONFIG_SOC_NIOS2_QEMU instead of CONFIG_SOC_NIOS2F_QEMU
Change-Id: Ia04666830dc9d6f64467fae103418920c202af27
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
This is at the expense of code size. The QEMU and MAX10
targets have plenty of space so enable it for these boards,
but leave off by default for others.
Change-Id: I93fdb7db14232727e9953b22490d8869ff3b60e7
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
The 16550 will now be the default console device.
Change-Id: I92a6b49984b055e7d5f5c97e5192150be0d5c5c7
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
For both of these, we send the .elf binary over the JTAG and it gets
written directly into SRAM. The CPU boots the image from the entry
point (__start).
This does not provision the kernel onto device's User Flash Memory
(UFM). Implementation of this is still in progress see ZEP-273.
Change-Id: Iae8188a21e4a3eecfda0f4f0bb220c0607d719cb
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Remove unused defines and turn off debug options.
Change-Id: I21e6b54a81505783396991e165a8087372d4986b
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
USB Device core layer is a hardware independent interface between USB
device controller driver and USB device class drivers or customer
applications. It's a port of the LPCUSB device stack.
Change-Id: I9371ffab7034d20953fec0525e72fbe9e094c931
Signed-off-by: Adrian Bradianu <adrian.bradianu@windriver.com>
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
Signed-off-by: Jithu Joseph <jithu.joseph@intel.com>
The .elf files sent to QEMU boot from __start, the reset vector
is completely ignored.
Change-Id: Ib436547bcb1c0154b5c23638dfdaf59627b109ea
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Attached PCs can read these messages with the 'nios2-terminal'
application.
Change-Id: I44942c8feaf3901adb410269460787cf2a8b6a4a
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Useful at this stage of the bring-up. Stack memory will be initialized
with 0xaa and we build with -O0.
Change-Id: Icd0e9ac49c0158f7b18e4e286a07ca281d20e7e6
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Has extra debug capabilities and the board has sufficient space
for it.
Change-Id: I638c665e766f1a41dc5db89fcf8b8c0d44912789
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Use a kbuild trick to force built-in.o to get built even if there isn't
any code so we can link properly. This is cleaner than keeping around
files that don't do anything.
We keep around board.h for now since drivers and other code might expect
it to exist.
Change-Id: I0fb1105f19149b0e17c45455368ddf0ef75e5165
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
The KSDK device header files require a preprocessor macro that defines
the part number string (e.g., MK64FN1M0VMD12). Create a hidden Kconfig
option to hold the part number string, and hidden Kconfig options that
the board Kconfig will use to select the specific part number.
Change-Id: I612e785026261e425b47b5b7fae0c65b4f94b30b
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
For the moment, NIOS2_CPU_SOF must be set with the path to the
CPU configuration. We are checking with Altera on whether we
can directly check in the binary to the source tree.
These scripts depend on tools provided by the Altera Quartus
Prime Lite Edition. This is available for free but requires
registration on Altera's website to obtain.
Change-Id: Ia6cb6c9e43c3e141807a887cb25c47b370a7d8e9
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
I see in the TOP makefile that if FLASH_SCRIPT is undefined,
it outputs the message "Flashing not supported with this board".
This behavior is wanted currently as this board does not
have a memory mapped FLASH device. It has a SPI-FLASH and
there are different instructions for putting an image on to the board.
Change-Id: I07dcdd9a7fd8346b846ee0fe1312d22f9ffaa13e
Signed-off-by: Chuck Jordan <cjordan@synopsys.com>