| d46f2a68 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Do the SATA init before relocation
The SATA device needs to set itself up so that it appears correctly on the PCI bus. The easiest way to do this is to set it up to probe before relo
x86: ivybridge: Do the SATA init before relocation
The SATA device needs to set itself up so that it appears correctly on the PCI bus. The easiest way to do this is to set it up to probe before relocation. This can do the early setup.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 887cba8f | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Drop unnecessary northbridge setup
This is done by default with PCI auto-config. Drop it.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
| 1a9dd221 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Use driver model PCI API in bd82x6x.c
Adjust most of the remaining functions in this file to use the driver model PCI API. The one remaining function is bridge_silicon_revision() whi
x86: ivybridge: Use driver model PCI API in bd82x6x.c
Adjust most of the remaining functions in this file to use the driver model PCI API. The one remaining function is bridge_silicon_revision() which will need a little more work.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 9ed781a6 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move northbridge and PCH init into drivers
Instead of calling the northbridge and PCH init from bd82x6x_init_extra() when the PCI bus is probed, call it from the respective drivers.
x86: ivybridge: Move northbridge and PCH init into drivers
Instead of calling the northbridge and PCH init from bd82x6x_init_extra() when the PCI bus is probed, call it from the respective drivers. Also drop the Northbridge init as it has no effect. The registers it touches appear to be read-only.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| ac643e03 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: Bring up northbridge, pch and lpc after the CPUs
These devices currently need to be inited early in boot. Once we have the init in the right places (with each device doing its own init and no p
x86: Bring up northbridge, pch and lpc after the CPUs
These devices currently need to be inited early in boot. Once we have the init in the right places (with each device doing its own init and no problems with ordering) we should be able to remove this. For now it is needed to keep things working.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| afd5d50c | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: Make x86_init_cpus() static
There are no other implementations of this function, and boards that need it can implement a CPU driver.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by:
x86: Make x86_init_cpus() static
There are no other implementations of this function, and boards that need it can implement a CPU driver.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 279006db | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move early init code into northbridge.c
This code is now part of the northbridge driver, so move it into the same place.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: B
x86: ivybridge: Move early init code into northbridge.c
This code is now part of the northbridge driver, so move it into the same place.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| d173185d | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Drop the dead MTRR code
This is not used and MTRRs are set up elsewhere now. Drop it.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
| 709b1902 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Set up the thermal target correctly
This uses a non-existent node at present. It should use the first CPU node. The referenced property does not exist (the correct value is the defau
x86: ivybridge: Set up the thermal target correctly
This uses a non-existent node at present. It should use the first CPU node. The referenced property does not exist (the correct value is the default of 0), but this allows the follow-on init to complete.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 9d156b57 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move CPU init code into the driver
Use the CPU driver's probe() method to perform the CPU init. This will happen automatically when the first CPU is probed.
Signed-off-by: Simon Gla
x86: ivybridge: Move CPU init code into the driver
Use the CPU driver's probe() method to perform the CPU init. This will happen automatically when the first CPU is probed.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| bba22a97 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Use common CPU init code
The existing ivybridge code predates the normal multi-core CPU init, and it is not used. Remove it and add CPU nodes to the device tree so that all four CPUs
x86: ivybridge: Use common CPU init code
The existing ivybridge code predates the normal multi-core CPU init, and it is not used. Remove it and add CPU nodes to the device tree so that all four CPUs are set up. Also enable the 'cpu' command.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 9fd11c7a | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move GPIO init to the LPC init() method
This init can happen in the driver also. Move it.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
| fcd30cdf | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move sandybridge init to the lpc probe() method
The watchdog can be reset later when probing the LPC after relocation. Move it.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewe
x86: ivybridge: Move sandybridge init to the lpc probe() method
The watchdog can be reset later when probing the LPC after relocation. Move it.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 17e0a9ab | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move graphics init much later
We don't need to init the graphics controller so early. Move it alongside the other graphics setup, just before we run the ROM.
Signed-off-by: Simon Gl
x86: ivybridge: Move graphics init much later
We don't need to init the graphics controller so early. Move it alongside the other graphics setup, just before we run the ROM.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| f633efa3 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Probe the LPC in CPU init
We can drop the explicit probe of the PCH since the LPC is a child device and this will happen automatically.
Signed-off-by: Simon Glass <sjg@chromium.org>
x86: ivybridge: Probe the LPC in CPU init
We can drop the explicit probe of the PCH since the LPC is a child device and this will happen automatically.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 2b27d205 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Rename lpc_init() to lpc_init_extra()
In preparation for adding an init() method to the LPC uclass, rename this existing function so that it will not conflict.
Signed-off-by: Simon
x86: ivybridge: Rename lpc_init() to lpc_init_extra()
In preparation for adding an init() method to the LPC uclass, rename this existing function so that it will not conflict.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 977a5918 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move LPC and PCH init into northbridge probe()
Move more code into the northbridge probe() function.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gm
x86: ivybridge: Move LPC and PCH init into northbridge probe()
Move more code into the northbridge probe() function.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 655925a9 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move northbridge init into the probe() method
Now that we have a proper driver for the nortbridge, set it up in by probing it, and move the early init code into the probe() method.
x86: ivybridge: Move northbridge init into the probe() method
Now that we have a proper driver for the nortbridge, set it up in by probing it, and move the early init code into the probe() method.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| e40a6e3f | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Add a driver for the bd82x6x northbridge
Add a driver with an empty probe function where we can move init code in follow-on patches.
Signed-off-by: Simon Glass <sjg@chromium.org> Re
x86: ivybridge: Add a driver for the bd82x6x northbridge
Add a driver with an empty probe function where we can move init code in follow-on patches.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 858361b1 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Rename bd82x6x_init()
Rename the existing bd82x6x_init() to bd82x6x_init_extra(). We will remove this in a later patch.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bi
x86: ivybridge: Rename bd82x6x_init()
Rename the existing bd82x6x_init() to bd82x6x_init_extra(). We will remove this in a later patch.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| fe40bd4d | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move more init to the probe() function
Move SPI and port80 init to lpc_early_init(), called from the LPC's probe() method.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by:
x86: ivybridge: Move more init to the probe() function
Move SPI and port80 init to lpc_early_init(), called from the LPC's probe() method.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 788cd908 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Move lpc_early_init() to probe()
Move this code to the LPC's probe() method so that it will happen automatically when the LPC is probed before relocation.
Signed-off-by: Simon Glass
x86: ivybridge: Move lpc_early_init() to probe()
Move this code to the LPC's probe() method so that it will happen automatically when the LPC is probed before relocation.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 4acc83d4 | 17-Jan-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Set up the LPC device using driver model
Find the LPC device in arch_cpu_init_dm() as a first step to converting this code to use driver model. Probing the LPC will probe its parent
x86: ivybridge: Set up the LPC device using driver model
Find the LPC device in arch_cpu_init_dm() as a first step to converting this code to use driver model. Probing the LPC will probe its parent (the PCH) automatically, so make sure that probing the PCH does nothing before relocation.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 0bdce075 | 20-Jan-2016 |
Simon Glass <sjg@chromium.org> |
dm: x86: Drop the weak cpu_irq_init() function
There are no callers now. Platforms which need to set up interrupts their own way can implement an interrupt driver. Drop this function.
Signed-off-by
dm: x86: Drop the weak cpu_irq_init() function
There are no callers now. Platforms which need to set up interrupts their own way can implement an interrupt driver. Drop this function.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| 0ac8b1f4 | 20-Jan-2016 |
Simon Glass <sjg@chromium.org> |
dm: x86: queensbay: Add an interrupt driver
Add a driver for interrupts on queensbay and move the code currently in cpu_irq_init() into its probe() method.
Signed-off-by: Simon Glass <sjg@chromium.
dm: x86: queensbay: Add an interrupt driver
Add a driver for interrupts on queensbay and move the code currently in cpu_irq_init() into its probe() method.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|