History log of /barrelfish-master/usr/kaluga/start_pci.c
Revision Date Author Comments
# 9bd8d1d5 03-Apr-2019 Reto Achermann <reto.achermann@inf.ethz.ch>

replacing umlaute and fixing address in headers Haldeneggsteig -> Universitaetsstrasse

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# 4e58bcc5 20-Mar-2019 Lukas Humbel <lukas.humbel@inf.ethz.ch>

armv8: fix boot into qemu with make target

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# c4b94fc6 30-Oct-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

HPET: Work on modularized hpet driver

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 3a41b163 11-Oct-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

hpet source code cleanup

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 284fea9b 08-Oct-2018 Adam Turowski <adam.turowski@inf.ethz.ch>

Fixing some debug messages

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# beae220b 09-Aug-2018 Rana Afifi <afrana@student-ethz.ch>

HPET Driver which now can configure FSB interrupts and receive them

Signed-off-by: Rana Afifi <afrana@student-ethz.ch>


# 8d360cf7 04-Jul-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: better startup synchronization with acpi/pci

Gottardo got stuck because we have some depenencies that might result
in a deadlock. Did not happen on other machines.

Further checked error of oct_get_names() when checking for iommus to
avoid failing when there is no IOMMU record

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# f5725888 22-Jun-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: fixed compilation with debug flags

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 257c7cc6 04-Jun-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: several checks for setup when iommu is not enabled

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 4d7f7f3f 20-Apr-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

kaluga: orchestrate the boot up process differently & fix endpoint creation

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# 44e73af9 17-Apr-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Retry on oct_mset and cleanup some model instantiations

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# d4a04124 17-Apr-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Integrate new model interface part 2

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# cebefc40 05-Apr-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

pci_client: added functionality to query this connections device info
(when connection setup using EP cap)

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 80e88c17 04-Apr-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

kaluga: check if an element if returned from the list

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# 6174effd 04-Apr-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

iommu: Use queries to determine buffer

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# f78e4825 04-Apr-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: request endpoint when at least one iommu driver is started

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 97ff967f 03-Apr-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: start pci with all iommu endpoints

Required changes to order in discovery of skb facts acpi/pci/kaluga etc.
Further reversed the direction of pci/iommu channel setup

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 0ebab7c4 03-Apr-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

pci/kauga: actually delete the caps not just free the slots

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# c069812a 29-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: gracefully handle if iommu is not present

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 216daffd 29-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: removed some hardcoded values for e10k_vf

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 950babfa 26-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: requesting iommu endpoint cap for device drivers

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 3f3e9f3b 26-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

driverkit: renamed devid cap to iommu cap

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# dd453fa7 26-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

pci: channel to iommu setup

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# d9aecc88 22-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: some cleanup regarding kaluga channel setup

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# df10c261 21-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: hand off endpoint to itself to driver it starts

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# ac142fb5 21-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: generalized naming of endpoint requesting interface

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 94e82000 19-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: correctyl initalized pci endpoint cap

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# b03b8ca9 18-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

pci: kaluga requests PCI endpoints to add at startup of drivers

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 3d1bd9d7 16-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: when starting PCI add endpoint to kaluga to arguments

We have a boostrap problem when starting PCI from Kaluga.
Kaluga starts PCI and Kaluga requires a connection i.e.
and endpoint to PCI. The easier way is to hand off
an endpoint cap to PCI and use a different interface
to request device resources

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 82e5326d 15-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: changed driver startup conditions

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# fb8e9458 14-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: starting e10k PF and VF driver correctly

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# b7b13c5e 12-Mar-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

kaluga: using driverkit defined slots

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# ebbc8f20 12-Mar-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

skb: added module name to driver facts

Prevsiously only binary name was used, which limited the
finding out the names for the modules which can
be started in the same domain.

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# 588c8c76 12-Mar-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

driverkit: adding functions to extract the caps from the argcn

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# cbae8b41 11-Mar-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

pci: remove endpoint creation and add deviceid cap

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# f9098edc 09-Mar-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

kaluga: allow starting of multiple IOMMU drivers

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# a397ca47 07-Mar-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

acpi: include iommu idx in SKB records

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# e94e1ebc 28-Feb-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

Kaluga: obtainign cap from ACPI when starting the IOMMU driver

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# 826c93d4 21-Feb-2018 Reto Achermann <reto.achermann@inf.ethz.ch>

kaluga: register for iommu events

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# c88da149 08-Jun-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

irq: enable msi-x in conf header on route setup

Same mechanism as with legacy interrupts, pci_int_ctrl is now managing
which interrupt model will be activated in the confspace.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 6847d14e 05-Jun-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

irqtest: Make sure its started only once

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# d70d007a 28-May-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

irqtest: Fix test. Enable multi instance

Enable to instantiate multiple irqtest in the same domain.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# d3744518 28-May-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

irqtest: Fix test. Enable multi instance

Enable to instantiate multiple irqtest in the same domain.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 8ebbee79 19-Feb-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: removed unneeded debug statement

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# da48b65f 05-Feb-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Pass IRQ caps to e1k devif backend, add PCI int ctrl

We add a dedicated legacy PCI interrupt controller, that will
activate interrupts in the PCI conf space. It works analogous
to the MSIx case then. The controller driver is not yet implemented.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# bb54f8b6 18-Jan-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: fixed bug in copying driver arguments

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# e3890484 18-Jan-2018 Roni Häcki <roni.haecki@inf.ethz.ch>

kaluga: removed driver domain hacks for e1000

Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>


# c535f151 12-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Start of pci driver client library.

Starting to implement the pci_driver_client lib and adopting e1000
driverdriver to use it. This is the interface
that newstyle pci drivers should use. This commit introduces a bug,
that kaluga gets a trigger twice for the same device, which confuses
kaluga.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 6e1ebbb6 09-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Removing multiple caps per bar

Our capabilites now allow byte-granularity, therefore we can always
have one cap per PCI BAR.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 79836bac 08-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Unify use of struct pci_address, refactor kaluga driver startup

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 87f1a8a2 08-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

e1000 irqtest run in driverdomain, newstyle PCI startup

Kaluga starts PCI drivers in a newstyle driver domain. With this commit,
interrupts capabilities are passed to the init function. PCI bars and EP
not yet.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# f81504d6 12-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Start of pci driver client library.

Starting to implement the pci_driver_client lib and adopting e1000
driverdriver to use it. This is the interface
that newstyle pci drivers should use. This commit introduces a bug,
that kaluga gets a trigger twice for the same device, which confuses
kaluga.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# f2147d76 09-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Removing multiple caps per bar

Our capabilites now allow byte-granularity, therefore we can always
have one cap per PCI BAR.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 8273969d 08-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Unify use of struct pci_address, refactor kaluga driver startup

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 3d3f82b4 08-Jan-2018 Lukas Humbel <lukas.humbel@inf.ethz.ch>

e1000 irqtest run in driverdomain, newstyle PCI startup

Kaluga starts PCI drivers in a newstyle driver domain. With this commit,
interrupts capabilities are passed to the init function. PCI bars and EP
not yet.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 2db902db 22-Dec-2017 Lukas Humbel <lukas.humbel@inf.ethz.ch>

kaluga: Make sure start_decnet doesnt break x86

Also refactor irq src cap management int int_caps.c/h

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# efaf9fa4 04-Nov-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Instantiate MSIx controller and tell driver

The PCI client library now needs to be adapted. It still assumes
that it gets only one interrupt.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 72f5137d 03-May-2017 Gerd Zellweger <mail@gerdzellweger.com>

Removed if/octopus_defs.h from public header file.

Referenced in definitions.h and trigger.h.

trigger.h is problematic because it provides helper functions for
types definied in the interface. Clients that want to use trigger.h
now have to make sure to include the interface file.

Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>


# a8c4d257 22-Feb-2017 Adam Turowski <adam.turowski@inf.ethz.ch>

flounder: making const pointers in receiving handlers, using CONST_CAST as a temporary solution in few places but finally it should be removed

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# 0991ed45 07-Dec-2016 Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>

kaluga: Do not try to obtain IRQ cap on ARMv8 because it is not implemented

Signed-off-by: Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>


# 39e984bf 10-Oct-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Allow retyping of IRQSrc capability

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# d30a3f6b 07-Oct-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Add range to IRQSrc cap

To prepare for MSIx, we change the IRQSrc cap so that it does not
represent a single interrupt source but a whole range. This commit
changes it to a range.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 14e86cc6 25-Aug-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Trying to fix vmkit test.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 5df202c7 23-Aug-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Kaluga: Print message for each driver startup

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 7298611f 23-Aug-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

T283: Fix irqtest on tomme

So far, I ignored the Pin requested by the device. The code is now
also fault tolerant and will not produce an error in case the ACPI
entries for a PCI device are missing.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# fe9a78b4 09-Aug-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

SKB: Better error output for skb clients

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# c2d26ffb 09-Aug-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

Kaluga: Do not panic on skb error

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 97bfd01d 05-Aug-2016 Simon Gerber <simon.gerber@inf.ethz.ch>

T258: kaluga: use cnode_create_l2()

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# eb17b7e3 29-Jul-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Better compatibility with existing drivers

When no int_model is specified in device_db.pl, the driver
will now not receive any additional arguments. However,
the caps are still passed, so that the pci client functions
work as expected.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# b1f13195 14-Jul-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Kaluga start driver with IRQ caps.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 2e000e56 13-Jul-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Refactor into int_route_client library, add legacy int range

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# b26e80be 12-Jul-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Add int_arg parameter to kalugas driver start

As we need to tell the driver what interrupt numbers to use,
we add an additional command line argument. This should
be done one day by directly passing caps instead of command
line arguments.

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 653914a8 08-Jul-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Kaluga: put int ctrl startup in own file

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 8fee69f6 08-Jul-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Kaluga, react on octopus events and start ctrl driver

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# 9f4b24ec 07-Jul-2016 Lukas Humbel <lukas.humbel@inf.ethz.ch>

IRQ: Use kaluga to start interrupt controllers

Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>


# eadd9d4c 26-Jul-2016 Adam Turowski <adam.turowski@inf.ethz.ch>

Adjustments of IPC to match new convention (static buffers).
(Flounder) Fixing a token passing in 32-bit architectures.

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# fc7faf87 26-Nov-2014 Gerd Zellweger <mail@gerdzellweger.com>

Fix printf's remove dead code.


# c1bf83d3 26-Nov-2014 Timothy Roscoe <troscoe@inf.ethz.ch>

Fixed shadowed local variables, and added missing THC include files


# 6eb70f62 21-Nov-2014 Gerd Zellweger <mail@gerdzellweger.com>

Fix spantest and ump_bench by making sure all_spawnd_up is set correctly again.


# 3420a21f 20-Dec-2013 Gerd Zellweger <mail@gerdzellweger.com>

Add trigger_exisiting_and_watch to octopus.

Removed duplicated code in e1000 and kaluga.


# 53bbabb5 14-Jul-2014 Reto Achermann <acreto@student.ethz.ch>

Adapted kaluga to deal with multiple device instances based on entries in the SKB.


# 30a7b552 26-Mar-2013 Kornilios Kourtis <kkourt@inf.ethz.ch>

kaluga/octopus: make it compile for arm


# bc5b1582 27-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Compiles again after merge with current tip.


# a0744423 27-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Make sure everything compiles on 32bit. Still need to run tests though.


# 3af142ee 16-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

renaming defines

--HG--
branch : octopus.renaming


# f287d9ee 16-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Renaming errors and header defines...

--HG--
branch : octopus.renaming


# a196d3d7 16-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

More renaming

--HG--
branch : octopus.renaming


# c9839567 16-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

rename dist2 interface to octopus

--HG--
branch : octopus.renaming
rename : if/dist2.if => if/octopus.if


# 0bc8d3f5 16-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

dist2 include rename

--HG--
branch : octopus.renaming


# 092e1f71 16-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Renaming header files.

--HG--
branch : octopus.renaming


# 9c52bdcb 10-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Fixed NPE in start_pci. Added ahcid to device db.


# 7b1da387 10-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Remove sleep/reset handlers from PCI interface and
adjust fish to use acpi client.

--HG--
rename : usr/kaluga/startup.h => usr/kaluga/driver_startup.h


# 5af414fc 10-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Starting PCI.


# a8030337 02-Mar-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Extended Kaluga: Added custom handler function for boot modules. Also improved some code areas and fixed some bugs.


# 3a3b7c57 29-Feb-2012 Gerd Zellweger <zgerd@student.ethz.ch>

Added functionality to start PCI driver to Kaluga.

--HG--
rename : usr/kaluga/app_cores.c => usr/kaluga/start_cpu.c