mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-23 09:51:57 -05:00
Kernel: Specify I/O size for BMIDEChannel
This commit is contained in:
parent
32840dfa17
commit
a0c1af4327
2 changed files with 3 additions and 1 deletions
|
@ -82,6 +82,7 @@ public:
|
|||
template<typename T>
|
||||
ALWAYS_INLINE T in()
|
||||
{
|
||||
static_assert(sizeof(T) <= 4);
|
||||
if constexpr (sizeof(T) == 4)
|
||||
return IO::in32(get());
|
||||
if constexpr (sizeof(T) == 2)
|
||||
|
@ -94,6 +95,7 @@ public:
|
|||
template<typename T>
|
||||
ALWAYS_INLINE void out(T value)
|
||||
{
|
||||
static_assert(sizeof(T) <= 4);
|
||||
if constexpr (sizeof(T) == 4) {
|
||||
IO::out32(get(), value);
|
||||
return;
|
||||
|
|
|
@ -212,7 +212,7 @@ void BMIDEChannel::ata_read_sectors(bool slave_request, u16 capabilities)
|
|||
m_io_group.bus_master_base().value().out<u8>(0);
|
||||
|
||||
// Write the PRDT location
|
||||
m_io_group.bus_master_base().value().offset(4).out(m_prdt_page->paddr().get());
|
||||
m_io_group.bus_master_base().value().offset(4).out<u32>(m_prdt_page->paddr().get());
|
||||
|
||||
// Set transfer direction
|
||||
m_io_group.bus_master_base().value().out<u8>(0x8);
|
||||
|
|
Loading…
Add table
Reference in a new issue