Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Mar 2015 19:58:10 -0300
From:      =?UTF-8?Q?Mat=C3=ADas_Perret_Cantoni?= <perretcantonim@gmail.com>
To:        Thomas Skibo <thomasskibo@sbcglobal.net>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: hexdumping /dev/mem
Message-ID:  <CADLKG02ugra2ToUH4t_oy3BLQU36dqdY761wtx3YqVSgG3vp8A@mail.gmail.com>
In-Reply-To: <29227F8C-4A83-4C95-9CD2-BA14E797A882@sbcglobal.net>
References:  <CADLKG01HXRf9FE0JZ3hDdr6Ap-AbLM0r3TmhfLNOfwAUUqmbdA@mail.gmail.com> <29227F8C-4A83-4C95-9CD2-BA14E797A882@sbcglobal.net>

next in thread | previous in thread | raw e-mail | index | archive | help
2015-03-16 18:42 GMT-03:00 Thomas Skibo <thomasskibo@sbcglobal.net>:
>
>> On Mar 16, 2015, at 1:00 PM, Mat=C3=ADas Perret Cantoni <perretcantonim@=
gmail.com> wrote:
>>
>> Hello!
>>
>> I'm trying to read a 32 bit register of the System Level Control
>> Registers of the ZedBoard (Zynq-7000 SoC) from a running FreeBSD. I
>> thought that I could simply do it with hexdump(1) to avoid writing a
>> driver since I only need to read it once. I've tried:
>>
>>
>> #hexdump -s 0xF8000910 -n 4 /dev/mem
>>
>>
>> and I get this message:
>>
>> hexdump: /dev/mem: Invalid argument
>>
>>
>> Reading some archives in this mailing list I've found that "the arm
>> version of /dev/mem is not functionally equivalent to that of amd64 or
>> i386.  Arm disallows access to non-DRAM addresses through /dev/mem=E2=80=
=9D.
>
> That=E2=80=99s correct.  /dev/mem only reads from memory not devices.
>
> I always use kdb to peek/dump registers.  You have to translate the devic=
e addresses (use =E2=80=9Cshow devmap=E2=80=9D to see the mappings).
>

Looks like kdb is what I needed :). I don't even need hexdump. I guess
I'm learning pretty basic stuff here.

> But, once you know the kernel virtual addresses of the registers, you mig=
ht be able to hexdump them through /dev/kmem.  (I don=E2=80=99t have a Zedb=
oard in front of me to try that.)
>

I couldn't find any man page for "kdb" or "db", and the help command
of db didn't help much.

ddb(4) and the section "On-Line Kernel Debugging Using DDB" of the
developers-handbook were useful, but there's no clue about the show
devmap there. Is there any other documentation source that I can read
to find more about this?

And last, once I entered kdb, is there any way to go back to the
system without rebooting?

Thank you!

>>
>> Is there any other way of doing this? Maybe the whole idea of using
>> hexdump for this isn't really good.
>>
>>
>>
>> Thanks in advance.
>> Regards,
>> Matias.
>> _______________________________________________
>> freebsd-arm@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-arm
>> To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"
>
> -------
> Thomas Skibo
> thomasskibo@sbcglobal.net
>
>
>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADLKG02ugra2ToUH4t_oy3BLQU36dqdY761wtx3YqVSgG3vp8A>