[coreboot] Supermicro X11SSH-LN4F PCI-e bifurcation?

2023-04-11 Thread Tomas
Hi,
I installed Coreboot with SeaBIOS on a Supermicro X11SSH-LN4F.
The stock BIOS can read two NVMe drives in a Dual m.2 splitter card inserted in 
the middle slot 5 on the motherboard.
But coreboot can not. In the coreboot nconfig menu there is no setting that 
will enable bifurcation of the x8 slot to x4x4.

Is this something that is configurable in any way?

/Tomas
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] coreboot on MS-6380E and/or Intel PM965

2008-09-19 Thread Tomas Kyselica
Hi *,

  I would like to ask if it is planned to support MS-6380E motherboard (my
old desktop) or Intel PM965 chipset (in my MSI GX700 notebook).

Regards
Thomas
--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

[coreboot] IRQ problems under qemu

2008-12-05 Thread Tomas Carnecky
When I tried to run coreboot under qemu, I was at first positively 
surprised how well the things worked. The BIOS + linux kernel payload 
booted in no time! But when I then tried to set up networking, I 
couldn't get that to work. Somehow the linux kernel couldn't locate the 
interrupts of the NIC. After some digging I found out that coreboot 
doesn't provide ACPI tables and instead uses PCI IRQ table (I had to 
extract this table from a running qemu system using the getpir utility 
and then copy it to coreboot, if you want that patch, I can send that 
too). Coreboot copies this table at runtime into memory at 0xf. 
Apparently 0xf-0xf is part of the ISA BIOS, and qemu marks this 
range as read-only.
The attached patch for qemu fixes that and also cleans up some of the 
memory initialization. Instead of marking the ISA BIOS as read-only, it 
copies that part from the BIOS image into the appropriate place (at 
0xf-0xf) and leaves the memory as read-write.


tom
Index: hw/pc.c
===
--- hw/pc.c (revision 5846)
+++ hw/pc.c (working copy)
@@ -806,39 +806,29 @@
 
 vmport_init();
 
-/* allocate RAM */
-ram_addr = qemu_ram_alloc(0xa);
+/* allocate first MB of RAM */
+ram_addr = qemu_ram_alloc(0x10);
 cpu_register_physical_memory(0, 0xa, ram_addr);
 
-/* Allocate, even though we won't register, so we don't break the
- * phys_ram_base + PA assumption. This range includes vga (0xa - 
0xc),
- * and some bios areas, which will be registered later
- */
-ram_addr = qemu_ram_alloc(0x10 - 0xa);
-ram_addr = qemu_ram_alloc(below_4g_mem_size - 0x10);
-cpu_register_physical_memory(0x10,
- below_4g_mem_size - 0x10,
- ram_addr);
+/* allocate all of the remaining RAM and register it with the CPU */
+cpu_register_physical_memory(0x10, below_4g_mem_size - 0x10,
+qemu_ram_alloc(below_4g_mem_size - 0x10));
 
-/* above 4giga memory allocation */
 if (above_4g_mem_size > 0) {
-ram_addr = qemu_ram_alloc(above_4g_mem_size);
-cpu_register_physical_memory(0x1ULL,
- above_4g_mem_size,
- ram_addr);
+cpu_register_physical_memory(0x1ULL, above_4g_mem_size,
+qemu_ram_alloc(above_4g_mem_size));
 }
 
-
 /* allocate VGA RAM */
 vga_ram_addr = qemu_ram_alloc(vga_ram_size);
 
-/* BIOS load */
+/* BIOS: load it to memory, copy the ISA BIOS into the last 128k
+ * of the first MB, map the whole BIOS at the top of memory */
 if (bios_name == NULL)
 bios_name = BIOS_FILENAME;
 snprintf(buf, sizeof(buf), "%s/%s", bios_dir, bios_name);
 bios_size = get_image_size(buf);
-if (bios_size <= 0 ||
-(bios_size % 65536) != 0) {
+if (bios_size <= 0 || (bios_size % 65536) != 0) {
 goto bios_error;
 }
 bios_offset = qemu_ram_alloc(bios_size);
@@ -849,7 +839,20 @@
 exit(1);
 }
 
-/* VGA BIOS load */
+cpu_register_physical_memory((uint32_t)(-bios_size),
+bios_size, bios_offset | IO_MEM_ROM);
+
+isa_bios_size = bios_size;
+if (isa_bios_size > (128 * 1024))
+isa_bios_size = 128 * 1024;
+
+memcpy(phys_ram_base + 0x10 - isa_bios_size,
+phys_ram_base + ram_addr + 0x10 - isa_bios_size, isa_bios_size);
+cpu_register_physical_memory(0x10 - isa_bios_size, isa_bios_size,
+ram_addr + 0x10 - isa_bios_size);
+
+/* VGA BIOS: load it directly into 0xc+0x1,
+ * register the range with the CPU. */
 if (cirrus_vga_enabled) {
 snprintf(buf, sizeof(buf), "%s/%s", bios_dir, VGABIOS_CIRRUS_FILENAME);
 } else {
@@ -858,27 +861,17 @@
 vga_bios_size = get_image_size(buf);
 if (vga_bios_size <= 0 || vga_bios_size > 65536)
 goto vga_bios_error;
-vga_bios_offset = qemu_ram_alloc(65536);
 
-ret = load_image(buf, phys_ram_base + vga_bios_offset);
+ret = load_image(buf, phys_ram_base + ram_addr + 0xc);
 if (ret != vga_bios_size) {
 vga_bios_error:
 fprintf(stderr, "qemu: could not load VGA BIOS '%s'\n", buf);
 exit(1);
 }
 
-/* setup basic memory access */
 cpu_register_physical_memory(0xc, 0x1,
- vga_bios_offset | IO_MEM_ROM);
+vga_bios_offset | IO_MEM_ROM);
 
-/* map the last 128KB of the BIOS in ISA space */
-isa_bios_size = bios_size;
-if (isa_bios_size > (128 * 1024))
-isa_bios_size = 128 * 1024;
-cpu_register_physical_memory(0x10 - isa_bios_size,
- isa_bios_size,
- (bios_offset + bios_size - isa_bios_size) | 
IO_MEM_ROM);
-
 {
 ram_addr_t option_rom_offset;
 int size, offset;
@@ -916,10 +909,6 @@
 }
 }

[coreboot] Re: [linux-mei] intelmetool crashed mei_me driver

2019-01-22 Thread Winkler, Tomas
What is intelmeitool?
Thanks
Tomas


> -Original Message-
> From: linux-mei-requ...@eclists.intel.com [mailto:linux-mei-
> requ...@eclists.intel.com] On Behalf Of Shawn
> Sent: Tuesday, January 22, 2019 10:30
> To: linux-...@linux.intel.com; coreboot 
> Subject: [linux-mei] intelmetool crashed mei_me driver
> 
> Hi,
> 
> intelmetool crashed mei_me driver and you can reproduce it via:
> 
> --
> #!/bin/bash
> 
> counter=0
> 
> while [ $counter -le 1000 ]
> do
> ./intelmetool -m >> /tmp/me.log
> echo $counter
> sleep 5
> counter=$(($counter + 1))
> done
> 
> --
> 
> The kernel crash log was attached!
> 
> --
> GNU powered it...
> GPL protect it...
> God blessing it...
> 
> regards
> Shawn
> -
> linux-...@eclists.intel.com
> https://eclists.intel.com/sympa/info/linux-mei
> Unsubscribe by sending email to sy...@eclists.intel.com with subject
> "Unsubscribe linux-mei"
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] Re: [linux-mei] intelmetool crashed mei_me driver

2019-01-22 Thread Winkler, Tomas
First time I see it. 
My guess is this tool is for SPS and it will conflict with the mei driver on 
clients platform (mobile, desktop, workstations)
It messes up the drive state machine, hence the error 
I've removed recently the BUG() from the drivers so I guess on 4.20 it won't 
crash, but still this cannot work. 
Thanks
Tomas



> -Original Message-
> From: Shawn [mailto:cit...@gmail.com]
> Sent: Tuesday, January 22, 2019 10:38
> To: Winkler, Tomas 
> Cc: linux-...@linux.intel.com; coreboot 
> Subject: Re: [linux-mei] intelmetool crashed mei_me driver
> 
> use this one:
> https://github.com/coreboot/coreboot/tree/master/util/intelmetool
> 
> On Tue, Jan 22, 2019 at 4:32 PM Winkler, Tomas 
> wrote:
> >
> > What is intelmeitool?
> > Thanks
> > Tomas
> >
> >
> > > -Original Message-
> > > From: linux-mei-requ...@eclists.intel.com [mailto:linux-mei-
> > > requ...@eclists.intel.com] On Behalf Of Shawn
> > > Sent: Tuesday, January 22, 2019 10:30
> > > To: linux-...@linux.intel.com; coreboot 
> > > Subject: [linux-mei] intelmetool crashed mei_me driver
> > >
> > > Hi,
> > >
> > > intelmetool crashed mei_me driver and you can reproduce it via:
> > >
> > > --
> > > #!/bin/bash
> > >
> > > counter=0
> > >
> > > while [ $counter -le 1000 ]
> > > do
> > > ./intelmetool -m >> /tmp/me.log
> > > echo $counter
> > > sleep 5
> > > counter=$(($counter + 1))
> > > done
> > >
> > > --
> > >
> > > The kernel crash log was attached!
> > >
> > > --
> > > GNU powered it...
> > > GPL protect it...
> > > God blessing it...
> > >
> > > regards
> > > Shawn
> > > -
> > > linux-...@eclists.intel.com
> > > https://eclists.intel.com/sympa/info/linux-mei
> > > Unsubscribe by sending email to sy...@eclists.intel.com with subject
> > > "Unsubscribe linux-mei"
> 
> 
> 
> --
> GNU powered it...
> GPL protect it...
> God blessing it...
> 
> regards
> Shawn
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] Re: [linux-mei] intelmetool crashed mei_me driver

2019-01-23 Thread Winkler, Tomas
The tools impalements the mei state machine in the user space so it will 
conflict with the driver, you can try to unbind the driver if you need such 
functionality,
Second the  protocol is evolving and we are update the driver but I cannot 
update it in a tool I don't know about.
I suggest you rewrite the tool using the driver interface. 
This is not connected in any way to underlying FW OS, this is about API.
Thanks
Tomas


> -Original Message-
> From: linux-mei-requ...@eclists.intel.com [mailto:linux-mei-
> requ...@eclists.intel.com] On Behalf Of Shawn
> Sent: Wednesday, January 23, 2019 05:40
> To: Winkler, Tomas 
> Cc: linux-...@linux.intel.com; coreboot 
> Subject: Re: [linux-mei] intelmetool crashed mei_me driver
> 
> intelmetool is for ME( desktop/laptop/etc) and we barely use it on SPS. We
> tested it on a pre-broadwell machine and it works fine. Could it be an issue
> related to the specific ME OS, e.g: the different impls of handling stuff from
> mei_me between MINIX-based and ThreadX?
> 
> On Tue, Jan 22, 2019 at 4:44 PM Winkler, Tomas 
> wrote:
> >
> > First time I see it.
> > My guess is this tool is for SPS and it will conflict with the mei
> > driver on clients platform (mobile, desktop, workstations) It messes
> > up the drive state machine, hence the error I've removed recently the BUG()
> from the drivers so I guess on 4.20 it won't crash, but still this cannot 
> work.
> > Thanks
> > Tomas
> 
> 
> 
> --
> GNU powered it...
> GPL protect it...
> God blessing it...
> 
> regards
> Shawn
> -
> linux-...@eclists.intel.com
> https://eclists.intel.com/sympa/info/linux-mei
> Unsubscribe by sending email to sy...@eclists.intel.com with subject
> "Unsubscribe linux-mei"
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org