- Add PCI Extended Configuration Space support into x86.
- Check register offset of pci_conf_read() in MD part. It returns (pcireg_t)-1
if it isn't accessible.
- Decode Extended Capability in PCI Extended Configuration Space.
Currently the following extended capabilities are decoded:
- Advanced Error Reporting
- Virtual Channel
- Device Serial Number
- Power Budgeting
- Root Complex Link Declaration
- Root Complex Event Collector Association
- Access Control Services
- Alternative Routing-ID Interpretation
- Address Translation Services
- Single Root IO Virtualization
- Page Request
- TPH Requester
- Latency Tolerance Reporting
- Secondary PCI Express
- Process Address Space ID
- LN Requester
- L1 PM Substates
The following extended capabilities are not decoded yet:
- Root Complex Internal Link Control
- Multi-Function Virtual Channel
- RCRB Header
- Vendor Unique
- Configuration Access Correction
- Multiple Root IO Virtualization
- Multicast
- Resizable BAR
- Dynamic Power Allocation
- Protocol Multiplexing
- Downstream Port Containment
- Precision Time Management
- M-PCIe
- Function Reading Status Queueing
- Readiness Time Reporting
- Designated Vendor-Specific
${MD_OBJS}.
${MD_OBJS} should be used only for objects that must be linked first (i.e.,
start code). Objects have to be compiled following common compile rules,
and have to be generated into common places (i.e., top of kernel build
directory).
${MD_LIBS} defines libraries that are built by separate makefiles, under
separate directories. `Makefile.kern.inc' doesn't know intermediate library
objects.
altq Drop Type
disklabel Disk Type
file Descriptor Type
(not to mention constants that contain the string DTYPE).
Let's make them two, by changing the disklabel one to be DisK TYPE since the
other disklabel constants seem to do that. Not many userland programs use
these constants (and the ones that they do are mostly in ifdefs). They will
be fixed shortly.
> Shrink GENERIC and enable options MODULAR instead, as other poor m68k ports.
>
> This allows all (at least ATARITT and FALCON, which have certain users)
> gzipped kernel binaries put into 1440KB 2HD floppy so that users can
> load these kernels on the native TOS using LOADBSD.TTP utility for
> installation. Note SMALL030 kernel doesn't include any Ethernet
> configuration and requires CD-ROM or other removable disks.
>
> Should be pulled up to netbsd-7.
This allows all (at least ATARITT and FALCON, which have certain users)
gzipped kernel binaries put into 1440KB 2HD floppy so that users can
load these kernels on the native TOS using LOADBSD.TTP utility for
installation. Note SMALL030 kernel doesn't include any Ethernet
configuration and requires CD-ROM or other removable disks.
Should be pulled up to netbsd-7.
This oscheck() function seems implemented to check compatibility
between bootloaders and /netbsd kernel, but checking /netbsd using kvm(3)
doesn't make sense on installation or even future cross builds, and
probably we will never bump bootloader version without compatibility
per recent 14 years history.
This works around overflow of 1440KB 2HD sysinst.fs, and would also be
worth to pullup to netbsd-7.
The existing abcksum() also violates strict-aliasing rule
(while current gcc48 doesn't warn it) and fixing all violations
strictly requires whole reorganization of boot sector structures.
But it won't happen soon and this MD installboot should be integrated
into MI installboot(8) in future, and it requires whole overhaul anyway.
See long discussion in source-changes-d@ for details.
Should be pulled up to netbsd-7 if we switches m68k to using gcc48.
(derived from clock_subr.h). Keep clock_subr.h with the kernel structures
and functions to reduce diffs, and have clock.h only include standalone
constants and macros.
There are quite a few configs that are missing some COMPAT_NN options
in ways that don't make sense; this should probably get cleaned up
too, but for the time being I've not added or removed anything.
- sync VM_MAXUSER_ADDRESS and VM_MAX_ADDRESS with other hp300 derived ports
and use same definitions for USRSTACK as other m68k ports
(no worth to have sun3/sunos compat in these days)
- remove unused KUSER_AREA
- bump MAXTSIZ, MAXDSIZ, and MAXSSIZ
These changes allow my 64MB TT030 build pkgsrc/textproc/icu
which seems to require >200MB VA space.
(note our current 040/060 pmap implementation can't handle >224MB VA size)