Commit Graph

24153 Commits

Author SHA1 Message Date
3544c6b3b0 Trivial removal of svn:executable property from vga.c.
Signed-off-by: Peter Stuge <peter@stuge.se>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4247 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-05-01 14:33:19 +00:00
03c65ef4e7 This is a patch to use another IRQ besides IRQ12 to fix conflicts with i8042 - PS/2 Mouse.
Signed-off-by: Joseph Smith <joe@settoplinux.org> 
Acked-by: Myles Watson <mylesgw@gmail.com>

git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4246 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-05-01 04:53:58 +00:00
5252b1184a This patch changes the default rom emulator to VM86.
Signed-off-by: Joseph Smith <joe@settoplinux.org> 
Acked-by: Myles Watson <mylesgw@gmail.com>

git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4245 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-05-01 04:44:36 +00:00
97e6dfed12 This patch allows a custom vga driver that will give the flexibility to run code after vga is initialized for tv-out.
Signed-off-by: Joseph Smith <joe@settoplinux.org> 
Acked-by: Myles Watson <mylesgw@gmail.com>

git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4244 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-05-01 04:37:13 +00:00
96a46920f2 Trivial patch to make #defines generated from cmos.layout have unique names. Kills a few more compiler warnings.
Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Myles Watson <mylesgw@gmail.com>

git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4243 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-05-01 04:36:38 +00:00
183cadda26 Trivial cosmetic fixes to IP1000 and RM4100 irq_tables.c Signed-off-by: Joseph Smith <joe@settoplinux.org> Acked-by: Joseph Smith <joe@settoplinux.org>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4242 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-05-01 03:04:20 +00:00
041734d859 The semantics of the changed code are pretty simple and looking at
other parts of the same file shows that it is a common construct.

Remove the shadowed variable.

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Peter Stuge <peter@stuge.se>

git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4241 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-05-01 02:24:40 +00:00
fa12b67771 Remove warnings from compilation of the s2892 with and without CBFS.
I didn't try to remove "defined but not used" warnings because there are too
many ifdefs to be sure I wouldn't break something.

For shadowed variable declarations I renamed the inner-most variable.  

The one in src/pc80/keyboard.c might need help.  I didn't change the
functionality but it looks like a bug.

I boot tested it on s2892 and abuild tested it.

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4240 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-30 22:45:41 +00:00
b5fb0c5c4e Add high tables support to all northbridges.
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Patrick Georgi <patrick.georgi@coresystems.de> 



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4238 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-30 13:58:42 +00:00
6841ce6537 Trivial fix for tyan/s2735: a newly used option wasn't defined as "used"
Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Patrick Georgi <patrick.georgi@coresystems.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4237 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-30 12:53:00 +00:00
94875b3f62 Add "printk" support to all CAR targets
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4236 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-30 10:16:39 +00:00
c7757f20ac * Use latest version of intel microcodes from their Linux drivers page for
models 6ex and 6fx (core and core2 solo and duo). Also, use the names suggested 
  by Intel for the microcode files instead our short version of it. This allows to
  create new microcode patches with a simple set of scripts.
* some minor cpu setup fixes for c and p states

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4235 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-30 10:14:22 +00:00
9cf95bfc64 And add the new file I forgot to "svn add" in the last commit.
Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Patrick Georgi <patrick.georgi@coresystems.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4234 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-30 07:23:15 +00:00
12aba82e55 Refactor copy_and_run so that it uses a single code base instead of
3 (with one of them way too much assembler code).

On the way, I had to make some changes to the way the code is built, 
which is an effort I want to expand over time.
Right now, large portions of the in-ROM part of coreboot is compiled as 
a single file, with lots of .c files including other .c files.
That has its justification for pre-raminit code, but it also affects 
lots of post-raminit code (memcpy doesn't really make sense before 
raminit, or at least CAR)

The coreboot_apc code (AMD boards) gained some .c includes because I 
don't know that part of the code enough to really rework it and only 
have limited possibilities to test it. The includes should give an 
identical situation for this part of the code.

This change was posted as set of 6 patches to the list, but they
were mostly split for review purposes, hence commit them all at once.
They can still be backed up using the patch files, if necessary.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4233 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-30 07:07:22 +00:00
b8a939eab5 dd the family10h Rev C0-C2 support to coreboot.
Signed-off-by: Vincent Lim vincent.lim@amd.com

Acked-by: Patrick Georgi <patrick.georgi@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4227 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-28 16:36:16 +00:00
870f0133f4 fix warning: no return statement in function returning non-void
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4226 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-28 14:49:50 +00:00
1b04403e7f Only add ACPI tables if ACPI is enabled for the board.
Trivial fix to make abuild happy.


Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Patrick Georgi <patrick.georgi@coresystems.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4225 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-28 14:49:21 +00:00
a19f644799 Enable HAVE_HIGH_TABLES by default for northbridges with
support for it.
The related mainboards don't need to activate it
themselves anymore.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4224 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-28 14:18:16 +00:00
bccaafc677 add_mainboard_resources is necessary for some boards (eg. kontron), but
this generic code could be added to the caller of
add_mainboard_resources (wrapped in HAVE_HIGH_TABLES, of course).
That way, boards that really need it (for other things) can use this
function, while others don't have to do anything to use
HAVE_HIGH_TABLES.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Peter Stuge <peter@stuge.se>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4223 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-28 12:57:25 +00:00
d107593691 Add high table support to via vt8454c.
Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4222 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-27 20:19:48 +00:00
55faef348a Add high tables support for Supermicro H8DME.
Signed-off-by: Ward Vandewege <ward@gnu.org>
Acked-by: Myles Watson <mylesgw@gmail.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4221 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-27 20:19:06 +00:00
2d0b93bb54 Special handling for MP table in low memory is only necessary if there are
tables in low memory.

This removes a hang when HAVE_LOW_TABLES=0 and HAVE_HIGH_TABLES=1. With this
patch I can boot all the way to a payload. Tested on a Supermicro H8DME.

Many thanks to Patrick Georgi for figuring this out.

Signed-off-by: Ward Vandewege <ward@gnu.org>
Acked-by: Myles Watson <mylesgw@gmail.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4220 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-27 20:00:29 +00:00
1670857cc9 Migrate via/vt8454c to CBFS.
Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4219 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-27 18:31:09 +00:00
932257869f Create a valid stack pointer after leaving CAR, so function calls don't
reset the machine in the small window between CAR and coreboot_ram.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4218 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-27 18:26:43 +00:00
bc9de2f1e2 Revert 4099 patch that causes an ECC error. Memory has to be written while ECC
error checking is disabled.  The purpose of the patch was to preserve memory
used by ACPI resume code.  One possible solution is to read that memory and
write it back while ECC error-checking is disabled. 

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4217 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-27 16:08:26 +00:00
b61bc7c68a Enable CBFS for qemu and kontron. Both are builds-and-runs
tested, incl. optionrom-in-cbfs for kontron, and compressed payloads
for both.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Myles Watson <mylesgw@gmail.com>




git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4212 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-25 22:15:29 +00:00
dcce5210c7 Make the CBFS file lookup skip file data instead of brute-forcing
its way through it, looking for magic numbers.
For one, it should speed up file access, esp. with many entries,
but it also helps against false positives (eg. seabios, which
contains the magic number for its own CBFS support, which _might_
just be aligned properly)

Also avoid infinite loops and give up searching for new files for
invalid magic numbers.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4210 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-25 14:39:12 +00:00
369bc7882a Move decompression further down the code flow, so that - where
possible - code is decompressed directly to the right place
(instead of copying around, as before).

The downside of this approach is that it's not possible (without API
changes to the decompressors) to put partial segments into bounce
buffers. So if a segment collides with coreboot _and_ is compressed,
it's bounced entirely.
But, as this only brings back the copy we already had before, the new
worst case is better than the average before.

It also fixes handling of compressed segments.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4207 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-25 07:32:24 +00:00
7994164a0e Remove the inclusion of lzma.c (which really contains code)
from another (rom_stream.c and others), instead linking it like any
source file should be linked.

The same should (and will) be done with nrv2b.c, but that has some
deeper implications as various CAR implementations include that
directly, and thus requires more care.

It fixes an issue with the cbfs code.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4206 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-24 16:44:34 +00:00
2895c45486 Another v3-style #ifdef in v2 to kill
Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4204 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-24 10:23:56 +00:00
7d0ff4c126 These are some really horrible bugs that got through.
(and, for the record: no more #ifdef in coreboot. We're not going to
have this happen again. If we do have it in v2, let's remove it.)

Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4203 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-24 06:32:29 +00:00
cec6dc4c15 Change the behaviour of the ACPI generating code so it only
writes at most one full ACPI table.
In the cases where both HAVE_LOW_TABLES and HAVE_HIGH_TABLES
are enabled, the table is written to high memory, and an RSDP
is written to the low memory that points to the high mem one.
All other cases work exactly the same way as before.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4202 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-24 06:28:48 +00:00
e9149038ee Remove duplicate code.
Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4201 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-24 06:27:31 +00:00
4940ab7a21 This patch hooks up git mirrored svn revisions and adds some
error checking to the svnrevision call.

If a .svn directory exists in the top level directory and the svnversion
utility is available, we use svnversion.
Otherwise, if a .git directory exists in the top level directory and the
git utility is available, we use git log.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4194 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-23 13:05:45 +00:00
9f0f1055f2 Sometimes when we debug the code, we need to know which version we are
working on.
Add the svn revision to the coreboot version string.

Signed-off-by: Zheng Bao <zheng.bao@amd.com>
Acked-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4191 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 23:27:25 +00:00
554fce6ced makes the smi handler a little bit less verbose
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4189 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 22:55:15 +00:00
6315274cc8 This patch fixes the parser. '|' has special meaning so [|] is used.
Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4187 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 22:25:45 +00:00
85b851add8 Convert 12 more boards to use include statements in Config.lb.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4186 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 22:08:00 +00:00
723bf0c568 Trivial patch. I forgot to update K8_SET_FIDVID.
Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Myles Watson <mylesgw@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4185 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 20:41:42 +00:00
5b34bdd3e5 This patch adds the target hp/dl145_g3 together with
the appropriate mainboard sources.

Signed-off-by: Mondrian nuessle <nuessle@uni-hd.de>
Acked-by: Samuel Verstraete <samuel.verstraete@gmail.com>

I updated some whitespace and the Config files. - Myles


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4184 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 20:34:05 +00:00
21da019a1e This patch add rudimentary support for the superio functionality of
the Serverengines Pilot BMC chip. Necessary to get serial out on the
HP DL145 G3.

Signed-off-by: Mondrian nuessle <nuessle@uni-hd.de>
Acked-by: Samuel Verstraete <samuel.verstraete@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4183 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 20:30:42 +00:00
d9b1c4f42f This patch adds support for the BCM21000 (aka HT-2100)
PCIe bridge.

Signed-off-by: Mondrian nuessle <nuessle@uni-hd.de>
Acked-by: Samuel Verstraete <samuel.verstraete@gmail.com>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4182 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 20:27:53 +00:00
6f52d11e9e drop duplicate compiler options that are already mentioned in CFLAGS.
(scan-build chokes on this)

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4181 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 18:16:20 +00:00
4d59eaa93b - printed CBFS rom address was always 0
- drop dead code.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Peter Stuge <peter@stuge.se>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4180 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 16:32:18 +00:00
f96c2d96a8 fix warnings, shadowed declarations and style guide violations (all trivial)
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4179 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 16:23:47 +00:00
8afdb1c433 drop unused variable.
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4176 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 12:38:23 +00:00
afa5985433 no duplicate names in cmos.layout allowed. (fixes a bunch of boards)
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4175 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 12:35:57 +00:00
570933cad8 remove some style guide breaks and warnings from raminit_f_dqs.c
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4172 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 12:00:17 +00:00
38c49fddde argh... never redo parts of the original patch on the fly. This fixes the tree
again.
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4171 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 09:06:38 +00:00
73d5daaf97 * Allow coreboot to use the full 256 bytes of CMOS memory
* Make functions out of the accessor macros in mc146818rtc.c
* don't hide reserved cmos entries from coreboot, only from the user.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4170 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2009-04-22 09:03:08 +00:00