Logo

HP t610: Firmware 

BIOS

I had varied results getting into the BIOS. I found on power-up it often got as far as the syslinux boot menu - totally ignoring my attempt to stop it doing so. Doing a ctl/alt/del at this point to reboot the process resulted in a 100% success rate in F10 getting me into the SETUP screen or ESC getting me into the STARTUP screen.

Startup Menu
Restart System
System Information
Change Language
Diagnostics (F2)
Boot Menu (F9)
Computer Setup (F10)
Network Boot (F12)
Utilities
Run UEFI Application...

On the System Information screen the BIOS in my t610 was identified as being K30 V01.16.

For BIOS version(s) see the BIOS versions page.

A useful document to locate is the Troubleshooting Guide for the HP t610 Series Flexible Thin Clients. Amongst other things this gives you a guide to all the F10 setup options as well as boot-up error codes.

Booting

With no internal flash memory and only a USB pen drive plugged in to one of the USB ports F9 brought up the boot menu:

Please Select Boot Device:
>UEFI Boot Sources
Legacy Boot Sources
  Hard Drive
    USB2.0 Flashdisk      1100
  Network Controller (BRCM MBA S1
↑ and ↓ to move selection
ENTER to select boot device
ESC to boot using defaults

Subsequently I plugged in:

  1. A 1GB IDE DOM
  2. A 2GB SATA DOM into the SATA1 socket
  3. A 4GB SATA DOM into the other SATA socket
  4. A 4GB SanDisk Cruzer USB pen drive

Going into the BIOS and selecting Storage/Device Configuration brought up:

Hard Disk SATA0 1.02GB, 1024MB ATA Flash Disk SATA2 4.09GB, 4GB ATA Flash Disk SATA1 2.04GB, 2GB SATA Flash Drive USB 4.00GB, Cruzer Blade

and so this screen is an easy way to check that all your installed devices are visible to the system.

Moving on to Storage/Boot Order brought up the menu:

>EFI Boot Sources USB Floppy/CD USB Hard Drive Legacy Boot Sources USB Hard Drive SATA0 SATA2 SATA1 Network Controller (BRCM MBA Slot 0300 v15.0.6)

which is where you can set the boot order for the various drives you have fitted.

Passwords

t610 motherboard links The are three links on the motherboard adjacent to the heatsink. The central one is labelled PSWD. According to the manual mentioned above you can reset the administrator and power-on passwords by:

  1. Power off.
  2. Remove the PSWD jumper.
  3. Power on briefly.
  4. Power off.
  5. Replace jumper.

Missing Memory

This small investigation into how memory is used on the t610 was triggered by an email from Laszlo who wrote:

"I've upgraded my t610 to 4GB. The BIOS shows 4GB is fitted, but Windows 7 SP1 System summary shows only 2.5GB out of the 4GB being available rather than the figure of 3.5GB which is what I'd expect.

Well I don't really have an answer to this. If you do please email me using the link at the bottom of the page.

My first step to check things out was to boot Tiny Core, look in its log file and run a few utilities.

Checking the log file (dmesg) I found:

Memory: 2571176K/2607496K available.....

OK, I seem to have the same issue. Only ~2.5GB of RAM is available. An obvious candidate for where the missing memory might have gone is the Video memory. The lspci listing shows the display controller is item 00:01.1. Checking that specific item gives:

lspci -v -s 00:01.1
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Wrestler [Radeon HD 6320] (prog-if 00 [VGA controller])
	Subsystem: Hewlett-Packard Company Device 17e2
	Flags: bus master, fast devsel, latency 0, IRQ 11
	Memory at c0000000 (32-bit, prefetchable) [size=256M]
	I/O ports at f000 [size=256]
	Memory at feb00000 (32-bit, non-prefetchable) [size=256K]
	[virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
	Capabilities: <access denied>

This shows it is using a 256MB of RAM plus a few other odds and ends. No sign of the missing 1.5GB there.

Looking at all PCI device memory:

lspci -v | grep Memory
	Memory at c0000000 (32-bit, prefetchable) [size=256M]
	Memory at feb00000 (32-bit, non-prefetchable) [size=256K]
	Memory at feb44000 (32-bit, non-prefetchable) [size=16K]
	Memory at feb4a000 (32-bit, non-prefetchable) [size=1K]
	Memory at feb49000 (32-bit, non-prefetchable) [size=4K]
	Memory at feb48000 (32-bit, non-prefetchable) [size=256]
	Memory at feb40000 (64-bit, non-prefetchable) [size=16K]
	Memory behind bridge: None
	Memory behind bridge: None
	Memory behind bridge: fea00000-feafffff [size=1M]
	Memory behind bridge: fe900000-fe9fffff [size=1M]
	Memory at d0010000 (64-bit, prefetchable) [size=64K]
	Memory at d0000000 (64-bit, prefetchable) [size=64K]
	Memory at fe900000 (64-bit, non-prefetchable) [size=64K]
	Memory at fe910000 (64-bit, non-prefetchable) [size=8K]

A few other small bits and bobs but no memory hungry device so we're no further forward.

Booting into the BIOS we find, as expected, there is an option to control the size of the Video RAM buffer.

Advanced -> Device Options -> Integrated Graphics

Use the left or right arrow key to switch Integrated Graphics between Auto or Force.

According to a HP manual all Auto does is set the buffer size to 256MB if you have 4GB of RAM fitted, and to 128MB if you have 2GB of RAM fitted.

Force adds a new parameter that lets you explicitly set the UMA Frame buffer size. This can be set to one of 32M/64M/128M/256M/512M/1G.

The manual does go on to explain:

If you set this to 512MB on a system with 2GB of RAM, the system always allocates 512MB for graphics and the other 1.5GB for use by the BIOS and operating system.

I wondered what happens if we set it explicitly to 256MB rather than letting it happen under Auto?

Memory: 2831272K/2869640K available....

OK, we've inexplicably gained a bit more memory. Why? All the Auto setting does is look at the amount of installed RAM, sees 4GB, and sets the Video buffer to 256MB. Just a trivial bit of initialisation code that should be thrown away as the system boots.

We are still well short of ~3.5GB that we would expect. Checking the PCI memory range again:

lspci -v | grep Memory
	Memory at c0000000 (32-bit, prefetchable) [size=256M]
	Memory at feb00000 (32-bit, non-prefetchable) [size=256K]
	Memory at feb44000 (32-bit, non-prefetchable) [size=16K]
	Memory at feb4a000 (32-bit, non-prefetchable) [size=1K]
	Memory at feb49000 (32-bit, non-prefetchable) [size=4K]
	Memory at feb48000 (32-bit, non-prefetchable) [size=256]
	Memory at feb40000 (64-bit, non-prefetchable) [size=16K]
	Memory behind bridge: None
	Memory behind bridge: None
	Memory behind bridge: fea00000-feafffff [size=1M]
	Memory behind bridge: fe900000-fe9fffff [size=1M]
	Memory at d0010000 (64-bit, prefetchable) [size=64K]
	Memory at d0000000 (64-bit, prefetchable) [size=64K]
	Memory at fe900000 (64-bit, non-prefetchable) [size=64K]
	Memory at fe910000 (64-bit, non-prefetchable) [size=8K]

shows no change there. What's the BIOS upto taking such a large chunk of memory? Let's try a much smaller buffer of 64MB.

Memory: 3546512K/3590536K available ....

That's more like it.

I updated the BIOS to 1.20 and that made no difference. Where the memory is going I have no idea.

I did a further quick check on a system with 4GB of installed memory and set the buffer to 128MB. To summarise what I found:

Buffer size  Free memory
Auto (256MB)2607496K
256MB2869640K
128MB3525000K
64MB3590536K

which shows that, if you need to maximise the system memory, you need to set the UMA Frame Buffer size to 128MB or less. Anything larger and a large chunk of your memory vanishes. As you can see from the figures above:

  • Moving from 64MB to 128MB you lose another 64MB of RAM. (Makes sense)
  • Moving from 128MB to 256MB you lose another 650MB of RAM (Makes no sense)

Anyone have an explanation for this?

 


Any comments? email me. Added July 2017    Last update November 2019